جمع آوری اطلاعات و Reconnaissance
در این بخش شما با جمع آوری اطلاعات و Reconnaissance آشنا خواهید شد.
مراحل تست نفوذی که در این دوره به آن اشاره میشود 5 مرحله است که این مراحل عبارتند از:
Reconnaissance
Scanning
Exploitation
Keeping Access
Covering Tracks
Reconnaissance
این مرحله که همان جمع آوری اطلاعات میباشد به نفوذگر کمک میکند تا قبل از ارسال یک packet به سمت هدف خود، اطلاعات مناسبی را در خصوص آن کسب نماید. اینترنت گنج بسیار بزرگی است که میتوان از آن در مرحله جمع آوری اطلاعات استفاده کرد.
نکته: هکرهای تازه وارد معمولا از این مرحله چشم پوشی میکنند ولی هکرهای واقعی این مرحله و جزئیات به دست آمده در آن را ارزشمند میدانند.
Whois
یکی از اولین اقداماتی که برای شناسایی هدف استفاده میشود، whois دامنه است. به دست آوردن اطلاعات در این مرحله به کمک پایگاههای دادهای که اطلاعات دامنهها را در خود نگه میدارند انجام میشود. البته دستور whois در سیستمهای یونیکسی هم برای به دست آوردن این اطلاعات مورد استفاده میگیرد.
سایتهای مفید برای جمع آوری اطلاعات Whois
https://www.networksolutions.com/whois
https://www.internic.net/whois.html
http://uwhois.com
http://whois.domaintools.com
همچنین برای به دست آوردن اطلاعات مربوط به بلاک IP هدف، با توجه به قاره و موقعیت جغرافیایی آن میتوان از وب سایتهای زیر استفاده نمود.
ARIN (American Registry for Internet Numbers) – www.arin.net
RIPE NCC (Reseaux IP Europeens Network Coordination Centre) – www.ripe.net
APNIC (Asia Pacific Network Information Centre) – www.apnic.net
LACNIC (Latin American and Caribbean NIC) – lacnic.net
AFRINIC (Africa’s NIC) – www.afrinic.net
DoDNIC (Department of Defense NIC) -http://www.nic.mil (requires account and certificate)
راههای جلوگیری از افشای اطلاعات Whois
برخی از نام افراد در اطلاعات Whois استفاده می کنند ولی برخی دیگر به جای نامهای افراد از نامهای سازمانی استفاده میکنند که این مورد موجب کاهش اطلاعات برای مهندسین اجتماعی میشود.
به هیچ عنوان استفاده از اطلاعات جعلی در whois پیشنهاد نمی شود زیرا در هنگام وقوع یک حادثه امکان برقراری ارتباط با صاحب دامنه امکان پذیر نمی باشد.
البته وب سایتهایی هم هستند که به ازای هر سال مبلغی معادل 10 دلار را از شما اخذ نموده و اطلاعات شما را مخفی مینمایند.
سیات زیر این امکان را به شما میدهند:
https://www.networksolutions.com/domain-name-registration/private.jsp
https://godaddy.com/domainaddon/privateregistration.aspx
DNS Interrogation
یکی از سرویسهایی که میتوان اطلاعات خوبی از آن کسب نمود، سرویس DNS است.
برای کسب اطلاعات از این سرویس میتوان از دستور nslookup استفاده نمود.این دستور هم در سیستم عامل ویندوز و هم لینوکس کار میکند. البته امکان دارد که این دستور در برخی از سیستمهای لینوکسی کار نکند، اگر هنگام اجرای این دستور با پیام خطا مواجه شدید میتوانید از دستور dig یا host استفاده نمایید.
DNS Zone Transfer
انتقال Zone به نفوذگر اجازه میدهد تا تمامی رکوردهای DNS موجود در سرور DNS را مشاهده نماید. البته این مشکل زمانی رخ میدهد که در سرور DNS، انتقال Zone یا DNS Zone Transfer با همه سرورها انتخاب شده باشد. با این کار نفوذگر میتواند اطلاعات مفیدی را در مورد ساختار شبکه و نحوه قرار گیری سرورها در شبکه به دست آورد.
نحوه استفاده از دستور Nslookup در ویندوز
شما میتوانید در هنگام اجرای این دستور، بستههای ارسالی را مانیتور نمایید که این کار با استفاده از ابزار tcpdump به صورت زیر امکان پذیر است:
Tcpdump –nn port 53 and host Target_IP
با استفاده از سوییچ –nn عملیات انجام شده بدون Name Resolve صورت میگیرد و اطلاعات مربوط به پورت 53 در IP درخواست شده نشان داده میشود.
تصویر زیر نشاندهنده تبادلات انجام شده است:
ابتدا دست تکانی سه مرحله ای انجام شده و سپس از طریق Flagهای PUSH ارسال شده، zoneها انتقال پیدا میکنند و سپس با Flagهای FIN ارتباط خاتمه مییابد.
استخراج اطلاعات DNS در لینوکس
اگر سیستم عامل لینوکس از nslookup پشتیبانی کند، مطابق همان الگوی ویندوز عمل مینماییم و در صورت عدم پشتیبانی از nslookup میتوان از دستور dig به صورت زیر استفاده نمود:
dig @[DNS server IP] [target domain] -t AXER
dig @n1.example.com example.com -t AXER
برای جلوگیری از این مشکل میتوان از موارد زیر استفاده نمود:
• DNS Zone Transfer را تنها با یک سرور خاص که مد نظر ما هست، انجام داد.
• از Split DNS (جداسازی سرور داخلی و خارجی DNS)
• ایمن سازی DNS (DNS Hardening)
برای شناسایی این حمله هم میتوان در لاگهای DNS سرور به دنبال دادههای ارسال و دریافت شده به پورت 53 TCP بود.
Website Searches
وب سایتهای شرکتها اغلب حاوی اطلاعات تماس، آدرس و مواردی از این دست هستند که برای مهندسی اجتماعی مفید هستند. نفوذگر میتواند از وب سایت یک mirror یا کپی تهیه نماید تا بتواند اطلاعات را به راحتی و به صورت آفلاین مشاهده نماید.
در این مرحله، موتورهای جستجو بسیار مفید هستند و میتوان اطلاعات مفیدی را از آنها کسب نمود. به عنوان مثال در گوگل میتوان با استفاده از link:site.com سایتهایی را که به هدف ما لینک داده اند، مشاهده نمود.
یکی از راههای جمع آوری اطلاعات، جستجوی سایت هدف در وب سایتهای مشاغل هستند. (اگر شرکتی به دنبال یک فرد آشنا به فایروال check point میباشد، چه فایروالی دارد؟)
مورد دیگر برای جمع آوری اطلاعات، جستجوی افراد است که این امکان در سایتهای زیر وجود دارد:
https://www.namechk.com/
http://pipl.com
یکی از استراتژیهای نفوذگران برای جمع آوری اطلاعلت هماهنگ سازی موقعیت فیزیکی فرد با پروفایل مجازی وی میباشد. یکی از ابزارهایی که این امکان را فراهم میسازد pushpin میباشد که قسمتی از ابزار recon-ng است.
با استفاده از ابزار pushpin میتوان موقعیت افرادی که پستهایی را در شبکههای اجتماعی مانند picasa، Flicker، Twitterو youtube ارسال نموده اند شناسایی کرد.
برای جلوگیری از این مشکل میتوان از موارد زیر استفاده نمود:
• محدود سازی و کنترل بر روی اطلاعات
• شناسایی اینکه چه اطلاعاتی از شرکت نشت پیدا میکند و انجام آنالیز ریسک
• محدود سازی اطلاعات بر روی وب سایت
• شناسایی اینکه چه سایتهایی به شرکت لینک داده اند
در مرحله شناسایی باید لاگهای برنامه را مشاهده نمایید و بررسی کنید که آیا دسترسی به صفحات به صورت مدام در زمان کوتاهی صورت گرفته است(در این حالت امکان خزیدن یک ابزار به وب سایت وجود دارد – web crawler)
موتورهای جستجو
یکی از منابعی که میتوان از آن اطلاعات بسیار مفید به دست آورد موتورهای جستجو هستند. از گوگل به عنوان یکی از موتورهای جستجو، میتوان در جمع آوری اطلاعات استفاده کرد. در وب سایت exploit-db.com بخشی با عنوان google hacking database وجود دارد که دارای دستورات متنوعی برای کسب اطلاعات بیشتر در مورد وب سایتها هستند.
در گوگل عملگرهای متفاوتی وجود دارد که برخی از آنها به صورت زیر هستند:
Site: با این عملگر شما میتوانید عبارتی خاص را در یک URL مشخص جستجو کنید.
Allinurl: صفحاتی را که در URL سایت، تمام کلمات مورد نظر وجود داشته باشد، نمایش میدهد.
Inurl: صفحاتی را که در URL سایت، کلمه مورد نظر وجود داشته باشد، نمایش میدهد.
Allintitle: صفحاتی را که در عنوان سایت، تمام کلمات مورد جستجو وجود دارد، نمایش میدهد.
Intitle: صفحاتی را که در عنوان سایت کلمه مورد جستجو وجود دارد، نمایش میدهد.
Related: صفحات مشابه را نمایش میدهد.
Filetype: با استفاده از این دستور میتوان انواع پسوندهای مختلف مانند .xls، .ppt، .doc و… را جستجو نمود.
یکی از مواردی که در جستجوهای گوگل میتوان از آن استفاده نمود، بکارگیری “” میباشد که موجب محدود نمودن جستجو میشود. روش دیگر استفاده از – میباشد. به عنوان مثال اگر بخواهیم سایت sans.org را بدون www.sans.org جستجو کنیم، از عبارت منفی استفاده میگردد.
یکی دیگر از دستورات مفید در گوگل دستور cache: میباشد. با استفاده از این دستور میتوان صفحات ذخیره شده از یک وب سایت در حافظه گوگل را مشاهده نمود. این قابلیت گوگل برای پیدا کردن صفحاتی که به تازگی از وب سایت حذف شده است، بسیار کاربردی میباشد.
به عنوان مثال، یک تیم پاسخگویی با رخداد ممکن است نشت اطلاعات حساس را از طریق وب سایت کشف نموده و اقدام به حذف آن نماید. این صفحه از وب سایت حذف شده است ولی از حافظه گوگل حذف نشده است.
البته فراتر از گوگل، سایت archive.org هم اقدام به ذخیره سازی صفحات وب سایتهای مختلف مینماید.
یکی از ابزارهای مفید برای شناسایی فایلهای موجود در وب سایت، FOCA میباشد. این ابزار قادر به کشف فایلها، دانلود آنها، اسختراج متادیتاها را آسان مینماید و علاوه بر این دارای برخی ماژولها برای کشف آسیبپذیری میباشد.
دو ابزار دیگری که برای جستجو در اینترنت و جمع آوری اطلاعات میتوان از آنها استفاده نمود، ابزارهای Search Diggity و Recon-ng میباشند.
برای پیشگیری از جمع آوری اطلاعات از موتورهای جستجو میتوان از موارد زیر استفاده کرد:
• اطلاعات افشا شده وب سایت را با استفاده از گوگل شناسایی و حذف نمایید.
• فایل robots.txt را تغییر دهید تا موتورهای جستجو به مسیرهای حساس دسترسی نداشته باشند.
• آدرسهایی که اقدام به دسترسی به صفحات وب سایت مینمایند را شناسایی و بررسی کنید.
• تگهای meta که در صفحات وجود دارند و اطلاعات خاصی را افشا میکنند را مدیریت نمایید.
جهت مشاهده اطلاعات بیشتر در خصوص فایل robots.txt و نحوه عملکرد آن میتوانید به وب سایت http://www.robotstxt.org مراجعه نمایید.
ابزار Maltego
ابزار Maltego توسط یک شرکت به نام Paterva منتشر شد. این ابزار، اطلاعات زیادی را برای محققان و مهاجمان کامپیوتر فراهم میکند.Maltego به کاربر اجازه میدهد تا با یک یا چند بخش از اطلاعات، مانند نام فرد، شماره تلفن، نام دامنه، آدرس ایمیل، آدرس وب سایت، آدرس IP و غیره کار خود را شروع کند.
با توجه به این بخش از اطلاعات،Maltego ، مجموعه ای از جستجوها را به منابع عمومی اطلاعات برای پیداکردن اطلاعات مربوطه انجام میدهد.
Maltego بر روی لینوکس، ویندوز و Mac OS X اجرا میشود و در دو فرمت موجود است: یک نسخه تجاری که در حدود 430 دلار در سال هزینه دارد و یک نسخه رایگان که دارای محدودیتهایی است.
نسخه رایگان این ابزار اجازه میدهد تا برخی از فعالیتهای شناسایی قدرتمند را انجام دهید اما شامل یک صفحه نمایش است که در بازههای زمانی مختلف از شما درخواست مینماید تا شما نسخه تجاری آن را خریداری نمایید. علاوه بر این در نسخه رایگان شما تنها قادر به 75 بار transform یا تبدیل اطلاعات در روز هستید و همچنین دارای محدودیتهایی در ذخیره سازی گزارشها میباشید.
علاوه بر مواردی که در این بخش به آنها اشاره شد، میتوان ا
وب سایتهای زیر نیز برای جمع آوری اطلاعات استفاده نمود.
https://www.shodan.io
http://www.traceroute.org
http://www.tracert.org
http://www.securityspace.com/sspace/index.html
http://network-tools.com
http://www.dnsstuff.com