در این مقاله قصد داریم نگاهی کوتاه و اجمالی داشته باشیم به ابزار پرقدرت Recon-ng که جهت شناسایی اولیه از هدف استفاده میشهدر عرصه تست نفوذ این مسئله همیشه بوده و خواهد بود که قبل از شروع یک حمله و یا هر تستی باید در مورد هدف ( تارگت ) خود اطلاعاتی را جمع آوری کنیم، به نحوه ای که یک حمله و یا تست بدون نقص و خطای را داشته باشیم، این مسئله میتواند مدت ها طول کشیده و یا حال به صورت دستی باشد و یا به صورت ابزار، و میتواند کمتر از یک روز جمع آوری به اتمام شود

Recon-ng دقیقاً چیه؟

Recon-ng یه  فریم‌ورک خط فرمانی (CLI Framework) هستش که با زبان پایتون نوشته و برای جمع ‌آوری اطلاعات از منابع عمومی (Public Sources) طراحی شده . اگه با ابزارهایی مثل theHarvester یا Maltego کار کرده باشی، می‌تونی Recon-ng رو یه چیزی بین اون دوتا بدونی یعنی قدرت خودکار سازی بالا مثل theHarvester ولی با ساختار ماژولار و قابل ‌گسترش شبیه Metasploit. محیطش هم دقیقاً یه ترمینال تعاملیه که می‌تونی ماژول‌ها رو لود و یا  اجراشون کنی و خروجی‌ها رو به صورت دیتابیس نگه داری. چیزی که باعث خاص شدنش می‌‌شه، اینه که باهاش می‌تونی انواع دیتاها رو از هدف بیرون بکشی از دامنه و ساب‌ دامین گرفته تا ایمیل، رکوردهای DNS، اطلاعات WHOIS و حتی لوکیشن سرورها. 

چرا باید از Recon-ng استفاده کنیم؟

خیلیا میپرسن خب من با گوگل و چند ابزار ساده هم می‌تونم اطلاعات جمع کنم پس چرا برم سراغ این ابزار؟ جواب ساده هستش : چون وقتت با ارزشه و Recon-ng بهت اجازه مییده با چند دستور کاری رو بکنی که شاید به صورت دستی چند ساعت طول بکشه . از طرفی خروجی کارش تمیز و ساختار‌منده یعنی اطلاعاتت توی پایگاه داده (Database) ذخیره می‌شن و بعداً می‌تونی گزارش ازش بگیری، از این گذشته، این فریم‌ ورک می‌تونه به APIهای مختلف مثل Shodan، Censys یا GitHub وصل بشه. یعنی مستقیم از منابع رسمی دیتا می‌کشه بیرون، اونم به‌ صورت خودکار خلاصه بگم، Recon-ng یه ابزار همه‌ کاره برای مرحله‌ی جمع‌آوری اطلاعاته و مخصوصاً تو پروژه‌های بزرگ خیلی به کار میاد.

آموزش Recon-ng

با نوشتن دستور help منوی  شکل  2 رو واستون نمایش میده. در اینجا شما میتونید تمام دستوراتی که میشه با اون کار کرد رو ببینین،که جلوشون کاربرد هر دستور رو توضیح داده.

آموزش Recon-ng

برای مثال جهت نصب یک ماژول وارد marketplace   میشیم و دستورsearch  رو وارد میکنیم تا لیست ماژول‌های قابل نصب رو برامون نشون بده و با دستور install به همراه نام ماژول ، اونو میتونم نصبش کنم که در ادامه برای نمونه ماژول hakertarget رو از مسیر recon/domains-hosts/hackertarget  نصب میکنیم.

آموزش Recon-ng

آموزش Recon-ng

شکل 4 ) اجرای دستور marketplace install recon/domains-hosts/hackertarget   

آموزش Recon-ng

شکل 5 ) اجرای دستور modules load recon/domains-hosts/hackertarget

 

فرض کن می‌خوای ساب‌ دامین‌های یه سایت مثل tesla.com رو پیدا کنی. فقط کافیه این مراحل رو بری جلو که من مراحل را رو بصورت تصویری نشون میدم. بعد از اینکه ماژول مورد نظرمون رو لود کردیم ، میریم سراغ مشخص کردن دامنه که در شکل 6 میتونیم ببینیمش.

 

آموزش Recon-ng

خب حالا وقتشه بریم سراغ ریکان ، با دستور run بعد از اجرا خروجی رو بصورت شکل 7 بهمون نشون میده. 

 

شکل 8) نمایش هاست‌های اسکن شده با دستور show hosts

 

به همین راحتی! در عرض چند ثانیه یه لیست از زیر ‌دامنه‌ها می‌گیری، که Recon-ng از طریق ماژول hackertarget استخراج و تمام نتایج  رو هم بصورت خودکار توی دیتابیس ذخیره کرده.

نکات مهم و تجربه‌ی کار با Recon-ng 

  •          پسیو کار کن تا شناساییت لو نره. یعنی ماژول‌هایی رو انتخاب کن که به هدف هیچ درخواستی مستقیم نمی‌زنن.
  •         API Keyها رو درست وارد کن. خیلی از ماژول‌ها بدونش درست کار نمی‌کنن.
  •          اگه باهاش زیاد کار کنی، می‌فهمی چطور یه زنجیره از ماژول‌ها رو طوری بچینی که از یه دامنه ساده برسی به کلی دیتای ارزشمند و مهم‌تر از همه، همیشه آخرین نسخه رو از گیت‌هاب بگیر. چون ماژول‌ها و APIها مرتب به‌روزرسانی می‌شن.

جمع‌بندی

Recon-ng یه ابزار همه‌ فن ‌حریف برای جمع‌آوری اطلاعاته. اگه دنبال یه فریم‌ورک هستی که بهت کنترل کامل بده، گزارش بده و بتونی باهاش مثل یه حرفه‌ای دیتا جمع کنی، قطعاً باید این ابزار رو یاد بگیری. از مرحله‌ی کشف دامنه و ایمیل گرفته تا ساخت گزارش نهایی، همه چیز تو Recon-ng با چند دستور قابل انجامه. حالا بجای اینکه بین چندتا ابزار مختلف سرگردون باشی، یه بار Recon-ng رو باز کن و ازش لذت ببر.ممنون که تا انتهای این مقاله همراهم بودی .