
نقاط آسیب پذیر رایج در سامانهی کسبوکارها 2
این بلاگپست شامل تجمیع و برداشتی هدفمند از محتوای گپوگفتهایی با متخصصین تست نفوذ است که قبلا در بلاگ راورو منتشر کردهایم. در گپوگفتهای قبلی پرسشهای مشترک و مشابهی را از افراد متفاوت پرسیده بودیم و هر یک از افراد از دیدگاه خود، پاسخهایی منحصربهفرد و متفاوت به این سوالها دادهاند. اینطور فکر میکنیم که جمعبندی و درکنارهم قراردادن پاسخهایی به هریک از این پرسشها داده شده، در یک متن جدید میتواند ارزشمند و دارای پیامی جدید باشد.پاسخهایی که شامل نکاتی هستند که هم میتوانند به کار کسبوکارها بیایند و هم به کار متخصصین تست نفوذ و شکارچیان آسیب پذیری.
ما قبلتر و در بلاگپست دیگری نیز سوالهای مشابه به سوالهای این بلاگپست را از افراد دیگری پرسیده بودیم و پاسخهایشان را گرد هم آورده بودیم.
پیشنهاد خواندنی: نقاط آسیب پذیر رایج در سامانهی کسبوکارها1
آنچه در این بلاگپست خواهید خواند:
نقاط آسیب پذیر رایج در سامانهها در تجربهی شکارچیان آسیب پذیری
در این بلاگپست گفتههایی از 8 شکارچی آسیب پذیری و متخصص تست نفوذ را خواهید خواند که تجربیات خود درخصوص کشف آسیب پذیری را به اشتراک گذاشتهاند و راجع به نقاط رایج آسیب پذیر سامانهها در تجربههایشان گفتهاند.
گفتههایی از:
رامین اسدیان، علی فیروزی، امید شجاعی، آیلین همایونی، محمدصالح مهری، مجید موسوی، محمدرضا عمرانی، و پیمان زینتی
داخل پرانتز: ترتیب ارائهی پاسخهای افراد در متن، مطابق با ترتیب گپوگفتهای منتشرشده با آنها در بلاگ راوروست.
نقاط آسیب پذیر رایج در سامانهها در تجربهی شکارچیان آسیب پذیری
ما از شکارچیان آسیب پذیری و متخصصین تست نفوذ پرسیدیم:
در تجربهی شما، بیشتر چه نقاطی از سامانهی کسبوکارها آسیبپذیر بودهاند؟ بیشتر شاهد چه آسیب پذیری هایی در سامانهها بودهاید؟ بیشتر چه آسیب پذیریهایی را در سامانهی کسبوکارها کشف کرده اید؟
رامین اسدیان:
چند آسیب پذیری هست که می توانم بگویم من در جاهای مختلف و عجیب توانستهام پیدایشان کنم. یکی از آنها آسیب پذیری های authentication است. همیشه توی authentication یک سری مشکلات هست. مخصوصا اگر بحث OTP و اینها باشد، همیشه مشکلات امنیتی وجود دارد. خب شاید آسیب پذیری و مشکل بزرگی باشد، شاید هم کوچک باشد. ولی همیشه یکی دو مشکل امنیتی از این جنس وجود دارد.
دومیاش بحث Authorization ، Access Control و IDOR است. معمولا در اکثر نرم افزار ها چنین آسیب پذیری هایی وجود دارند. علتش هم این است که فریمورکها معمولا از چنین آسیب پذیری هایی جلوگیری نمیکنند و این به عهدهی خود دولوپرها ست. برای همین این اتفاق زیاد میافتد. یک آسیب پذیری خیلی جالبی هم هست که من خیلی زیاد بهش برخوردهام (حالا نمی دانم از شانس من بوده یا واقعا اینقدر زیاد وجود دارد). فایلهای زیپ و بکاپ و این مدل فایلهایی که اطلاعات خیلی مهمی در آنها هست ولی در یک URL خیلی ساده به دست میآید. من در تجربهام خیلی از سازمانهای خیلی خیلی بزرگ کشوری را فقط با یک فایل این شکلی توانستهام بزنم. مثلا فایلی را دانلود کردهام که در آن یه فایل وب کانفیگ بود، در این وب کانفیگ، یوزر و پسورد بوده. آن یوزر و پسورد را که میزنی، در جاهای مختلف لاگین میکند. حالا ممکن است بعضی جاها به دنبالش بکاپ و دیتابیس هم دربیاید که خب این فاجعهتر هم هست. این سه آسیب پذیری همیشه برای من جالب اند. خیلی هم زیاد بهشان برخوردهام.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با رامین اسدیان
علی فیروزی:
معمولاً در پیادهسازی سرویسهای اکسترنال، این فرآیند باید بر اساس داکیومنتهای موجود انجام شود. اما متاسفانه در برخی موارد، توسعهدهندگان تمایلی به مطالعهی کامل داکیومنتها ندارند و تنها بر اساس قسمتهایی که مطالعه کردهاند، پیادهسازی را آغاز میکنند و به تدریج پیش میروند. این رویکرد باعث میشود که بسیاری از نکات و جزئیات مهم از قلم بیافتد. در این مسیر، گاهی اوقات برخی از جوانب به طور کامل بررسی نمیشوند یا پیادهسازی به شیوهای اصولیتر انجام نمیشود. برای مثال، در پیادهسازی درگاههای پرداخت، اغلب شاهد وجود آسیب پذیری هایی هستیم که به دلیل رعایتنکردن تمام موارد امنیتی در داکیومنتها، بروز میکنند. بسیاری از کمپانیهای داخلی که با آنها روبرو شدهام، معمولاً در بخش درگاه پرداخت حداقل یک آسیبپذیری دارند. فارغ از درگاههای پرداخت، طیف آسیبپذیریها میتواند بسیار متنوع باشد، از جمله مشکلات امنیتی در پیادهسازی سرویسهای خارجی برای فایلها. همهی این موارد معمولا به دلیل ضعف دانش امنیتی تیمهای توسعهدهنده حتی در بزرگترین سازمانها نیز اتفاق میافتند و لازمهی جلوگیری از این اتفاقات، توجه بیشتر به امنیت سایبری است.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با علی فیروزی
امید شجاعی:
اگر بخواهیم به صورت کلی نگاه کنیم: معمولا سامانههای درونسازمانی (آنهایی که در شبکهی داخلی سازمان هستند) نسبت به سامانههایی که از بیرون سازمان هستند، آسیب پذیری های بیشتری دارند. چون معمولا این طور است که سامانههای در دسترس توسط اسکنرها، ابزارها، رباتها و موارد دیگر، به طور مداوم اسکن میشوند. در چنین روالی اگر هم آسیب پذیری ای بر روی سامانههای بیرونی باشد، معمولا اکسپلویت میشود. بعدش به سراغ داخل میآیند و فرآیند را ادامه میدهند. درکل معمولا سامانههای داخلی خیلی آسیب پذیرتر هستند.
مورد دیگر، کسبوکارهایی هستند که برای سامانهی خود از تکنولوژیهای قدیمیتر استفاده میکنند. آنهایی که از وباپلیکیشن ها با فناوری روز استفاده میکنند، خب طبیعتا آسیب پذیری های خیلی کمتری نسبت به سامانههای با فناوری قدیمی دارند.
من فکر میکنم میزان وجود آسیب پذیری در یک سامانه، تا حد زیادی به تجربهی کسی یا تیمی که برنامهنویسی آن وبسایت را انجام داده است، بستگی دارد. بهعنوان مثال: من داخل سازمانی بودهام که مدیر آیتی، خودش، سه سامانه را برای آن سازمان نوشته و بالا آورده بود. خب آن سامانهها، آسیب پذیری های زیادی داشتند. از آن طرف هم مثلا سامانهای هم وجود دارد که یک تیم و یک شرکت مشخص با یک رزومهی خیلی خوب، مسئول کارهایش هستند و کل کشور و بسیاری از از شرکتها هم از آن استفاده میکنند. خب نمیشود این دو حالت را با هم مقایسه کرد. خیلی با هم فرق میکنند.
اگر هم بخواهیم به موضوع عمیقتر نگاه کنیم، جریان بیشتر سمت موضوعهای فنی میرود.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با امید شجاعی
محمدصالح مهری:
نباید از این نکته غافل شویم که وجود آسیب پذیری در سامانههای مختلف، در درجهی اول به معماری آن سامانه بستگی دارد.
بسیاری از آسیب پذیری ها به خاطر سهلانگاری در سکیوریتیچکها ایجاد میشوند؛ سکیوریتیچکهایی که باید در سمت سرور انجام میشده و نشده. فقط به سکیوریتیچک سمت کاربر (Client-side) پرداخته و کفایت شده است.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با محمدصالح مهری
آیلین همایونی:
به نظر من آسیب پذیر ترین نقطهی هرکسبوکار، انسانها هستند؛ یعنی مردم و استفادهکنندگان از یک سامانه یا کارکنان سازمان یا شرکت. بارها شاهد این بودهایم که حتی اگر سامانهای از جهات فنی کاملا امن باشد، از طریق مهندسی اجتماعی و اطلاعات سایبری ناکافی مردم آسیب پذیر است. این مسئلهی بزرگی ست. اطلاعرسانی در این خصوص بسیار کم است. به همین دلیل کسبوکارهای زیادی به این گونه مشکلات میخورند. حتی در میان مدیران کسبوکارها هم هنوز به امنیت ( به معنای واقعیاش) توجه نمیشود.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با آیلین همایونی
مجید موسوی:
بیشتر سامانههایی که تست کردهام، آسیبپذیریهای Business logic زیادی داشتهاند. این موضوع را سایر متخصصین امنیتی هم تأیید میکنند. کسبوکارها باید روی این نوع آسیبپذیریها هم تمرکز کنند تا جلوی تهدیدهای احتمالی را بگیرند.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با مجید موسوی
محمدرضا عمرانی:
بیشترین آسیب پذیری هایی که من شکار کردهام، از نوع آسیب پذیری Access Control بوده است. در سمت بخشهای مربوط به پرداخت هم آسیب پذیری های منطقی بسیاری کشف کردهام. معمولا این روزها در سامانهی کسبوکارها فیچرهای زیادی وجود دارند، نقشهای مختلفی برای کاربرانشان ایجاد کردهاند و امکان دسترسیهای زیادی وجود دارد. من شاهد این بودهام که در موارد خیلی جزئی و کوچک، به آسیب پذیری Access Control توجهی نمیشود و مغفول میماند.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با محمدرضا عمرانی
پیمان زینتی:
من در بررسی یک سامانه، ابتدا به سراغ موارد مربوط به احراز هویت میروم که موردعلاقهام هم هست. در 30% تا 40% موارد سامانهی کسبوکارها نسبت به آن آسیب پذیر هستند.
پیشنهاد خواندنی: تجربیات و نکات تست نفوذ؛ با محمدرضا عمرانی
سخن آخر:
در این بلاگ پست تجربهی 8 شکارچی آسیب پذیری و متخصص تست نفوذ را در موردنقاط آسیب پذیر سامانهها، شنیدیم.
شما بیشتر شاهد چه آسیب پذیری هایی در سامانهها بودهاید؟
بلاگپستهای مرتبط:
کتابچهی راهنمای برنامهنویسی امن
نگاهی گذرا به گزارشهای آسیبپذیری در پلتفرم باگبانتی راورو (1403)
هکرهای مختلف، چه ارزشی را به یک برنامه امنیتی جمع سپاری شده میافزایند؟
نکاتی درباره تست نفوذ که کسبوکارها معمولا به آنها توجه نمیکنند