معین وفایی
متخصص شبکه های سیسکو و امنیت زیرساخت

آموزش Enumeration و Footprinting در هک و نفوذ به وب

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

توی این مقاله در مورد جمع آوری اطلاعات و مفاهیم Enumeration و Footprinting در هک و نفوذ به وب باهاتون یک سری از حرفا رو در میون بزارم . جمع آوری اطلاعات چندین مرحله داره همانطور که شکل زیر رو مشاهده می فرمائید در دو مرحله اول ما میخوایم اطلاعات اولیه رو پیدا کنیم و رنج شبکه رو موقعیت یابی نماییم . به این دو مرحله اصطلاحا رد پا زنی یا جستجوی ردپا یا همون footprinting گفته می شود .

وب سایت توسینسو

Enumeration چیست؟

این مرحله رد پا زنی یا جست و جوی رد پا جزو مراحل پیش از حمله است که شامل جمع آوری اطلاعاتی میشه که کمک کنه تا به روشی دست بیابیم جهت نفود به محیط مورد نظرمون ، ببینید ما در این مرحله تا جاییکه میتونیم باید در مورد سیستم ها ،پورت ها و سرویس ها و اون سری جنبه های امنیتی که در محیط وجود داره اطلاعاتمون رو بالا ببریم .ما در رد پا زنی یا footprinting میخوایم یک پلان یا نقشه از شبکه هدف یا سازمانی که میخوایم بهش نفوذ کنیم داشته باشیم.

مثلا میتونیم با استفاده از جستجوی گوگل مهندسی اجتماعی کنیم و اطلاعات کارکنان رو بدست بیاریم . حالا که در مورد جستجوی گوگل صحبت کردم ، بهتره مقداری بسط بدم این موضوع رو ; استفاده از گوگل برای جمع آوری اطلاعات روشی هوشمندانه یا بهتر بگم کسایی که خلاقیت داشته باشند میتونن از گوگل اطلاعات خوبی رو بیرون بکشند ، به کلیت این کار Google Hacking گفته میشه اینجا در مورد گوگل هکینگ زیاد صحبت نمیکنم و سعی میکنم در مورد گوگل هکینگ مقاله ای جامع درست کنم و رو وب سایت بزارم .

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

DNS Enumeration چیست؟

DNS Enumeration : اول از همه یک صحبت کوتاه در مورد خود مفهوم DNS داشته باشم با شما ، DNS یک سرویس تحت شبکه است که نام های شبکه رو ( منظورم همون Domain Name ) به آدرس IP و بر عکس ( یعنی آدرس IP رو به Domain name ) تبدیل میکنه ؛ حفظ کردن اسم ها آسون تر از حفظ کردن آدرس های اینترنتیه اما اینترنت براساس آی پی کار میکنه برای همین از DNS استفاده میشه .

حالا فرآیند DNS Enumeration چیه ؟ فرآیندیست که ما تمام سرور های DNS و داده های موجود در اون رو در مورد یک سازمان مکان یابی یا به زبان خودمونی بخوام بگم به اطلاعاتش دست پیدا می کنیم . حالا اون اطلاعات چی میتونه باشه ؟ Username , IP , system’s name و یک سری اطلاعات دیگه . میشه به DNSENUM و NSlookUP , DNSstuff , ARIN , Whois به عنوان ابزار های DNS Enumeration اشاره کرد .

آموزش ابزار DNSEnum

اول از همه بگم که Dnsenum یک اسکریپت به زبان پرل !!! کارش چیه ؟ کاملا خودکار سیستم های DNS موجود در شبکه رو شناسایی میکنه . حالا بریم یک حرکت هم باهاش بزنیم در حد چندتا کامند ! : دی من سایت ترامپ رو انتخاب کردم البته میتونم بگم داخلش نرفتم شاید تشابه اسمی باشه :)) اول بریم جاشو ( منظورم جای DNSenum ) پیدا کنیم :

Application > Kali linux > information > DNS Analysis > DNSEnum
وب سایت توسینسو

بعد روش که کلیک کنیم این عکس پایینی میاد :))

وب سایت توسینسو

حالا میریم دستورمون رو میزنیم !!! دستور چیه ؟

root@kali : dnsenum --enum tromp.nl

که تصویر زیر گویا قضیه هستش .

وب سایت توسینسو

در ادامه تصویر فوق ...

وب سایت توسینسو

حالا این ابزار چه چیزهایی رو در اختیار ما میزاره ؟؟ همانطور که در عکس های بالا مشخصه Name Server و MX Record و BIND حالا که به اینجا رسیدیم یک توضیح مختصری هم در مورد هر یک از موارد بالا بهتون میدم :

  • Name server : سایت ها با استفاده از همین name server میتونن بجای IP Address ها از Domain Name ها استفاده کنند .
  • MX Record : مخفف Mail Exchange record : به زبان خیلی روان کاری که MX انجام میده اینه که به سرویس های ارسال ایمیل مثل یاهو یا مایکروسافت یا گوگل می گوید که چطور باید ایمیلی را به دامنه شما ارسال بکنه . یکم بخوام این قضیه رو بهتر بگم اینه میشه که زمانی که ما یک دامنه رو به ثبت میرسونیم DNS Record های مختلفی به دامنه ما اختصاص پیدا میکنه ( چرا اختصاص میدن ؟ چون که قابل مشاهده روی اینترنت باشیم )یکی از این دی ان اس رکورد ها همین MX هستش که ایمیل رو به دامنه ما هدایت میکنه .بازم یک سرچی در موردش توی اینترنت انجام بدید ...
  • BIND :اول بگم که بحثش توی لینوکسه دوم اینکه یک سرویس DNS که شبیه اداره پست عمل میکنه یعنی بسته رو توی اینترنت دستتون می رسونه میگن کد پستی رو حفظ میکنه ( منظور از کد پستی همون IP هستشا ) و بسته رو به دستتون می رسونه والسلام .

یک سری کلیات در مورد DNSEnum گفتم بازم شما برید تحقیق کنید ...

آموزش NSLookup

NSlookup : اول از همه بگم که مخفف Name Server Lookup هستش و یک دستور ابزاری که برای رفع مشکلات DNS ما استفاده میکنیم و هر مدیر شبکه ای با استفاده از این دستور میتونه سرویس DNS شبکه رو تست و اشکالاتش رو برطرف کنه .در مورد NSlookup در انجمن زیرساخت و شبکه صحبت شده و من لازم نمیبینم که بخوام دوباره در موردش آموزشی بنویسم پس میرم سراغ اصل مطلب .CMD رو باز کرده و دستور nslookup رو تایپ میکنیم .

وب سایت توسینسو

در مرحله بعدی هنگامی که کلید ENTER رو فشار میدهید nslookup چه چیزی به شما برمیگردونه ؟

وب سایت توسینسو

هنگامی اجرای nslookup سروری که به عنوان DNS Server روی سیستم ما تعریف شده رو به عنوان سرور پیشفرض دی ان اس انتخاب میکنه . حالا میام آدرس وب سایت Itpro.ir رو وارد میکنم در ادامش که شکل زیر بهتون نمایش داده میشه

وب سایت توسینسو

Non-authoritative قضیش چیه ؟ سرور 85.15.1.14 اطلاعاتی در مورد tosinso.com نداره حالا که نداره باید چیکار کنه ؟ وارد فرآیند resolve میشه تا بتونه اطلاعات مربوط به دامنه tosinso.com رو از سرور دیگه ای بدست بیاره که در تصویر زیر مشاهده می کنید که توانست بدست بیاره .

وب سایت توسینسو

چجوری از شر Non-authoritative خلاص شیم ؟ من با استفاده از Whois رفتم و به یک سری اطلاعات جزیی از سایت دست پیدا کردم و سرور دی ان اس ITPRO رو به دست آوردم .

وب سایت توسینسو

کاری کردم مانند شکل زیر سرور پیش فرض رو عوض کردم و دیگه با Non-authoritative مواجه نشدم ، چرا ؟ به این دلیل که سرور 185.8.173.236 اطلاعات Itpro رو در خودش داره .

وب سایت توسینسو
وب سایت توسینسو

آموزش Whois

Whois : بهتره یا یک مثال این آموزش رو شروع کنم ، چند وقت پیش رفتم توی سایت NIC.ir و یک دامنه بنام moein2v.ir رو ثبت کردم وقتی داشتم این دامنه رو ثبت میکردم یک سری از مشخصات خودم رو به عنوان کسی که مالک این دامنه هست و به قول معروف صاحب امتیاز دامنه هستش ثبت کردم . سوالی که پیش میاد اینه که این اطلاعاتی که من ثبت کردم کجا ازش استفاد میشه ؟ این اطلاعات در یک دیتا بیس که این DB شامل اطلاعات بقیه مدیران سایت ها هم هست ، نگهداری میشه و هر کسی که اراده کنه میتونه براحتی مشخصات صاحب دامنه رو مشاهده کند .

سوالی که پیش میاد اینه که این مشخصات شامل چه چیزهایی هستش ؟ نام و نام خانوادگی ، تلفن ، فکس یا تلفن همراه ،آدرس محل سکونت و یا شرکت کد سپتی محل و اینکه میتونه برداشتی داشته باشه از این که این دامنه چه زمانی به ثبت رسیده و چه زمانی منقضی میشه یا مثلا مشخصات دی ان اس این دامنه به چه صورته و به کدام DNS Server متصل میشه .میریم به صورت عملی با بحث whois آشنا بشیم .برای دیدن اطلاعات whois دامنه های ir از لینک زیر استفاده میکنیم .

Whois.nic.ir

و برای دیدن اطلاعات whois دامنه هایی مانند tv.info.com.net,… از سری لینک های زیر میشه استفاده کرد .

whois.domaintools.com
whoisfinder.com
whois.domainpeople.com
internic.net/whois.html
who.is

حالا من میام و tosinso.com رو با whois مورد بررسی قرار میدیم .

وب سایت توسینسو
وب سایت توسینسو
وب سایت توسینسو

قبول کنین whois چیزی خاصی نداشت ... بحث دیگه ای که دارم اینه که هر هکری باید بدونه که رنج IP , Subnetmask سیستم هدفش رو چجوری پیدا کنه ؟؟ قبل از اینکه جواب سوال بالا رو بدم یک سوال دیگه هم مطرح میکنم : چرا هکر باید دنبال IP و اطلاعات سیستم هدفش باشه ؟ جواب اینه که به وسیله IP ما میتونیم به سیستم هدفمون برسیم و سیستمش رو اسکن کنیم و در آخر دسترسی به سیستمش داشته باشیم . هکر میتونه می تونه حتی بفهمه که سیستم هدفش در چه موقعیت جغرافیایی قرار گرفته ، ( چجوری ؟ )

می تونیم مسیری که یک packet ارسال شده رو ردیابی کنیم تا برسیم به موقعیت هدفمون ، ( چجوری ردیابی کنیم ؟ ) میتونیم با استفاده از ابزار های گوناگون که یکیش traceroute مسیر هدفمون رو تشخیص بدیم البته این نکته هم خالی از لطف نیست که بگم هنگامی که ما مسیر رو ردیابی میکنیم به یک سری اطلاعات دیگه هم دست پیدا میکنیم مثلا شاید gateway اون شرکت یا سازمان یا شبکه یا رنج داخلی اون شبکه سازمان رو پیدا کنیم که همینا کمک میکنه در انجام حمله به ما .

traceroute ابزاریه که ما رو در ردیابی بسته کمک میکنه بدین صورت که یک درخواست ICMP به سمت مقصد میفرسته که در این راه از روتر ها و gateway ها عبور میکنه تا به مقصد برسه .نکته اینه که زمانی که درخواست ICMP از روتر مقصد برمیگرده TTL به ازای هر روتری که برمیگرده یکی یکی کم میشه اینجاست که هکر میتونه HOP COUNT رو تشخیص بده و تعداد هاپ هایی که در مسیر هست رو بفهمد .و اما مشکلاتش :

یکی از مشکلاتش بحث فایروال هایی که در مسیر قرار گرفته ، بهتره اینجوری بگم که وقتی Request فرستاده میشه اگر در طول مسیر فایروال حضور داشته باشه یا پروسه packet filtering بر روی بسته به اجرا در آمده باشه با ما TIEMOUT مواجه میشم البته با اینکه جلوی درخواست ما گرفته میشه ولی حداقل میتونیم بفمهمیم یک فایروالی در مسیر حضور داره که باز ما یک سری روش برای دور زدن فایروال داریم مثل Sam Spade یا Hping یا هر راهی که یک هکر بتونه ، راه زیاده ...

وب سایت توسینسو

همانطور که مشاهده میکنید ما به فایروالی برخورد کردیم در مسیر روتر مقصدمون :D و تعدادی هاپ هایی که تا مقصد وجود داره برامون نمایان شده . والسلام


معین وفایی
معین وفایی

متخصص شبکه های سیسکو و امنیت زیرساخت

متخصص شبکه های سیسکو و امنیت در شبکه های سیسکو ** متخصص ASA & Fortigate ** دارای مدارک رسمی MTCNA*MTCRE*MCTWE*MTCTCW*MTCUME علاقه مند به Virtualization & Linux توانمند در ایجاد سیستم های IDS و IPS مبتنی بر بستر Open Source

23 دی 1395 این مطلب را ارسال کرده

نظرات