اسکنر محلی جعبه سیاه برای آسیب‌پذیری log4shell

اسکنر محلی جعبه سیاه برای آسیب‌پذیری log4shell

تاریخ ایجاد

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

فایل اجرایی ویندوز و لینوکس ابزار: log4jScanner.zip
راهنمای استفاده از ابزار: Log4jScanner_Manual.pdf

دقت شود که برای استفاده از این ابزار اولا دسترسی ادمین یا روت به برنامه داده شود و همچنین پورت ۱۳۸۹ در پروتکل tcp و پورت ۵۳ در پروتکل udp از سمت فایروال باز بوده و امکان دسترسی به آن از بیرون وجود داشته باشد. شکل کلی استفاده از ابزار به این صورت است:
فرض کنیم آی‌پی خودمان داخل شبکه ۱۹۲.۱۶۸.۱۰.۱۰۰ و در بستر اینترنت ۲.۱۸۷.۲۴۰.۱۳۰ باشد.
اگر هدف اسکن یک رنج آی‌پی داخلی باشد دستور به صورت زیر خواهد بود:

log4jScanner_windows.exe scan --cidr=192.168.10.0/24 --server-ip=192.168.10.100

در این صورت تعداد ۲۵۴ آی‌پی موجود در این بازه برای ۱۰ پورت متداول وب‌ مورد اسکن قرار خواهد گرفت.
استفاده از آرگومان server-ip به این دلیل است که برنامه احیانا اشتباها آی‌پی دیگری از سیستم اسکنر را به عنوان سرور در نظر نگیرد.
اگر هدف اسکن یک آی‌پی خاص مثلا ۱۹۲.۱۶۸.۱۰.۱۱۳ باشد دستور به شکل زیر خواهد بود:

log4jScanner_windows.exe scan --ip=192.168.10.113 --server-ip=192.168.10.100

اگر یک فایل با نام ip-list.txt شامل لیست آی‌پی‌های خارج از شبکه و در بستر اینترنت داشته باشیم و بخواهیم این لیست را برای پورتهای ۸۰ و ۴۴۳ اسکن کنیم دستور به صورت زیر درخواهد آمد:

log4jScanner_windows.exe scan --list=ip-list.txt --ports=80,443 --server-ip=2.187.240.130

دقت شود که در این حالت بایستی آی‌پی خارجی سرور مورد استفاده قرار گیرد.
استفاده از دیگر آرگومان‌های برنامه دلخواه بوده و می‌توان با دستور زیر همه آن‌ها را مشاهده کرد:

log4jScanner_windows.exe scan --help