بزار SSH Cracker: مروری بر قابلیتها و ویژگیها
مقدمه
ابزار SSH Cracker یک ابزار قدرتمند و چندمنظوره است که برای متخصصان امنیت شبکه و محققان طراحی شده تا وظایف مرتبط با SSH، از جمله اسکن پورتها و تست اعتبارنامهها را انجام دهد. این ابزار که به زبان Go نوشته شده، مجموعهای جامع از قابلیتها را ارائه میدهد تا سرورهای SSH را شناسایی و تحلیل کند و با استفاده از همزمانی (Concurrency) کارایی بالایی را فراهم میآورد. این مقاله به بررسی اجزای اصلی، قابلیتها و موارد استفاده این ابزار میپردازد.
ویژگیهای کلیدی
1. تأیید مجوز (License Verification)
ابزار از یک سیستم تأیید مجوز قوی برای اطمینان از استفاده مجاز بهره میبرد. این سیستم از HMAC-SHA256 برای اعتبارسنجی امن مجوز استفاده میکند و مجوز را با یک کلید مخفی و زمان انقضای اختیاری بررسی میکند. در صورت عدم وجود مجوز معتبر، کاربران برای وارد کردن کلید جدید دعوت میشوند که برای استفادههای بعدی ذخیره میشود.
2. بررسیکننده سایبری SSH (SSH Cyber Checker)
ماژول بررسیکننده سایبری SSH لیستی از ترکیبهای IP:Port را اسکن میکند تا پورتهای باز SSH را شناسایی کند. ویژگیهای کلیدی این بخش شامل موارد زیر است:
- انعطافپذیری ورودی: فایل حاوی جفتهای IP:Port را میپذیرد و فرمت آنها را اعتبارسنجی میکند.
- همزمانی: از چندین رشته (به طور پیشفرض دو برابر تعداد هستههای CPU) برای اسکن کارآمد استفاده میکند.
- آمار لحظهای: معیارهایی مانند تعداد پورتهای باز/بسته، IPهای بررسیشده، سرعت اسکن و زمان باقیمانده تخمینی را نمایش میدهد.
- خروجی: پورتهای باز SSH را در فایل مشخصشده ذخیره میکند تا برای تحلیل بیشتر استفاده شود.
3. شکستن SSH (SSH Cracker)
ماژول SSH Cracker تست brute-force اعتبارنامههای SSH را انجام میدهد. این ماژول از موارد زیر پشتیبانی میکند:
- فایلهای ورودی: لیستهای IPها، نامهای کاربری و رمزهای عبور را از فایلهای جداگانه میخواند.
- همزمانی و محدودسازی نرخ: از تعداد قابلتنظیم رشتهها و تأخیر بین تلاشها برای مدیریت بار استفاده میکند.
- شناسایی هانیپات: هانیپاتهای احتمالی را با اجرای دستور uname -a و اعتبارسنجی خروجی با یک الگوی regex شناسایی میکند.
- دستهبندی نتایج: اتصالات موفق را در فایل good.txt، هانیپاتهای مشکوک را در فایلهای good_fake.txt و honeypots.txt، و جزئیات سرور را در server_info.txt ذخیره میکند.
- نگهداری وضعیت: پیشرفت را در یک فایل JSON ذخیره میکند تا امکان ادامه جلسات متوقفشده فراهم شود.
- ادغام با تلگرام: اطلاعات جزئی سرور (مانند سیستمعامل، CPU، RAM، موقعیت جغرافیایی) را به یک چت تلگرامی مورد نظر ارسال میکند.
- (با دریافت بات تکن و چت ایدی شخصی)
4. ادغام با Masscan
ابزار با masscan برای اسکن پرسرعت پورتها ادغام شده است. کاربران میتوانند محدودههای IP و پورتها (از جمله محدودههایی مانند 1000-1005) را مشخص کنند و نتایج در یک فایل ذخیره میشوند تا در ماژولهای دیگر استفاده شوند.
5. نظارت بر سیستم
ابزار منابع سیستم محلی (استفاده از CPU و RAM، تعداد هستهها، کل RAM) را نظارت کرده و در طول عملیات اسکن و شکستن، آنها را بهصورت لحظهای نمایش میدهد تا به کاربران در مدیریت عملکرد سیستم کمک کند.
6. رابط کاربری
ابزار دارای یک منوی متنی با گزینههایی برای هر ماژول، درخواستهای واضح برای ورودی، و خروجی رنگی برای خوانایی بهتر است. این ابزار از توقف و ادامه عملیات پشتیبانی میکند و خطاها را برای ورودیهای نامعتبر یا مشکلات فایل مدیریت میکند.
پیادهسازی فنی
همزمانی
ابزار از مدل همزمانی Go استفاده میکند و با بهرهگیری از goroutineها و کانالها، وظایفی مانند بررسی پورتهای SSH و تست اعتبارنامهها را بهصورت موازی انجام میدهد. یک سماфор عملیاتهای همزمان را محدود میکند تا از فرسودگی منابع جلوگیری شود، و sync.WaitGroup تکمیل صحیح وظایف را تضمین میکند.
مدیریت خطا
مدیریت خطای قوی در سراسر ابزار پیادهسازی شده است، با پیامهای خطای دقیق برای عملیاتهای فایل، اتصالات شبکه، و اجرای دستورات. ابزار ورودیها (مانند فرمت IP:Port، تعداد رشتهها، مقادیر timeout) را اعتبارسنجی میکند تا از خطاهای زمان اجرا جلوگیری شود.
ملاحظات امنیتی
- تأیید کلید میزبان غیرامن: ابزار از ssh.InsecureIgnoreHostKey() برای اتصالات SSH استفاده میکند که برای تست مناسب است اما برای محیطهای تولیدی توصیه نمیشود.
- شناسایی هانیپات: با اعتبارسنجی خروجی uname -a، ابزار موارد مثبت کاذب از سیستمهای هانیپات را کاهش میدهد.
- امنیت مجوز: سیستم مجوز مبتنی بر HMAC تضمین میکند که تنها کاربران مجاز به ابزار دسترسی دارند.
ادغام با تلگرام
ابزار از API تلگرام برای ارسال اطلاعات سرور استفاده میکند و دادهها را برای مدیریت کاراکترهای خاص کدگذاری میکند و با استفاده از timeoutهای HTTP تحویل قابلاعتماد را تضمین میکند.
موارد استفاده
- تست نفوذ: شناسایی پورتهای باز SSH و تست قدرت اعتبارنامهها در سیستمهای هدف.
- ممیزی شبکه: جمعآوری اطلاعات دقیق درباره سرورهای SSH برای ارزیابیهای امنیتی.
- تحقیق: تحلیل پیکربندی سرورهای SSH و دادههای موقعیت جغرافیایی برای تحقیقات دانشگاهی یا امنیتی.
- اتوماسیون: خودکارسازی وظایف تکراری مانند اسکن پورت و تست اعتبارنامهها با پشتیبانی از ادامه عملیات.
ملاحظات اخلاقی
ابزار SSH Cracker تنها برای تستهای امنیتی مجاز و اهداف تحقیقاتی طراحی شده است. استفاده غیرمجاز علیه سیستمهایی بدون اجازه صریح، غیرقانونی و غیراخلاقی است. کاربران باید از رعایت قوانین مربوطه اطمینان حاصل کنند و پیش از انجام اسکن یا تلاشهای brute-force، رضایت مالکان سیستم را کسب کنند.
نتیجهگیری
ابزار SSH Cracker یک راهحل چندمنظوره و کارآمد برای وظایف امنیتی مرتبط با SSH است. ترکیب اسکن پورت، تست اعتبارنامه، شناسایی هانیپات و جمعآوری اطلاعات سیستم، آن را به یک دارایی ارزشمند برای متخصصان امنیت تبدیل میکند. با تمرکز بر همزمانی، طراحی کاربرپسند و مدیریت خطای قوی، این ابزار جریانهای کاری پیچیده را ساده کرده و بازخورد لحظهای و مدیریت وضعیت پایدار را ارائه میدهد.
برای اطلاعات بیشتر یا پشتیبانی، با توسعهدهنده از طریق تلگرام در @IR_ITACHI_IR تماس بگیرید.