استفاده از خزنده وب گوگل برای حمله به سایت‌ها

دانیل سید (Daniel Cid) توسعه‌دهنده یکی از سیستم‌های پراکسی و فایروال مبتنی بر کلاود وقتی که دید محصولش ارتباطاتی با آدرس IP گوگل را بلوک می‌کند بسیار تعجب کرد. این موضوع بسیار غیرمعمول بود، چرا که وب‌سایت‌های اندکی ممکن است بخواهند ترافیک خزنده‌های وب را (به خصوص اگر به بزرگ‌ترین غول جست‌وجوی اینترنتی مربوط باشد) بلوک کنند. در دنیای کنونی موتورهای جست‌وجو اصلی‌ترین روش دیده شدن سایت‌ها و منبع جذب ترافیک و درآمد هستند. او و همکارش پیش از همه چک کردند که مبادا تنظیمات سیستم آن‌ها به صورت پیش‌فرض سایت گوگل را فیلتر می‌کند.

در تنظیمات سیستم IP گوگل معتبر شناخته می‌شد. ترافیک هم از خزنده وب گوگل بود و به این دلیل بلوک شده بود که سیستم فکر می‌کرد آلوده است و تلاش می‌کند نوعی حمله به نام تزریق سیکوئل (SQL Injection) را انجام دهد. تحقیقات بعدی نشان داد که ارتباطات مشابه دیگری هم از IPهای گوگل بلوک شده‌اند.

crawler

تزریق سیکوئل یکی از روش‌های قدیمی حمله به برنامه‌های وبی ضعیف است. برنامه‌های وبی به صورت معمول بسیاری از پارامترها را در آدرس صفحه یا به اصطلاح URL جای می‌دهند تا از پایگاه‌های داده سایت اطلاعاتی را استخراج کنند. مثلا در همین سایت اگر از کادر جست‌وجو به دنبال چیزی بگردید و بعد آدرس صفحه نتیجه جست‌وجو را نگاه کنید، می‌بینید که عبارت مورد نظر شما پس از یک علامت سوال (?) برای سرور ارسال شده است. برنامه‌های قدرتمند وب به گونه‌ای نوشته می‌شوند که اطمینان حاصل کنند این پارامترها ممکن نیست به انجام دستور یا اتفاقی ناخواسته در سرور منجر شوند. برنامه‌های ضعیف چنین کاری نمی‌کنند و در نتیجه نفوذگران می‌توانند با جای دادن دستورهای SQL در آدرس به سایت نفوذ کرده یا اطلاعاتی را بدزدند.

البته طبیعی است که این خود گوگل نیست که سعی می‌کند با خزنده وبش سایر سایت‌ها را آلوده کند، بلکه شرکای تجاری یا طرف‌های سومم هستند که این کارها را انجام می‌دهند. مراحل کار ساده است. نفوذگران URLهای آلوده خود را برای حمله به سایت موردنظر ایجاد کرده و در یک صفحه وب که در اختیار دارند، قرار می‌دهند. خزنده گوگل پس از دیدن این لینک‌ها سعی در دنبال کردن آن‌ها دارد و ناخودآگاه دستورات آلوده کننده را روی سایت مقصد اجرا می‌کند.

injection

مهم‌ترین مزیت این تکنیک این است که رد حمله‌کننده قابل پیگیری نیست. چرا که خزنده گوگل مشخص نمی‌کند که URL را از چه سایتی خوانده است. اما نقطه ضعف این سیستم هم این است که بازخورد حاصل از این اقدام (موفقیت یا عدم موفقیت) به دست حمله‌کننده نخواهد رسید و به نوعی حمله کور محسوب می‌شود.

مانند بسیاری دیگر از تکنیک‌های نفوذ، این شیوه هم شیوه جدیدی محسوب نمی‌شود. مایکل زالوسکی (Michael Zalewski) این نوع حمله را در سال 2001 توصیف کرده بود. حتی برخی محققین امنیتی ادعا می‌کنند که موارد مشابهی را به گوگل و مایکروسافت اطلاع داده‌اند. به گفته این محققین مایکروسافت تغییراتی را در خزنده‌اش ایجاد کرده است، اما گوگل هیچ واکنشی نشان نداده و ادعا کرده برنامه‌اش آن‌گونه که باید کار می‌کند.

به هر حال تنها راه‌حل ایمن نگاه داشتن سایت‌ها در برابر حمله‌های تزریق سیکوئل است.

منبع(+)


  این نوشته‌ها را هم بخوانید

13 دیدگاه

  1. این مورد را حقیقتا تنها گردن گوگل نمیشه انداخت ، البته که میتواند با تغییراتی در خزنده به نوعی جلوی این حملات را بگیرد اما اصل داستان به گردن وب مسترهایی است که سیستم های مورد استفاده را که عموما رایگان هستند اپدیت نمیکنند و یا از کدهای نال شده و نامعتبر استفاده میکنند و همچنین برنامه نویس هایی که اصلا به امنیت کد توجهی نمیکنند .
    SQL Injection حتی در این حالت کور هم میتوانید بسیار خطرناک و مخرب ظاهر شود .

  2. این یک بحث قدیی هست!
    معمولا به SQL Server میگن سکوئل سرور و به My SQL میگن مای اس کیو ال!
    به SQL Injection هم نمیگن تزریق سکوئل بلکه میگن تزریق اس کیو ال.
    در هر صورت حتی اگر به طور غلط بخواهیم بهش بگیم سکوئل، باز سیکوئل غلط هست. “ی” نباید وجود داشته باشد.

      1. منم همینطور! کلاً باعث حواس پرتی و صرف وقت بیشتر برای بهتر درک کردن توسط خواننده میشه. بگذریم از اینکه چنین کاری گاهی اوقات باعث بوجود اومدن سوء تفاهم در ارایه مطلب هم میشه.

  3. “به هر حال تنها راه‌حل ایمن نگاه داشتن سایت‌ها در برابر حمله‌های تزریق سیکوئل است.”

    WTF؟؟؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
[wpcode id="260079"]