محققان دریافتند نقص API در بازار آنلاین لگو که به طور گسترده مورد استفاده قرار می گیرد، می تواند به مهاجمان اجازه دهد تا حساب های کاربری را تصاحب کنند، داده های حساس ذخیره شده در پلت فرم را درز کنند و حتی به داده های تولید داخلی دسترسی پیدا کنند تا خدمات شرکت را به خطر بیندازند.
محققان آزمایشگاه نمک این آسیبپذیریها را در لینک آجر، یک پلت فرم فروش مجدد دیجیتال متعلق به گروه لگو برای خرید و فروش لگوهای دست دوم، نشان می دهد که - به هر حال از نظر فناوری - همه اسباب بازی های این شرکت کاملاً در جای خود قرار نمی گیرند.
شیران یودف، محقق امنیتی Salts Labs، نشان داد که بازوی تحقیقاتی Salt Security با بررسی مناطقی از سایت که از فیلدهای ورودی کاربر پشتیبانی می کند، هر دو آسیب پذیری را کشف کرد. گزارش منتشر شده در 15 دسامبر.
محققان هر یک از ایرادات اصلی را پیدا کردند که می تواند برای حمله در بخش هایی از سایت مورد سوء استفاده قرار گیرد که اجازه ورود کاربر را می دهد، به گفته آنها اغلب جایی است که مشکلات امنیتی API وجود دارد. یک مشکل پیچیده و پرهزینه برای سازمان ها - بوجود می آیند.
آنها گفتند که یکی از ایرادات آسیبپذیری اسکریپت بین سایتی (XSS) بود که به آنها امکان تزریق و اجرای کد را بر روی ماشین کاربر نهایی قربانی از طریق یک پیوند ساختهشده میداد. مورد دیگر اجازه اجرای یک حمله تزریقی XML External Entity (XXE) را می دهد، جایی که ورودی XML حاوی ارجاع به یک موجودیت خارجی توسط یک تجزیه کننده XML با پیکربندی ضعیف پردازش می شود.
نقاط ضعف API فراوان است
محققان مراقب بودند که تاکید کنند که قصد ندارند لگو را به عنوان یک ارائه دهنده فناوری به خصوص سهل انگارانه معرفی کنند - برعکس، به گفته آنها، نقص های API در برنامه های کاربردی اینترنت فوق العاده رایج است.
یودف به Dark Reading می گوید که یک دلیل کلیدی برای آن وجود دارد: بدون توجه به شایستگی یک تیم طراحی و توسعه فناوری اطلاعات، امنیت API رشته جدیدی است که همه توسعه دهندگان و طراحان وب هنوز در حال کشف آن هستند.
او میگوید: «ما به راحتی این نوع آسیبپذیریهای جدی API را در انواع سرویسهای آنلاینی که بررسی میکنیم، پیدا میکنیم. حتی شرکتهایی که قویترین ابزار امنیتی برنامهها و تیمهای امنیتی پیشرفته را دارند، اغلب در منطق تجاری API خود شکافهایی دارند.
اسکات گرلاچ، یکی از بنیانگذاران و CSO در StackHawk، ارائهدهنده تست امنیت API، خاطرنشان میکند در حالی که هر دو نقص را میتوان به راحتی از طریق آزمایشهای امنیتی پیش از تولید کشف کرد، "امنیت API هنوز برای بسیاری از سازمانها یک تفکر بعدی است."
او میگوید: «معمولاً تا زمانی که یک API قبلاً مستقر شده باشد، وارد عمل نمیشود، یا در موارد دیگر، سازمانها از ابزارهای قدیمی استفاده میکنند که برای آزمایش کامل APIها ساخته نشدهاند، و آسیبپذیریهایی مانند اسکریپتنویسی متقابل سایت و حملات تزریق را کشف نشده باقی میگذارند». .
علاقه شخصی، پاسخ سریع
هدف تحقیق برای بررسی BrickLink لگو، شرمساری و سرزنش لگو یا "بد جلوه دادن هر کسی" نبود، بلکه برای نشان دادن "این اشتباهات تا چه حد رایج است و به شرکت ها آموزش می داد تا اقداماتی را که می توانند برای محافظت از داده ها و خدمات کلیدی خود انجام دهند." یودف می گوید.
به گفته محققان، گروه لگو بزرگترین شرکت اسباببازی جهان و یک برند کاملاً قابل تشخیص است که در واقع میتواند توجه مردم را به این موضوع جلب کند. این شرکت سالانه میلیاردها دلار درآمد کسب می کند، نه تنها به دلیل علاقه کودکان به استفاده از لگو، بلکه به دلیل کل جامعه سرگرمی بزرگسالان - که یودف اعتراف می کند که او یکی از آنهاست - که مجموعه های لگو را نیز جمع آوری و می سازد.
به دلیل محبوبیت Legos، BrickLink بیش از 1 میلیون عضو دارد که از سایت آن استفاده می کنند.
محققان این ایرادات را در 18 اکتبر کشف کردند و به اعتبار آن، لگو به سرعت پاسخ داد زمانی که سالت سکیوریتی مشکلات را در 23 اکتبر به شرکت فاش کرد و افشای آن را ظرف دو روز تایید کرد. به گفته محققان، آزمایشهای انجامشده توسط Salt Labs مدت کوتاهی پس از آن، در 10 نوامبر، تأیید کرد که این مشکلات حل شده است.
یودو اذعان می کند: «با این حال، به دلیل سیاست داخلی لگو، آنها نمی توانند هیچ اطلاعاتی در مورد آسیب پذیری های گزارش شده به اشتراک بگذارند، و بنابراین ما نمی توانیم به طور مثبت تأیید کنیم. او میگوید، علاوه بر این، این سیاست همچنین از تایید یا رد تایید یا تکذیب Salt Labs جلوگیری میکند که مهاجمان از یکی از نقصهای موجود در طبیعت سوء استفاده کردهاند.
جمع آوری آسیب پذیری ها
آنها گفتند که محققان نقص XSS را در کادر محاورهای «یافتن نام کاربری» عملکرد جستجوی کوپن BrickLinks یافتهاند که منجر به یک زنجیره حمله با استفاده از شناسه جلسه در صفحه دیگری میشود.
Yodev نوشت: «در کادر محاورهای «یافتن نام کاربری»، کاربر میتواند یک متن آزاد بنویسد که در نهایت به HTML صفحه وب تبدیل میشود. "کاربران می توانند از این زمینه باز برای وارد کردن متنی که می تواند منجر به یک وضعیت XSS شود، سوء استفاده کنند."
آنها توضیح دادند، اگرچه محققان نمیتوانستند از این نقص به تنهایی برای حمله استفاده کنند، اما یک شناسه جلسه در صفحه دیگری پیدا کردند که میتوانستند آن را با نقص XSS ترکیب کنند تا جلسه کاربر را ربوده و به تصاحب حساب (ATO) دست یابند. .
Yodev نوشت: "بازیگران بد می توانستند از این تاکتیک ها برای تصاحب کامل حساب یا سرقت اطلاعات حساس کاربران استفاده کنند."
محققان دومین نقص را در بخش دیگری از پلتفرم که ورودی مستقیم کاربر را دریافت میکند، به نام «آپلود در فهرست تحت تعقیب» کشف کردند که به کاربران BrickLink اجازه میدهد فهرستی از قطعات و/یا مجموعههای لگو را در قالب XML آپلود کنند.
Yodev در این پست توضیح داد که این آسیب پذیری به دلیل نحوه استفاده تجزیه کننده XML سایت از موجودیت های خارجی XML، بخشی از استاندارد XML که مفهومی به نام موجودیت یا یک نوع واحد ذخیره سازی را تعریف می کند، وجود داشت. او نوشت، در مورد صفحه BrickLinks، پیادهسازی در برابر شرایطی آسیبپذیر بود که در آن پردازنده XML ممکن است اطلاعات محرمانهای را که معمولاً توسط برنامه قابل دسترسی نیست، افشا کند.
محققان از این نقص برای نصب یک حمله تزریق XXE استفاده کردند که اجازه میدهد فایل سیستمی با مجوزهای کاربر در حال اجرا خوانده شود. به گفته محققان، این نوع حمله همچنین میتواند یک بردار حمله اضافی را با استفاده از جعل درخواست سمت سرور ایجاد کند، که ممکن است مهاجم را قادر میسازد تا اعتبار برنامهای را که در سرویسهای وب آمازون اجرا میشود به دست آورد و در نتیجه یک شبکه داخلی را نقض کند.
اجتناب از نقص API مشابه
محققان توصیه هایی را به اشتراک گذاشتند تا به شرکت ها کمک کنند تا از ایجاد مشکلات API مشابهی که می توانند در برنامه های کاربردی اینترنت در محیط خود مورد سوء استفاده قرار گیرند اجتناب کنند.
Yodev نوشت: در مورد آسیبپذیریهای API، مهاجمان میتوانند بیشترین آسیب را وارد کنند اگر حملاتی را بر روی موضوعات مختلف ترکیب کنند یا آنها را به صورت متوالی انجام دهند، چیزی که محققان نشان دادند در مورد نقصهای Lego است.
Yodev نوشت: برای جلوگیری از سناریوی ایجاد شده با نقص XSS، سازمانها باید از قانون سرانگشتی پیروی کنند تا هرگز به ورودی کاربر اعتماد نکنند. او با ارجاع سازمانها به برگه تقلب XSS Prevention توسط پروژه امنیت برنامه وب را باز کنید (OWASP) برای اطلاعات بیشتر در مورد این موضوع.
Yodev نوشت، سازمانها همچنین باید در پیادهسازی شناسه جلسه در سایتهای روبهرو مراقب باشند، زیرا این «هدف مشترکی برای هکرها» است، که میتوانند از آن برای ربودن جلسه و تصاحب حساب استفاده کنند.
او توضیح داد: «مهم است که هنگام استفاده از آن بسیار مراقب باشید و از افشای آن یا سوء استفاده برای مقاصد دیگر خودداری کنید.
در نهایت، به گفته محققان، سادهترین راه برای متوقف کردن حملات تزریق XXE مانند آنچه محققان نشان دادند، غیرفعال کردن کامل موجودیتهای خارجی در پیکربندی تجزیهکننده XML است. آنها افزودند که OWASP منبع مفید دیگری به نام XXE Prevention Cheat Sheet دارد که می تواند سازمان ها را در این کار راهنمایی کند.