موتور جستجوی شودان چیست؟ Shodan چگونه کار می کند؟!
- کورش سنایی
- ۱۱ بهمن ۱۴۰۲
- 6 دقیقه
شودان چیست؟
Shodan یک موتور جستجو ست که به جای جستجو در میان وبسایتها، اقدام به جستجو و فهرستسازی دستگاهها و سیستمهای متصل به اینترنت میکند.
از Shodan برای اهداف متنوعی همچون تست نفوذ، تحقیقات امنیتی و حتی بررسی اختراعات جدید IoT بکار می رود. اما همزمان میتواند توسط هکرها برای شناسایی دستگاهها و سیستمهای آسیبپذیر نیز مورد سوءاستفاده قرار گیرد. بنابراین استفاده از این ابزار قدرتمند نیازمند دقت و احتیاط فراوان است.
فرق شودان با موتورهای جستوجو دیگر چیست؟
Shodan با موتور جستجوی های دیگه تفاوت های بزرگی داره و شما خیلی سریع و راحت میتونید تارگت برای هک کردن پیدا کنید بر خلاف گوگل و DuckDuckGo و .. که فقط سایت میتونید اونجا پیدا کنید توی شودان شما هر دستگاهی که به اینترنت متصل باشه رو میتونید پیدا کنید و شروع به هک کردنش کنید XD آره به همین خفنی و گنگی; البته برای به اصطلاح ایندکس کردن اینجور موارد یا خیلی ساده بخوام بگم برای نشون دادن دستگاه های متصل به اینترنت از یک الگوریتم خاص پیروی میکنه که جلوتر بهتون میگم داستانش چیه .
کاربرد موتور جستجوی شودان چیست؟
این موتور جستجو با استفاده از تکنیکهایی مانند پویش پورت، دستگاههای متصل به اینترنت از قبیل روترها، دوربینهای مداربسته، سرورها و دیگر دستگاههای IoT را شناسایی کرده و سپس اطلاعاتی همچون نوع سیستمعامل، سرویسها و برنامههای نرمافزاری فعال روی آن دستگاهها را استخراج مینماید. این اطلاعات در یک پایگاه داده ذخیره شده و در اختیار عموم قرار میگیرد.
اصلی ترین چیزی که Shodan درون خودش داره ما بهش میگیم Banner و تو هم همینو بهش میگی از این به بعد ! یه نمونه بنری که این موتور جستجو درون خودش داره رو به صورت عکس این پایین میتونید ببنید. حالا بنر چیه ؟ ببین بنر یکسری اطلاعات متنی هست که سرویسی که در حال ارائه بر روی یک دستگاه هست رو توصیف میکنه ! تصویر پایین یک HTTPبنر هست و بنرش این شکلیه حالا اگه سرویس دیگه ای مثل Telnet بخواد ارائه بشه یا مثلا RDP باشه صفحه لاگینش رو شما میبینید .
تصویر بالا به ما میگه که دستگاهی که به ما نمایش داده شده یک وب سرور NginX هست با ورژن 1.1.19. زمانی که شما میخواین با شودان کار کنید اول باید بدونید که دنبال چی میخواین بگردین با چه سرویسی کار دارید و خوب شودان این اجازه رو به شما میده که به دنبال بنر ها بگردید نه Host ها یا همون دستگاه ها یعنی اگر روی یک IP چنتا سرویس باشه اونهارو به عنوان نتایج جداگانه نشون میده. اگر نمیدونید IP چی هست به مقاله IP چیست ؟! مراجعه کنید .
البته بنر تنها چیزی نیست که توی خودش داره و در مورد هدف ها اطلاعات بیشتری هم ذخیره میکنه که ما بهش میگیم Meta-data یعنی اطلاعات اضافی تو هم همینو بهش بگو ! و خوب داشتم میگفتم این اطلاعات میتونه مثل محل جغرافیایی هدف, hostname, سیستم عامل و .. هم باشه که شما میتونید توی جستجویی که انجام میدید این نوع اطلاعات رو وارد کنید البته یکسری محدودیت هایی هم برای کاربران عادی در نظر گرفته شده که بخواین بی حد و مرز توی Shodan جستجو کنید باید اشتراک نسبت به نیازتون رو تهیه کنید .
موتور جستجوی Shodan چطوری کار میکنه ؟!
ببینید Shodan به صورت شبانه روزی داره اینترنت رو Crawl میکنه خیلی عامیانه بخوام بگم داره خزش میکنه (من خودم سختمه بفهمم خزش یعنی چی XD ) پس خودمون رو اذیت نمیکنیم داره 24/7 اینترنت رو شخم میزنه و دیتابیسشو آپدیت میکنه از دستگاه هاای متصل به اینترنت با IPv4 و IPv6 و هرموقع که یک سرچ توی این موتورجستجو انجام بدید آخرین و بروزترین نتایج رو میبینید .
این شخم زدنی که صورت میگیره توسط یک سری ربات ها هست که توی کشور های مختلفی در حال فعالیت هستند نظیر :
• USA (East and West Coast)
• China
• Iceland
• France
• Taiwan
• Vietnam
• Romania
• Czech Republic
حالا این که چرا از کشور های مختلف این شخم زدن صورت میگیره به این خاطر هست که مثلا یک کشوری مثل China یا همون چین خودمون میاد دسترسی آیپی های آمریکایی به IP های چین رو میبنده پس اگر فقط از توی آمریکا این خزش صورت بگیره یکسری ایپی که توی چین هست رو از دست میدیم و به همین خاطر باید از نقاط مختلف دنیا این خزش رو انجام بدیم که از دست دادن تارگت هارو به حداقل برسونیم .
الگوریتم کار Shodan به چه صورت است؟
1. Generate a random IPv4 address
2. Generate a random port to test from the list of ports that Shodan understands
3. Check the random IPv4 address on the random port and grab a banner
4. Goto 1
حله !؟ XD ببین اول میاد یه IP میسازه به صورت اتفاقی آیپی V4 و بعد یکسری پورت اتفاقی که شودان اونارو میفهمه یعنی پشتیبانی میکنه رو انتخاب میکنه مثلا الان بعد از مرحله 1 و 2 به یک آیپی و یک پورت میرسیم که یه همچین چیزی میشه 52.173.202.154:554 در واقع یه آیپی هست و یه پورت که 554 هست روی این پورت سرویس VNC رو داریم و حالا این رو چک میکنه و بنری که بدست میاره رو میزاره تو دیتابیس .
موتور جستجوی Shodan چگونه داده هارا به ما نشان میدهد؟
یک وبسایتی بود قبلا به اسم shodanhq.com اگه الان این آدرس رو وارد مرورگرتون کنید به Shodan,io منتقل میشید; اول اینکه بگم Shodan هم رابط کاربری گرافیکی داره و هم به صورت دستوری و متنی که توی ترمینال میتونید داشته باشیدش و راحت ترین روش استفاده از Shodan همین وبسایتش هست. زمانی که شما یک سرچ رو در شودان انجام میدید اطلاعاتی رو دریافت میکنید که از همون لحظه تا 30 روز گذشته در دیتابیس ذخیره شده . قبلا اون سایتی که گفتم shodanhq هرچیزی که داشت رو بهتون نشون میداد که امکان اینکه اطلاعاتی که دیگه به کار نمیومدن هم اونجا باشه و خوب تجربه کاربری جالبی نمیشد و توی نسخه بهترش Shodan این مشکل هم برطرف شد .
آیا کامپیوتر من هم در Shodan نمایش داده میشود !؟
این سوالی هست که خیلی از من میپرسن ! که اگه شودان همه چیزو توی خودش داره که به اینترنت وصل شده چرا سیستم من رو نشون نمیده خوب 🙂 این به شبکه بر میگرده در واقع شما یک واسطی دارید به نام ISP یا در واقع همون شرکتی که به شما اینترنت میده و اگر هم قرار باشه اطلاعاتی از شما توی شودان باشه مستقیما کامیپوتر شما نیست بلکه IP شما رو پیدا میکنه و سرویس هایی که روش هست و شما اگر توی گوگل بزنید WHAT IS MY IP یا هرجا که میتونید پیداش کنید توی مثلا خود کامند لاین shodan بزنید my_ip بهتون ایپیتون رو نشون میده که حالا یا v4 هست یا v6 و بعد اون رو بزنید مستقیما توی Shodan و میتونید ببینید که چه سرویس هایی روی IP شما اجرا هست اگر دقیت کرده باشید من اول مقاله گفتم که شودان کارش با بنر هاست و اگه کسی سرویسی که آیپی شما در حال حاضر داره ارائه میده که توی بنر هاش میتونید ببنید رو جستجو کنه میتونه به IP شما برسه و نمونه این چیزی که دارم میگم رو توی تصویر پایین میتونید ببینید .
در تصویر بالا اطلاعاتی که Shodan در حال حاضر از آیپی من داره رو میتونید ببنید که کامل مشخص کرده که این آیپی برای چه شهری هست و متعلق به چه ISP ایی یا همون ارائه دهنده اینترنتی هست و بعد سمت راست صفحه OpenPorts رو میبینید که تا به این لحظه تونسته پیدا کنه و ممکنه الان که شما سرچ کردی Shodan هم یه جستجوی دیگه روی این آیپی بزنه و دقیقا اتفاقی که الان برای من افتاد هم همین بود در ابتدا port 2000 رو شناسایی نکرده بود و بعد از 2 3 بار رفرش کردن پورت 2000 رو شناسایی کرد که به این معنیه که میتونه بازهم پورت پیدا کنه از این IP و قطعا هست چون من میدونم برای مدیریت آنتن وایرلسم از یک پورت خاص استفاده میکنم که اینجا نیست 🙂 امیدوارم تونسته باشم حسابی شودان رو براتون شکافته باشم .
میگم اد ما هم بده از یک ایپی خاص که مال اینجا نیست استفاده کنیم XD
یعنی چی