سیستمهای عامل را میتوان با استفاده از دستور Ping شناسایی کرد. Ping یک نرمافزار مدیریت شبکه کامپیوتری است که برای یافتن اتصال و یا عدم اتصال یک Device در یک شبکه استفاده می شود.
پینگ با ارسال بستههای درخواست با پروتکل پیام کنترل اینترنت (ICMP) به میزبان مورد نظر و انتظار برای پاسخ بازخورد ICMP عمل میکند.
TTL به مدتزمان زنده ماندن (اعتبار داشتن) یک بسته (packet) در سطح شبکه گفته میشود. هر بسته (Packet) در طول مسیر، از مبدا تا مقصد از دستگاههایی عبور میکند که هر کدام از آنها یک گام (hop) محسوب میشوند. TTL بسته رابطهی مستقیمی با تعداد گامهای مسیری که بسته از آن عبور میکند، دارد. با عبور از هر hop یک واحد از TTL بسته کم میشود. TTL افزون بر اینکه مفهومی در مسیریابی شبکه است، در حوزههایی مانند DNS Caching و CDN Caching نیز کاربرد دارد.
یکی از دلایل استفاده از این پارامتر در بستههای اینترنتی جلوگیری از ارسال نامحدود و پیدرپی بستهها بین مسیریابها و تجهیزات شبکه است. TTL به نوعی تاریخ انقضا بسته محسوب میشود و از سوی دیگر این قابلیت را به ارسال کننده میدهد که از تعداد گامها در طول مسیر آگاه شود.
نکته ای که وجود دارد این است که TTL برای هر سیستم عامل متفاوت است و تا حدودی می توان سیستم عاملِ IP پینگ شده را بیابید. چرا گفتم تا حدودی؟!! چون در بعضی از موارد این TTL ها در سیستم عامل های مختلف اعدادی یکسان دارند و به درستی نمیتوان سیستم عاملی که با آن روبرو هستید را تشخیص دهید و باید در نظر داشته باشید که این روش با ترکیب روش های دیگر است که کابردی تر خواهد شد و بازهم تا حدودی به شما اجازه خواهد داد که سیستم عامل IP پینگ شده را پیدا کرد.
نکته: ما هیچگاه به طور قطع نمیتوانیم از طریق حملات کور مطمئن شویم سیستم عامل چیست.
در اینجا می توانید مقدار TTL را برای محدوده سرورها پیدا می کنید.
برای دیدن لیست کامل سیستم عامل ها و TTL آن ها به این لینک مراجعه نمایید.
ابتدا باید دستور traceroute را اجرا کنیم تا تعداد Hops بین هدف و مقصد مشخص شود.
نکته: برای ویندوز از دستور tracert استفاده کنید و برای لینوکس از دستور traceroute استفاده کنید.
ما این کار را برروی وبسایت www.gbhackers.com تست خواهیم کرد.
tracert gbhackers.com
تعداد کل hops = 11
حالا دامنه را پینگ کنید gbhackers.com
مقدار TTL=53 است، با جمع کردن مقدار TTL و تعداد Hops می توانیم سیستم عامل را تعریف کنیم (53 + 11 = 64)، که با این اوصاف می توان نتیجه گرفت که احتمالا یک ماشین لینوکس در حال اجرا است.
سخن پایانی: اصولا کمتر کسی با این روش سعی بر فهمیدن سیستم عامل یک کامپیوتر می کند زیرا ابزارهای بهتر و کارآمد تری در دنیای شبکه وجود دارد که این کار را راحت تر، دقیق تر و با جزئیات بیشتر برای ما انجام می دهند (به عنوان مثال Nmap که میتونید آموزش گوشه ای از این ابزار قدرتمند رو اینجا داشته باشید.) ولی از اونجایی که این روش یکی از روش هایی هست که هر ابزاری برای تشخیص یک سیستم عامل انجام می دهد، به نظرم جالب بود که شماهم باهاش آشنا بشید و ببینید دنیای هک چه روش هایی رو برای به دست آوردن اطلاعات طی خواهد کرد.
به امید روزهای بهتر
محمد مبین آقاشاهی اردستانی
ترجمه شده از مقاله Operating Systems Can be Detected Using Ping Command