| ETTERCAP(8) | System Manager's Manual | ETTERCAP(8) |
نام (NAME)
ettercap - اسنیفر و فیلترکننده محتوا برای حملات مرد میانی
نکته بسیار مهم (IMPORTANT NOTE)
از نسخه ettercap NG (سابقاً 0.7.0)، تمام گزینهها تغییر یافتهاند. حتی نحوه تعیین هدف نیز تغییر کرده است. لطفاً این صفحه راهنما را با دقت مطالعه فرمایید.
خلاصه دستور (SYNOPSIS)
ettercap [OPTIONS] [TARGET1] [TARGET2]
در صورت
فعال بودن IPv6:
TARGET به صورت
MAC/IPs/IPv6/PORTs است
در غیر این
صورت،
TARGET به صورت
MAC/IPs/PORTs است
که در آن IPs و PORTs
میتوانند
بازهای از
مقادیر
باشند
(مانند
/192.168.0.1-30,40,50/20,22,25)
توضیحات (DESCRIPTION)
ابزار Ettercap ابتدا به عنوان یک اسنیفر برای شبکههای سوییچشده (و مسلماً شبکههای دارای هاب) متولد شد، اما در طول فرآیند توسعه، قابلیتهای بیشتری به دست آورد که آن را به ابزاری قدرتمند و انعطافپذیر برای حملات مرد میانی (man-in-the-middle) تبدیل کرد. این ابزار از کالبدشکافی و تحلیل فعال و غیرفعال پروتکلهای متعدد (حتی پروتکلهای رمزگذاریشده) پشتیبانی میکند و ویژگیهای متعددی را برای تحلیل شبکه و میزبانها (مانند انگشتنگاری سیستمعامل یا OS fingerprint) در بر دارد.
این برنامه دو گزینه اصلی برای شنود دارد:
UNIFIED
(یکپارچه):
این روش
تمام
بستههایی
را که از روی
کابل عبور
میکنند
شنود
مینماید.
میتوانید
رابط شبکه
را در حالت
بیقید (promisc)
قرار دهید
یا خیر
(گزینه -p).
بستهای که
مقصد آن
میزبانی به
جز میزبان
اجراکننده
ettercap باشد، به
طور خودکار
با استفاده
از
مسیریابی
لایه ۳
هدایت (forward)
خواهد شد.
بنابراین
میتوانید
از یک حمله
مرد میانی
که توسط
ابزاری
دیگر آغاز
شده
استفاده
کنید و
اجازه دهید
ettercap بستهها
را ویرایش
کرده و برای
شما هدایت
نماید.
قابلیت ip_forwarding
هسته
همواره
توسط ettercap
غیرفعال
میشود. این
کار برای
جلوگیری از
هدایت
دوگانه یک
بسته
(یکبار
توسط ettercap و
یکبار
توسط هسته)
انجام
میگیرد.
این رفتار
روی
گذرگاهها
(gateways) تهاجمی
است.
بنابراین
توصیه
میکنیم ettercap
را روی
گیتویها
منحصراً با
حالت
غیرتهاجمی
فعال (UNOFFENSIVE MODE ENABLED)
اجرا کنید.
از آنجا که ettercap
تنها روی یک
رابط شبکه
گوش فرا
میدهد،
اجرای آن
روی گیتوی
در حالت
تهاجمی
مانع از
بازگشت و
هدایت مجدد
بستهها از
رابط دوم
خواهد شد.
BRIDGED (پلشده): این روش از دو رابط شبکه استفاده کرده و ترافیک را همزمان با انجام شنود و فیلتر کردن محتوا، از یکی به دیگری هدایت مینماید. این روش شنود کاملاً مخفیانه است چرا که هیچ راهی برای کشف حضور فردی در میانه کابل وجود ندارد. میتوانید به این روش به عنوان یک حمله mitm در لایه ۱ نگاه کنید. شما در میانه کابل بین دو نهاد قرار خواهید گرفت. از آن روی گذرگاهها استفاده نکنید، زیرا گیتوی شما را به یک پل (bridge) تبدیل خواهد کرد. نکته: میتوانید از موتور فیلتر محتوا برای دور انداختن (drop) بستههایی که نباید عبور کنند استفاده نمایید. بدین ترتیب ettercap به عنوان یک سامانه پیشگیری از نفوذ درونمسیر (inline IPS) عمل خواهد کرد ;)
همچنین میتوانید هنگام استفاده از شنود یکپارچه، حملات مرد میانی را اجرا کنید. میتوانید حمله mitm مورد نظر خود را انتخاب نمایید. ماژول حمله mitm مستقل از فرآیند شنود و فیلترسازی است، بنابراین میتوانید چندین حمله را همزمان اجرا کنید یا از ابزار اختصاصی خود برای حمله بهره ببرید. نکته کلیدی این است که بستهها باید با آدرس mac درست و آدرس ip متفاوت به ettercap برسند (تنها این بستهها هدایت خواهند شد).
برجستهترین قابلیتهای ettercap عبارتند از:
پشتیبانی از SSH1: میتوانید نام کاربری، گذرواژه و حتی دادههای یک اتصال SSH1 را شنود کنید. ابزار ettercap نخستین نرمافزاری است که توانایی شنود یک اتصال SSH را در حالت دوطرفه کامل (FULL-DUPLEX) دارد.
پشتیبانی از SSL: میتوانید دادههای محافظتشده با SSL را شنود کنید... یک گواهی جعلی به کلاینت ارائه میشود و نشست رمزگشایی میگردد.
تزریق نویسهها در یک اتصال برقرار شده: میتوانید نویسهها را به سمت سرور (شبیهسازی دستورها) یا کلاینت (شبیهسازی پاسخها) تزریق کنید و اتصال را زنده نگه دارید!!
فیلترسازی یا دور انداختن بستهها: میتوانید یک اسکریپت فیلتر تنظیم کنید که رشتهای خاص (حتی مقادیر هگز) را در محموله TCP یا UDP جستجو کرده و آن را با مقدار مورد نظرتان جایگزین کند یا کل بسته را دور بیندازد. موتور فیلترسازی میتواند با هر فیلدی از پروتکلهای شبکه تطبیق یافته و هر آنچه میخواهید را دستکاری نماید (به etterfilter(8) مراجعه کنید).
شنود ترافیک راه دور از طریق تونلها و دستکاری مسیرها: میتوانید با رابطهای پخته لینوکس (Linux cooked interfaces) کار کنید یا از افزونه یکپارچه برای شنود اتصالات راه دورِ دارای تونل یا مسیرهای دستکاریشده استفاده کرده و روی آنها حملات مرد میانی انجام دهید.
پشتیبانی از افزونهها: میتوانید با استفاده از رابط برنامهنویسی (API) نرمافزار ettercap، افزونه اختصاصی خود را بسازید.
گردآورنده گذرواژه برای پروتکلهای: TELNET، FTP، POP، RLOGIN، SSH1، ICQ، SMB، MySQL، HTTP، NNTP، X11، NAPSTER، IRC، RIP، BGP، SOCKS 5، IMAP 4، VNC، LDAP، NFS، SNMP، HALF LIFE، QUAKE 3، MSN، YMSG (و پروتکلهای دیگری که به زودی اضافه میشوند...)
انگشتنگاری غیرفعال سیستمعامل (Passive OS fingerprint): شبکه محلی را به صورت غیرفعال (بدون ارسال هیچ بستهای) پویش کرده و اطلاعات دقیقی درباره میزبانهای حاضر در LAN جمعآوری میکنید: سیستمعامل، سرویسهای در حال اجرا، درگاههای باز، آدرس IP، آدرس مک و سازنده کارت شبکه.
قطع یک اتصال (Kill a connection): از فهرست اتصالات میتوانید هر اتصالی را که میخواهید قطع کنید.
تعیین هدف (TARGET SPECIFICATION)
هیچ مفهومی از مبدأ (SOURCE) یا مقصد (DEST) وجود ندارد. هدف از دو تارگت این است که به Ettercap بگویند هنگام تبادل ترافیک از یکی به دیگری و بالعکس (از آنجا که اتصال دوطرفه است)، روی کدام بستهها تمرکز کند.
شناسه TARGET
به صورت MAC/IPs/PORTs
تعریف
میشود.
نکته: در
صورت فعال
بودن IPv6،
شناسه TARGET به
صورت MAC/IPs/IPv6/PORTs
خواهد بود.
در صورت
تمایل
میتوانید
هر یک از
بخشهای آن
را خالی
بگذارید که
این به
معنای ANY (هر
مقداری) در
آن بخش
خواهد بود.
برای مثال:
"//80" یعنی هر
آدرس مک، هر
آیپی و فقط
پورت 80.
"/10.0.0.1/" یعنی هر
آدرس مک،
فقط آیپی 10.0.0.1
و هر پورتی.
مقدار MAC باید یکتا و به قالب 00:11:22:33:44:55 باشد.
مقدار IPs
بازهای از
آدرسهای IP
با قالب
نقطهدار
است.
میتوانید
بازه را با
خط تیره (-) و
آیپی تکی
را با کاما (,)
مشخص کنید.
همچنین
میتوانید
از
نقطه-ویرگول
(;) برای مشخص
کردن
آدرسهای IP
مختلف
استفاده
نمایید.
برای مثال:
"10.0.0.1-5;10.0.1.33" به
آدرسهای
10.0.0.1، 2، 3، 4، 5 و 10.0.1.33
بسط
مییابد.
مقدار PORTs
بازهای از
پورتها
است.
میتوانید
بازه را با
خط تیره (-) و
پورت تکی را
با کاما (,)
مشخص کنید.
برای مثال:
"20-25,80,110" به
پورتهای 20،
21، 22، 23، 24، 25، 80 و 110
بسط
مییابد.
نکته:
میتوانید
با افزودن
گزینه -R به
خط فرمان،
تطبیق TARGET را
معکوس کنید.
بنابراین
اگر
میخواهید
تمام
ترافیک به
جز ترافیک
ورودی یا
خروجی به 10.0.0.1
را شنود
کنید،
میتوانید
دستور زیر
را مشخص
نمایید: "./ettercap -R
/10.0.0.1/"
نکته:
شناسههای
TARGET همچنین
مسئول پویش
اولیه شبکه
محلی هستند.
میتوانید
از آنها
برای محدود
کردن پویش
به
زیرمجموعهای
از
میزبانهای
درون ماسک
شبکه
استفاده
کنید. نتیجه
ترکیب دو
هدف مورد
پویش قرار
خواهد گرفت.
به یاد
داشته
باشید که
مشخص نکردن
هدف به
معنای
«بدون هدف»
است، اما
مشخص کردن
"//" به معنای
«تمام
میزبانهای
موجود در
زیرشبکه»
میباشد.
کاهش سطح دسترسی (PRIVILEGES DROPPING)
ابزار ettercap برای باز کردن سوکتهای لایه پیوند (Link Layer) به دسترسیهای ریشه (root) نیاز دارد. پس از مرحله راهاندازی اولیه، دیگر نیازی به دسترسیهای root نیست؛ بنابراین ettercap دسترسی خود را به UID = 65535 (کاربر nobody) کاهش میدهد. از آنجا که ettercap باید فایلهای لاگ را بنویسد (ایجاد کند)، باید در پوشهای با مجوزهای مناسب (مانند /tmp/) اجرا شود. اگر میخواهید سطح دسترسی را به یک uid متفاوت کاهش دهید، میتوانید متغیر محیطی EC_UID را با مقدار شناسه کاربری دلخواه خود مقداردهی کنید (مانند export EC_UID=500) یا پارامتر مربوطه را در فایل etter.conf تنظیم نمایید.
حمله مرد میانی در اساسال (SSL MITM ATTACK)
حمله مرد
میانی SSL
وابسته به
تغییر مسیر
ترافیک TCP به
یک درگاه
شنود
سفارشی در ettercap
است.
متغیرهای
پیکربندی
redir_command_on و redir_command_off این
وظیفه را بر
عهده دارند
(به "etter.conf(5)"
مراجعه
فرمایید).
با این حال،
هنگامی که ettercap
شروع به کار
میکند،
ترافیک
مربوط به هر
مبدأ و هر
مقصدی که
سرویسهای
قابل تغییر
مسیر را هدف
گرفته
باشد، به
سوی ettercap هدایت
شده و جریان
داده SSL
رهگیری
میشود.
این ممکن
است رفتار
مطلوب شما
نباشد.
بنابراین
میتوانید
پس از شروع ettercap
با استفاده
از رابط
کاربری
انتخابی،
قوانین
تغییر مسیر
را تنظیم
نمایید.
هنگام اجرای حمله مرد میانی SSL، ابزار ettercap گواهی واقعی SSL را با گواهی خود جایگزین میکند. گواهی جعلی در لحظه ایجاد شده و تمام فیلدهای آن بر اساس گواهی واقعی ارائه شده توسط کارساز پر میشوند. تنها صادرکننده (issuer) تغییر یافته و با کلید خصوصی موجود در فایل 'etter.ssl.crt' امضا میگردد. اگر میخواهید از کلید خصوصی متفاوتی استفاده کنید باید این فایل را مجدداً ایجاد نمایید. برای بازتولید فایل گواهی از دستورهای زیر استفاده کنید:
openssl genrsa -out etter.ssl.crt 1024 openssl req -new -key etter.ssl.crt -out tmp.csr openssl x509 -req -days 1825 -in tmp.csr -signkey etter.ssl.crt -out tmp.new cat tmp.new >> etter.ssl.crt rm -f tmp.new tmp.csr
نکته: حمله مرد میانی SSL (در حال حاضر) در حالت پلشده (bridged) در دسترس نیست.
نکته: در صورتی که میخواهید فایلی به غیر از فایل etter.ssl.crt را مشخص کنید، میتوانید از گزینههای طولانی --certificate/--private-key بهره ببرید.
گزینهها (OPTIONS)
گزینههایی که با یکدیگر سازگار هستند معمولاً قابل ترکیب میباشند. ابزار ettercap در صورت وجود ترکیبهای پشتیبانینشده از گزینهها به کاربر هشدار میدهد.
- گزینههای شنود و حمله (SNIFFING AND ATTACK OPTIONS)
ابزار ettercap NG
دارای روش
شنود
یکپارچه
جدیدی است.
این امر
مستلزم آن
است که ip_forwarding در
هسته
همواره
غیرفعال
باشد و
هدایت
بستهها
توسط خود ettercap
انجام
پذیرد. هر
بستهای با
آدرس مک
مقصد برابر
با آدرس مک
میزبان و
آدرس آیپی
مقصدی
متفاوت از
آدرس متصل
به رابط
شبکه، توسط
ettercap هدایت
خواهد شد.
پیش از
هدایت، ettercap
میتواند
بستهها را
فیلتر
محتوا
کرده، شنود
نماید، لاگ
بگیرد یا
دور
بیندازد.
مهم نیست
این
بستهها
چگونه
ربوده
شدهاند، ettercap
آنها را
پردازش
خواهد کرد.
حتی
میتوانید
از
برنامههای
خارجی برای
ربودن
بستهها
استفاده
نمایید.
شما کنترل
کاملی بر
آنچه ettercap باید
دریافت کند
دارید.
میتوانید
از حملات
مرد میانی
داخلی
استفاده
کنید، رابط
شبکه را در
حالت
بیقید (promisc)
قرار دهید،
از
افزونهها
بهره ببرید
یا از هر روش
دلخواهی
استفاده
کنید.
نکته مهم: اگر ettercap را روی یک درگاه (gateway) اجرا میکنید، به یاد داشته باشید که پس از بستن ettercap، قابلیت ip_forwarding را دوباره فعال سازید. از آنجا که ettercap سطح دسترسی خود را کاهش میدهد، نمیتواند به طور خودکار ip_forwarding را برای شما بازیابی کند.
- -M, --mitm <METHOD:ARGS>
- حمله مرد
میانی (حمله
MITM)
این گزینه حمله مرد میانی را فعال میکند. حمله mitm کاملاً مستقل از فرآیند شنود است. هدف حمله، ربودن بستهها و هدایت مجدد آنها به سوی ettercap است. موتور شنود در صورت لزوم بستهها را به مقصد هدایت خواهد کرد.
میتوانید روش حمله mitm مورد نظر خود را انتخاب کرده و همچنین برخی از آنها را برای اجرای همزمان حملات گوناگون ترکیب کنید.
اگر یک روش mitm نیازمند پارامترهایی باشد، میتوانید آنها را پس از علامت دونقطه مشخص کنید (مانند -M dhcp:ip_pool,netmask,etc).روشهای حمله مرد میانی زیر در دسترس هستند:
- arp ([remote],[oneway])
- این روش
حمله مرد
میانی با
مسمومسازی
ARP را
پیادهسازی
میکند.
درخواستها
و پاسخهای
ARP به
قربانیان
فرستاده
میشوند تا
حافظه موقت
ARP (یا ARP cache) آنها
مسموم شود.
به محض
مسموم شدن
کش،
قربانیان
تمامی
بستهها را
به مهاجم
میفرستند
که او نیز
به نوبه خود
میتواند
آنها را
دستکاری
کرده و به
مقصد واقعی
هدایت کند.
در حالت خاموش (گزینه -z) تنها هدف نخست انتخاب میشود؛ اگر میخواهید در حالت خاموش چندین هدف را مسموم کنید، از گزینه -j برای بارگذاری فهرستی از یک فایل بهره ببرید.
میتوانید اهداف را خالی بگذارید تا به عنوان 'ANY' (تمام میزبانهای شبکه محلی) بسط داده شوند. فهرست اهداف با فهرست میزبانها (ایجاد شده توسط پویش arp) ترکیب شده و نتیجه برای تعیین قربانیان حمله استفاده میشود.
پارامتر "remote" اختیاری است و در صورتی که میخواهید با مسمومسازی یک درگاه، آدرس آیپی راه دور را شنود کنید باید آن را تعیین نمایید. در واقع اگر یک قربانی و گیتوی را در TARGETS تعیین کنید، ettercap تنها اتصالات میان آنها را شنود میکند، اما برای این که ettercap بتواند اتصالاتی را که از درگاه عبور میکنند شنود کند، باید این پارامتر را مشخص نمایید.
پارامتر "oneway" ابزار ettercap را مجبور میکند تا تنها از TARGET1 به سمت TARGET2 عملیات مسمومسازی را انجام دهد. زمانی مفید است که میخواهید تنها کلاینت را مسموم کنید و نه روتر را (جایی که ممکن است سامانه نظارت بر ARP فعال باشد).
مثال:
اهداف عبارتند از: /10.0.0.1-5/ /10.0.0.15-20/
و فهرست میزبانها: 10.0.0.1 10.0.0.3 10.0.0.16 10.0.0.18ارتباطهای میان قربانیان به صورت زیر خواهد بود:
1 و 16، 1 و 18، 3 و 16، 3 و 18اگر اهداف با یکدیگر همپوشانی داشته باشند، از ارتباط با آدرس آیپی یکسان صرفنظر خواهد شد.
نکته: اگر موفق به مسمومسازی یک کلاینت شدید، باید جدول مسیریابی صحیحی را با تعیین GW در هسته تنظیم کنید. اگر جدول مسیریابی شما نادرست باشد، کلاینتهای مسمومشده قادر به دسترسی به اینترنت نخواهند بود.
- icmp (MAC/IP)
- این حمله
تغییر مسیر
ICMP (یا ICMP redirection) را
پیادهسازی
میکند. این
حمله یک
پیام تغییر
مسیر icmp جعلی
به
میزبانهای
موجود در
شبکه محلی
ارسال
میکند و
وانمود
مینماید
که مسیر
بهتری برای
اینترنت
است. تمام
اتصالات به
اینترنت به
سمت مهاجم
تغییر مسیر
مییابند و
مهاجم نیز
به نوبه خود
آنها را به
گیتوی
واقعی
هدایت
خواهد کرد.
حمله حاصل
یک حمله مرد
میانی
یکطرفه (HALF-DUPLEX)
است. تنها
کلاینت
تغییر مسیر
داده
میشود،
زیرا درگاه
پیامهای
تغییر مسیر
را برای
شبکهای که
مستقیماً
متصل است
نمیپذیرد.
اطمینان
حاصل کنید
از
فیلترهایی
که طول
محموله (PAYLOAD LENGTH)
را تغییر
میدهند
استفاده
نکنید.
میتوانید
از فیلتر
برای
ویرایش
بستهها
استفاده
کنید، اما
طول باید
ثابت بماند
چرا که
توالیهای
tcp را
نمیتوان
در هر دو
جهت
بهروزرسانی
کرد.
باید آدرس MAC و IP گیتوی واقعی شبکه محلی را به عنوان آرگومان ارسال نمایید.
بدیهی است که باید بتوانید تمام ترافیک را شنود کنید. اگر روی یک سوییچ قرار دارید، باید از روش حمله متفاوتی مانند مسمومسازی arp استفاده نمایید.نکته: برای محدود کردن تغییر مسیر به یک هدف مشخص، آن را به عنوان یک TARGET تعیین کنید.
مثال:
-M icmp:00:11:22:33:44:55/10.0.0.1
تمام اتصالاتی را که از آن درگاه عبور میکنند تغییر مسیر خواهد داد.
- dhcp (ip_pool/netmask/dns)
- این حمله
جعل DHCP (یا DHCP spoofing)
را
پیادهسازی
میکند. این
حمله
وانمود
میکند که
یک سرور DHCP
است و تلاش
میکند در
شرایط
رقابتی با
سرور واقعی
پیروز شود
تا کلاینت
را به پذیرش
پاسخ مهاجم
وادار سازد.
بدین ترتیب
ettercap قادر است
پارامتر GW
را دستکاری
کرده و تمام
ترافیک
خروجی
کلاینتها
را برباید.
حمله حاصل یک حمله مرد میانی نیمهدوطرفه (HALF-DUPLEX) است. بنابراین اطمینان حاصل کنید که از فیلترهای مناسب استفاده نمایید (به بخش ICMP در بالا نگاه کنید).باید استخر آیپی (ip pool) مورد استفاده، ماسک شبکه و آیپی کارساز DNS را مشخص کنید. از آنجا که ettercap تلاش میکند در رقابت با سرور واقعی پیروز شود، بررسی نمیکند که آیا آیپی از قبل تخصیص یافته است یا خیر. شما باید استخری از آدرسهای آزاد را برای استفاده تعیین نمایید. استخر آیپی از همان ساختار تعیین هدف پیروی میکند.
اگر کلاینت یک درخواست dhcp ارسال کند (و یک آدرس آیپی را پیشنهاد دهد)، ettercap روی همان آیپی تاییدیه (ack) ارسال کرده و تنها گزینه gw را تغییر میدهد. اگر کلاینت درخواست کشف dhcp (یا dhcp discovery) ارسال کند، ettercap از نخستین آدرس استفادهنشده در فهرستی که در خط فرمان تعیین کردهاید استفاده خواهد کرد. هر کشف یک آدرس آیپی را مصرف میکند. هنگامی که فهرست تمام شود، ettercap از ارائه آدرسهای جدید دست میکشد و تنها به درخواستهای dhcp پاسخ میدهد.
اگر نمیخواهید هیچ آدرس آیپی ارائه دهید و صرفاً میخواهید اطلاعات روتر را در بسته request/ack مربوط به dhcp تغییر دهید، میتوانید ip_pool را خالی بگذارید.هشدار بزرگ: اگر فهرستی از آدرسهای آیپی در حال استفاده را تعیین کنید، شبکه خود را دچار اختلال شدید خواهید کرد! به طور کلی، از این حمله با احتیاط استفاده کنید؛ این حمله واقعاً میتواند اوضاع را به هم بریزد! هنگامی که حمله را متوقف میکنید، تمام قربانیان تا زمان انقضای اجارهنامه (lease) همچنان تصور خواهند کرد که ettercap همان درگاه است...
مثال:
-M dhcp:192.168.0.30,35,50-60/255.255.255.0/192.168.0.1
پاسخدهی به پیشنهاد و درخواست DHCP.-M dhcp:/255.255.255.0/192.168.0.1
تنها پاسخدهی به درخواست DHCP. - port ([remote],[tree])
- این حمله
سرقت پورت (Port
Stealing) را
پیادهسازی
میکند. این
روش برای
شنود در یک
محیط
سوییچشده
در شرایطی
که
مسمومسازی
ARP کارآمد
نیست (برای
مثال جایی
که از
نگاشتهای
ایستا برای
ARP استفاده
میشود)
سودمند است.
این گزینه شبکه محلی را (بر اساس گزینه port_steal_delay در فایل etter.conf) با بستههای ARP پر (flood) میکند. اگر گزینه "tree" را تعیین نکنید، آدرس MAC مقصد هر بسته «سرقت» با آدرس مک مهاجم یکسان خواهد بود (سایر کارتهای شبکه این بستهها را نخواهند دید) و آدرس MAC مبدأ یکی از مکهای موجود در فهرست میزبانها خواهد بود. این فرآیند، پورت سوییچ مربوط به هر میزبان قربانی در فهرست را «سرقت» میکند. با استفاده از تأخیرهای کوتاه، بستههایی با مقصد آدرسهای MAC «مسروقه» توسط مهاجم دریافت میشوند و بدین ترتیب در شرایط رقابتی با مالک واقعی پورت پیروز میشود. هنگامی که مهاجم بستههای مربوط به میزبانهای مسروقه را دریافت کرد، فرآیند ارسال سیلآسا را متوقف کرده و یک درخواست ARP برای مقصد واقعی بسته ارسال میکند. هنگامی که پاسخ ARP را دریافت کرد مطمئن میشود که قربانی پورت خود را «پس گرفته است»، بنابراین ettercap میتواند بسته را همانطور که هست مجدداً به مقصد بفرستد. اکنون میتوان فرآیند ارسال سیلآسا را در انتظار بستههای جدید از سر گرفت.
اگر از گزینه "tree" استفاده کنید، آدرس MAC مقصد هر بسته سرقت، یک آدرس ساختگی خواهد بود؛ بنابراین این بستهها به سایر سوییچها نیز منتقل خواهند شد (نه فقط سوییچی که مستقیماً متصل است). بدین ترتیب قادر خواهید بود پورتها را روی سایر سوییچهای موجود در درخت سوییچها (در صورت وجود) نیز به سرقت ببرید، اما حجم عظیمی از ترافیک را (بر اساس port_steal_delay) ایجاد خواهید کرد. گزینه "remote" همان معنای موجود در روش حمله mitm با "arp" را دارد.
هنگامی که حمله را متوقف میکنید، ettercap یک درخواست ARP به هر میزبان مسروقه ارسال کرده و پورتهای سوییچ آنها را پس میدهد.
بسته به انتخاب هدف، میتوانید حمله مرد میانی نیمهدوطرفه یا تمامدوطرفه انجام دهید.نکته: از این روش mitm تنها روی سوییچهای اترنت استفاده کنید. با احتیاط از آن بهره ببرید، زیرا ممکن است باعث افت کارایی یا هرجومرج کلی در شبکه شود.
نکته: نمیتوانید از این روش در حالت صرفاً حمله مرد میانی (پرچم -o) استفاده کنید، زیرا این روش به موتور شنود متصل میشود و امکان استفاده از تزریق تعاملی داده را نخواهید داشت.
نکته: استفاده از این گزینه همراه با سایر روشهای mitm میتواند خطرناک باشد.
نکته: این روش mitm روی سیستمعاملهای Solaris و Windows به دلیل معماری libpcap و libnet و نبود برخی ioctl()ها کار نمیکند. (اگر درخواستی وجود داشته باشد، این روش را روی این سیستمعاملها پیادهسازی خواهیم کرد...)
مثال:
اهداف عبارتند از: /10.0.0.1/ /10.0.0.15/
ترافیک میان 10.0.0.1 و 10.0.0.15 را رهگیری و مشاهده خواهید کرد، اما تمام ترافیک مربوط به 10.0.0.1 و 10.0.0.15 را نیز دریافت خواهید نمود.هدف عبارت است از: /10.0.0.1/
تمام ترافیک مربوط به 10.0.0.1 را رهگیری و مشاهده خواهید کرد. - ndp ([remote],[oneway])
- نکته: این
روش MITM تنها
در صورتی
پشتیبانی
میشود که
پشتیبانی
از IPv6 فعال
شده باشد.
این روش حمله مسمومسازی NDP را پیادهسازی میکند که برای حمله مرد میانی در اتصالات IPv6 به کار میرود. درخواستها و پاسخهای کشف همسایه (ND) به قربانیان فرستاده میشوند تا حافظه موقت همسایگان (neighbor cache) آنها مسموم شود. به محض مسموم شدن کش، قربانیان تمام بستههای IPv6 را به مهاجم میفرستند که او نیز به نوبه خود میتواند آنها را دستکاری کرده و به مقصد واقعی هدایت کند.
در حالت خاموش (گزینه -z) تنها هدف نخست انتخاب میشود؛ اگر میخواهید چندین هدف را در حالت خاموش مسموم کنید، از گزینه -j برای بارگذاری فهرستی از یک فایل بهره ببرید.
میتوانید اهداف را خالی بگذارید تا به عنوان 'ANY' (تمام میزبانهای موجود در شبکه محلی) بسط داده شوند. فهرست اهداف با فهرست میزبانها (ایجاد شده توسط پویش arp) ترکیب شده و نتیجه برای تعیین قربانیان حمله استفاده میشود.
پارامتر "remote" اختیاری است و در صورتی که میخواهید با مسموم کردن یک درگاه، آدرس آیپی راه دور را شنود کنید، باید آن را تعیین نمایید. در واقع اگر یک قربانی و گیتوی را در TARGETS تعیین کنید، ettercap تنها اتصالات میان آنها را شنود خواهد کرد، اما برای این که ettercap بتواند اتصالاتی را که از درگاه عبور میکنند شنود کند، باید این پارامتر را مشخص نمایید.
پارامتر "oneway" ابزار ettercap را وادار میکند تا تنها از TARGET1 به سمت TARGET2 عملیات مسمومسازی را انجام دهد. زمانی مفید است که میخواهید تنها کلاینت را مسموم کنید و نه روتر را (جایی که ممکن است ناظر arp فعال باشد).
مثال:
اهداف عبارتند از: //fe80::260d:afff:fe6e:f378/ //2001:db8::2:1/
بازههایی از آدرسهای IPv6 هنوز پشتیبانی نمیشوند.نکته: اگر موفق به مسمومسازی یک کارخواه شدید، باید جدول مسیریابی صحیحی را در هسته با مشخص کردن GW تنظیم کنید. اگر جدول مسیریابی شما نادرست باشد، کلاینتهای مسمومشده قادر به دسترسی به اینترنت نخواهند بود.
نکته: در IPv6 معمولاً از آدرس پیوند-محلی (link-local) روتر به عنوان آدرس گیتوی استفاده میشود. بنابراین لازم است آدرس link-local روتر را به عنوان یک هدف و آدرس یونیکست جهانی (global-unicast) قربانی را به عنوان هدف دیگر قرار دهید تا یک حمله مرد میانی موفقیتآمیز IPv6 را با استفاده از مسمومسازی NDP برپا نمایید.
- -o, --only-mitm
- این گزینه ریسه (thread) شنود را غیرفعال کرده و تنها حمله مرد میانی را فعال میسازد. زمانی سودمند است که بخواهید از ettercap برای اجرای حملات mitm و از شنودگر دیگری (مانند wireshark) برای شنود ترافیک استفاده کنید. به یاد داشته باشید که بستهها توسط ettercap هدایت نمیشوند و هسته سیستمعامل مسئولیت هدایت را بر عهده خواهد داشت. فعالسازی قابلیت "ip forwarding" را در هسته سیستمعامل خود به یاد داشته باشید.
- -f, --pcapfilter <FILTER>
- تنظیم
فیلتر ضبط
در
کتابخانه pcap.
قالب آن
مشابه tcpdump(1)
است. به یاد
داشته
باشید که
این نوع
فیلتر،
بستهها را
از روی سیم
شبکه شنود
نخواهد
کرد؛
بنابراین
اگر
میخواهید
حمله mitm
انجام
دهید، ettercap
قادر به
هدایت
بستههای
ربودهشده
نخواهد بود.
این فیلترها برای کاهش بار وارده بر ماژول رمزگشایی ettercap در ترافیکهای سنگین شبکه مفید هستند. - -B, --bridge <IFACE>
- شنود در
حالت
پلشده (BRIDGED sniffing)
شما به دو رابط شبکه نیاز دارید. ettercap تمام ترافیکی را که مشاهده میکند از یکی به دیگری هدایت خواهد کرد. این روش برای حملات مرد میانی در لایه فیزیکی مفید است. از آنجا که غیرفعال (passive) است، کاملاً پنهان بوده و راهی برای کاربر وجود ندارد تا مهاجم را شناسایی کند.
میتوانید تمام ترافیک را فیلتر محتوا کنید به گونهای که گویی یک پیشکار شفاف (transparent proxy) برای «کابل» شبکه هستید. - شنود آفلاین (OFF LINE SNIFFING)
- -r, --read <FILE>
- شنود
آفلاین
با فعال بودن این گزینه، ettercap به جای گرفتن بستهها از روی سیم شبکه، آنها را از یک فایل سازگار با pcap میخواند.
این گزینه زمانی مفید است که فایلی ذخیرهشده از tcpdump یا wireshark داشته باشید و بخواهید تحلیلی (مانند جستجوی گذرواژهها یا انگشتنگاری غیرفعال) روی آن انجام دهید.
بدیهی است که هنگام شنود از یک فایل نمیتوانید از شنود «فعال» (مسمومسازی arp یا پلزدن) استفاده کنید. - -w, --write <FILE>
- نوشتن
بستهها در
یک فایل pcap
این گزینه زمانی کاربرد دارد که مجبور باشید از شنود «فعال» (مسمومسازی arp) در یک شبکه محلی سوییچشده استفاده کنید اما بخواهید بستهها را با tcpdump یا wireshark تحلیل نمایید. میتوانید از این گزینه برای ذخیره بستهها در یک فایل بهره ببرید و سپس آن را در برنامه دلخواه خود بارگذاری کنید.نکته: فایل خروجی، بدون در نظر گرفتن TARGET، تمام بستهها را جمعآوری میکند. این کار به این دلیل است که ممکن است بخواهید حتی پروتکلهایی را که توسط ettercap پشتیبانی نمیشوند ثبت کنید تا بتوانید آنها را با ابزارهای دیگر تحلیل نمایید.
ترفند: میتوانید از گزینه -w همراه با گزینه -r استفاده کنید. بدین ترتیب قادر خواهید بود محموله بستههای ذخیرهشده را فیلتر کنید یا ترافیک وایفای رمزگذاریشده با WEP را رمزگشایی کرده و آنها را در فایل دیگری ذخیره نمایید.
- گزینههای رابطهای کاربری (USER INTERFACES OPTIONS)
- -T, --text
- رابط متنی،
فقط printf ;)
کاملاً تعاملی است؛ در هر لحظه کلید 'h' را فشار دهید تا راهنمایی درباره کارهایی که میتوانید انجام دهید دریافت نمایید. - -q, --quiet
- حالت
بیصدا. این
گزینه تنها
همراه با
رابط کنسول
قابل
استفاده
است. محتوای
بستهها را
چاپ
نمیکند.
زمانی مفید
است که
بخواهید
فایلهای pcap
را به
فایلهای
لاگ ettercap تبدیل
کنید.
مثال:
ettercap -Tq -L dumpfile -r pcapfile
- -s, --script <COMMANDS>
- با این
گزینه
میتوانید
دستورها را
به همان
صورتی که
توسط کاربر
روی
صفحهکلید
تایپ
میشوند به
ettercap ارسال
کنید. بدین
ترتیب
میتوانید
از ettercap در
اسکریپتهای
دلخواه خود
استفاده
کنید. دستور
ویژهای
وجود دارد
که
میتوانید
از طریق این
گزینه صادر
کنید: s(x). این
دستور به
مدت x ثانیه
به خواب
میرود.
مثال:
ettercap -T -s 'lq' فهرست میزبانها را چاپ کرده و خارج میشود.
ettercap -T -s 's(300)olqq' اطلاعات را به مدت ۵ دقیقه جمعآوری کرده، فهرست پروفایلهای محلی را چاپ میکند و خارج میشود. - -C, --curses
-
رابط کاربری متنی مبتنی بر Ncurses. برای توضیحات کامل به ettercap_curses(8) مراجعه فرمایید. - -G, --gtk
-
رابط کاربری زیبای GTK2 (با تشکر از Daten...). - -D, --daemonize
-
اجرا به صورت دیمن (پسزمینه). این گزینه ettercap را از ترمینال کنترلکننده فعلی جدا کرده و آن را به عنوان یک دیمن قرار میدهد. میتوانید این ویژگی را با گزینه "log" ترکیب کنید تا تمام ترافیک را در پسزمینه لاگ بگیرید. اگر دیمن به هر دلیلی با خطا مواجه شود، فایل "./ettercap_daemonized.log" را ایجاد خواهد کرد که خطای ثبتشده توسط ettercap در آن گزارش میشود. علاوه بر این، اگر میخواهید فرآیند دیمن را به طور کامل اشکالزدایی کنید، پیشنهاد میشود ettercap را در حالت اشکالزدایی (debug mode) مجدداً کامپایل نمایید. - گزینههای عمومی (GENERAL OPTIONS)
- -b, --broadcast
- به Ettercap اعلام میکند که بستههای دریافتی از آدرس برودکست (پخش همگانی) را نیز پردازش کند.
- -i, --iface <IFACE>
- استفاده از رابط شبکه <IFACE> به جای رابط پیشفرض. رابط میتواند پیکربندینشده باشد (نیازمند libnet >= 1.1.2)، اما در این حالت نمیتوانید از حملات MITM استفاده کنید و باید پرچم unoffensive را تنظیم نمایید.
- -I, --iflist
- این گزینه فهرستی از تمام رابطهای شبکه موجود را که میتوان درون ettercap استفاده کرد چاپ میکند. این گزینه بهویژه در ویندوز که نام رابط شبکه به روشنی یونیکس/لینوکس نیست، بسیار سودمند است.
- -Y, --secondary <interface list>
- تعیین فهرستی از رابطهای ثانویه (یا رابط ثانویه تکی) برای گرفتن بستهها.
- -A, --address <ADDRESS>
- استفاده از آدرس <ADDRESS> به جای آدرس شناساییشده خودکار برای رابط شبکه جاری. این گزینه زمانی مفید است که رابط شبکهای با چندین آدرس IP داشته باشید.
- -n, --netmask <NETMASK>
- استفاده از ماسک شبکه <NETMASK> به جای مقدار مرتبط با رابط شبکه جاری. این گزینه زمانی کاربرد دارد که کارت شبکهای با ماسک شبکه کلاس B داشته باشید و بخواهید (با پویش arp) تنها یک کلاس C را پویش کنید.
- -R, --reversed
- معکوس کردن تطبیق در انتخاب TARGET. به معنای not(TARGET) یا تمام موارد به جز TARGET انتخابشده است.
- -t, --proto <PROTO>
- تنها
بستههای
پروتکل PROTO را
شنود
میکند
(پیشفرض TCP + UDP
است).
زمانی مفید است که بخواهید از طریق مشخصات TARGET پورتی را انتخاب کنید اما بخواهید بین tcp یا udp تمایز قائل شوید.
مقدار PROTO میتواند "tcp"، "udp" یا "all" برای هر دو باشد. - -6, --ip6scan
- ارسال
کاوشگرهای
ICMPv6 برای کشف
گرههای
فعال IPv6 روی
پیوند شبکه.
این گزینه
یک درخواست
پینگ به
آدرس all-nodes
میفرستد
تا
میزبانهای
فعال IPv6 را به
پاسخگویی
وادارد. اگر
سعی در مخفی
ماندن
دارید
نباید از
این گزینه
استفاده
کنید؛
بنابراین
این گزینه
اختیاری
است.
نکته: این گزینه تنها در صورتی در دسترس است که پشتیبانی از IPv6 فعال شده باشد.
- -z, --silent
- پویش اولیه
ARP شبکه محلی
را انجام
ندهد.
نکته: در این حالت فهرست میزبانها را نخواهید داشت، بنابراین نمیتوانید از قابلیت مسمومسازی چندگانه استفاده کنید. تنها میتوانید دو میزبان را برای حمله مسمومسازی ARP انتخاب کرده و آنها را از طریق TARGETs مشخص نمایید.
- -p, --nopromisc
- به طور معمول، ettercap رابط شبکه را در حالت بیقید (promisc) قرار میدهد تا تمام ترافیک روی سیم شبکه را شنود کند. اگر میخواهید فقط اتصالات مربوط به خودتان را شنود کنید، از این پرچم برای فعال نکردن حالت بیقید استفاده نمایید.
- -S, --nosslmitm
- به طور معمول، ettercap برای رهگیری ترافیک https اقدام به جعل گواهیهای SSL میکند. این گزینه آن رفتار را غیرفعال میسازد.
- -u, --unoffensive
- هر بار که ettercap
شروع به کار
میکند،
ارسال بسته
در سطح هسته
(ip forwarding) را
غیرفعال
کرده و خود
شروع به
هدایت
بستهها
میکند. این
گزینه مانع
از انجام
این کار
میشود،
بنابراین
مسئولیت
هدایت ip بر
عهده هسته
باقی
میماند.
این گزینه زمانی مفید است که بخواهید چندین نمونه از ettercap را به صورت همزمان اجرا کنید. شما یک نمونه (نمونه بدون گزینه -u) خواهید داشت که بستهها را هدایت میکند، و سایر نمونهها کارهای خود را بدون هدایت بستهها انجام میدهند. در غیر این صورت بستههای تکراری دریافت خواهید کرد.
همچنین این گزینه ایجاد داخلی نشستها را برای هر اتصال غیرفعال میکند که باعث افزایش کارایی میشود، اما امکان ویرایش در لحظه بستهها را نخواهید داشت.
اگر میخواهید از یک حمله مرد میانی استفاده کنید، باید از یک نمونه جداگانه بهره ببرید.
اگر رابط شبکه پیکربندینشده باشد (بدون آدرس آیپی)، باید از این گزینه استفاده کنید.
همچنین زمانی که میخواهید ettercap را روی درگاه (gateway) اجرا کنید این گزینه سودمند است؛ مانع از غیرفعال شدن هدایت شده و درگاه به درستی بستهها را مسیریابی خواهد کرد. - -j, --load-hosts <FILENAME>
- میتواند برای بارگذاری فهرست میزبانها از فایلی که با گزینه -k ایجاد شده استفاده شود (پایین را ببینید).
- -k, --save-hosts <FILENAME>
- فهرست میزبانها را در یک فایل ذخیره میکند. زمانی مفید است که میزبانهای زیادی دارید و نمیخواهید هر بار هنگام راهاندازی ettercap یک طوفان ARP در شبکه ایجاد کنید. به سادگی از این گزینه استفاده کرده و فهرست را در یک فایل ذخیره نمایید، سپس برای بارگذاری اطلاعات از آن، از گزینه -j <filename> استفاده کنید.
- -P, --plugin <PLUGIN>
- اجرای
افزونه
انتخابی PLUGIN.
بسیاری از
افزونهها
نیازمند
تعیین هدف
هستند،
مانند
همیشه از TARGET
استفاده
کنید. برای
انتخاب
چندین
افزونه،
این
پارامتر را
چند بار
تکرار کنید.
در حالت کنسول (گزینه -C)، افزونههای مستقل اجرا شده و سپس برنامه خارج میشود. افزونههای قلاب (Hook) فعال شده و شنود عادی انجام میگیرد.
برای مشاهده فهرستی از افزونههای خارجی موجود، از کلمه "list" (بدون گیومه) به عنوان نام افزونه استفاده کنید (مانند ./ettercap -P list).نکته: همچنین میتوانید افزونهها را مستقیماً از رابطهای کاربری فعال کنید (همواره با فشردن "h" راهنمای درونبرنامهای را دریافت نمایید).
اطلاعات دقیقتر درباره افزونهها و نحوه نوشتن افزونههای اختصاصی در صفحه راهنمای ettercap_plugins(8) آمده است.
- --plugin-list <PLUGIN1>[,<PLUGIN2>,...]
- به جای استفاده مکرر از -P plugin، میتوان از --plugin-list همراه با فهرستی از افزونهها که با کاما و بدون فاصله از هم جدا شدهاند استفاده کرد (مانند ./ettercap --plugin-list plugin1,plugin2).
- -F, --filter <FILE>
- بارگذاری
فیلتر از
فایل <FILE>. این
فیلتر باید
با etterfilter(8)
کامپایل
شده باشد.
این ابزار
کمکی،
اسکریپت
فیلتر را
کامپایل
کرده و یک
فایل فیلتر
باینری
سازگار با ettercap
تولید
میکند.
برای اطلاع
از فهرست
توابعی که
میتوانید
درون
اسکریپت
فیلتر به
کار ببرید،
صفحه
راهنمای etterfilter(8)
را مطالعه
کنید. با
مشخص کردن
مکرر این
گزینه
میتوان هر
تعداد
فیلتر را
بارگذاری
نمود؛
بستهها به
ترتیبی که
در خط فرمان
مشخص
شدهاند از
هر فیلتر
عبور داده
میشوند.
همچنین
میتوانید
یک اسکریپت
را بدون
فعال کردن
آن، با
افزودن :0 به
انتهای نام
فایل
بارگذاری
نمایید.
نکته: این فیلترها با فیلترهایی که با --pcapfilter تنظیم میشوند متفاوت هستند. فیلتر ettercap یک فیلتر محتوا است و میتواند محموله یک بسته را قبل از هدایت آن دستکاری کند. فیلترهای Pcap تنها برای گرفتن بستههایی خاص به کار میروند.
نکته: میتوانید از فیلترها روی فایلهای pcapfile برای دستکاری آنها و ذخیره در فایلی دیگر استفاده کنید، اما در این حالت باید مراقب کاری که انجام میدهید باشید، زیرا ettercap چکسامها را دوباره محاسبه نخواهد کرد و بستههای فراتر از mtu (snaplen) را تفکیک نمیکند یا مواردی از این دست. - -W, --wifi-key <KEY>
- میتوانید
کلیدی را
برای
رمزگشایی
بستههای
وایفای (WEP
یا WPA) مشخص
کنید. تنها
بستههایی
که با
موفقیت
رمزگشایی
شوند به
پشته
رمزگشاها
فرستاده
میشوند و
از سایر
بستهها با
نمایش یک
پیام
صرفنظر
خواهد شد.
این پارامتر دارای نحو زیر است: type:bits:t:string. که در آن 'type' میتواند wep، wpa-pws یا wpa-psk باشد؛ 'bits' طول کلید بر حسب بیت است (64، 128 یا 256)؛ 't' نوع رشته است ('s' برای رشته متنی و 'p' برای عبارت عبور). مقدار 'string' میتواند یک رشته متنی یا توالیهای اسکیپشده هگزادسیمال باشد.مثال:
--wifi-key wep:128:p:secret
--wifi-key wep:128:s:ettercapwep0
--wifi-key 'wep:64:s:\x01\x02\x03\x04\x05'
--wifi-key wpa:pwd:ettercapwpa:ssid
--wifi-key wpa:psk:
663eb260e87cf389c6bd7331b28d82f5203b0cae4e315f9cbb7602f3236708a6 - -a, --config <CONFIG>
- بارگذاری یک فایل پیکربندی جایگزین به جای فایل پیشفرض در /etc/etter.conf. این گزینه زمانی مفید است که فایلهای از پیش پیکربندیشده متعددی برای شرایط گوناگون داشته باشید.
- --certificate <FILE>
- به Ettercap اعلام میکند که از فایل گواهی تعیینشده برای حمله مرد میانی SSL استفاده کند.
- --private-key <FILE>
- به Ettercap اعلام میکند که از فایل کلید اختصاصی تعیینشده برای حمله مرد میانی SSL استفاده کند.
- گزینههای نمایش (VISUALIZATION OPTIONS)
- -e, --regex <REGEX>
- تنها
بستههایی
را پردازش
کند که با
عبارت
باقاعده
مطابقت
دارند.
این گزینه همراه با -L مفید است. تنها بستههایی را لاگ میگیرد که با عبارت باقاعده پوزیکس REGEX مطابقت داشته باشند.
این گزینه حتی بر نحوه نمایش بستههای شنودشده نیز تأثیر میگذارد. در صورت تنظیم آن، تنها بستههای منطبق با عبارت باقاعده نمایش داده خواهند شد. - -V, --visual <FORMAT>
- استفاده از
این گزینه
برای تنظیم
روش نمایش
بستههایی
که باید
نشان داده
شوند.
مقدار FORMAT میتواند یکی از موارد زیر باشد:
- hex
- چاپ
بستهها در
قالب
هگزادسیمال
(شانزدهشانزدهی).
مثال:
رشته "HTTP/1.1 304 Not Modified" تبدیل میشود به:
0000: 4854 5450 2f31 2e31 2033 3034 204e 6f74 HTTP/1.1 304 Not 0010: 204d 6f64 6966 6965 64 Modified
- ascii
- تنها نویسههای «قابل چاپ» را چاپ میکند و سایر نویسهها به صورت نقطه '.' نمایش داده میشوند.
- text
- تنها نویسههای «قابل چاپ» را چاپ کرده و سایر نویسهها را نادیده میگیرد.
- ebcdic
- تبدیل یک متن EBCDIC به ASCII.
- html
- حذف تمام
برچسبهای
html از متن. یک
برچسب، هر
رشتهای
است که بین <
و > قرار
دارد.
مثال:
<title>This is the title</title>, but the following <string> will not be displayed.
تبدیل میشود به:
This is the title, but the following will not be displayed.
- utf8
- چاپ بستهها در قالب UTF-8. کدگذاری مورد استفاده هنگام انجام تبدیل در فایل etter.conf(5) اعلام شده است.
- -d, --dns
- تفکیک و
تبدیل
آدرسهای
آیپی به
نامهای
میزبان (DNS resolution).
نکته: این کار ممکن است در حین ثبت اطلاعات غیرفعال، سرعت ettercap را به شدت کاهش دهد. هر بار که میزبان جدیدی پیدا میشود، یک پرسوجو به dns فرستاده میشود. Ettercap برای افزایش سرعت، حافظه موقتی از میزبانهای از قبل تفکیکشده نگه میدارد، اما میزبانهای جدید نیازمند پرسوجوی جدیدی هستند و ممکن است پاسخگویی dns برای یک میزبان ناشناخته تا ۲ یا ۳ ثانیه زمان ببرد.
نکته کاربردی: ettercap پاسخهای dns را که شنود میکند در جدول تفکیک ذخیره مینماید؛ بنابراین حتی اگر تعیین کنید که نام میزبانها تفکیک نشوند، برخی از آنها تفکیک خواهند شد چرا که پاسخ آنها پیشتر شنود شده است. میتوانید به آن مانند یک تفکیک dns غیرفعال و رایگان نگاه کنید... ;)
- -E, --ext-headers
- چاپ هدرهای گسترشیافته برای هر بسته نمایشدادهشده (مانند آدرسهای مک).
- -Q, --superquiet
- حالت
فوقالعاده
ساکت (Super quiet). از
چاپ
نامهای
کاربری و
گذرواژهها
به محض
جمعآوری
خودداری
میکند.
آنها را
تنها در
نمایه
میزبانها
ذخیره
مینماید.
میتواند
برای اجرای
ettercap در حالت
صرفاً متنی
بدون این که
با انبوه
پیامهای
کالبدشکافها
(dissectors) روبرو
شوید مفید
باشد. هنگام
استفاده از
افزونهها
نیز سودمند
است زیرا
فرآیند
شنود
همواره
فعال است و
تمام
اطلاعات
جمعآوریشده
را چاپ
خواهد کرد،
با این
گزینه
میتوانید
از نمایش
این
پیامها
جلوگیری
نمایید.
نکته: این گزینه به صورت خودکار گزینه -q را نیز فعال میکند.مثال:
ettercap -TzQP finger /192.168.0.1/22
- گزینههای ثبت وقایع و لاگگیری (LOGGING OPTIONS)
- -L, --log <LOGFILE>
- ثبت تمام
بستهها در
فایلهای
دودویی
(باینری).
این
فایلها را
میتوان با
ابزار etterlog(8)
برای
استخراج
دادههای
خوانا توسط
انسان
پردازش کرد.
با این
گزینه،
تمام
بستههای
شنودشده
توسط ettercap به
همراه تمام
اطلاعات
غیرفعال
(اطلاعات
میزبان +
نام کاربری
و گذرواژه)
که
میتواند
جمعآوری
کند، ثبت
خواهند شد.
با دریافت
یک LOGFILE، ابزار
ettercap فایلهای
LOGFILE.ecp (برای
بستهها) و
LOGFILE.eci (برای
اطلاعات) را
ایجاد
خواهد کرد.
نکته: اگر این گزینه را در خط فرمان مشخص کنید نیازی نیست نگران مجوزها باشید، چرا که فایل لاگ در مرحله راهاندازی (با دسترسیهای بالا) باز میشود. اما اگر گزینه log را پس از شروع ettercap فعال کنید، باید در پوشهای قرار داشته باشید که uid = 65535 یا uid = EC_UID مجوز نوشتن در آن را داشته باشد.
نکته: فایلهای لاگ را میتوان با الگوریتم deflate و با استفاده از گزینه -c فشردهسازی کرد.
- -l, --log-info <LOGFILE>
- بسیار شبیه به -L است اما تنها اطلاعات غیرفعال + نامهای کاربری و گذرواژهها را برای هر میزبان ثبت میکند. نام فایل LOGFILE.eci خواهد بود.
- -m, --log-msg <LOGFILE>
- تمام پیامهای کاربری چاپشده توسط ettercap را در <LOGFILE> ذخیره میکند. این گزینه زمانی که از ettercap در حالت دیمن استفاده میکنید یا میخواهید تمام پیامها را ردیابی کنید سودمند است. در واقع، برخی از کالبدشکافها پیامهایی را چاپ میکنند اما اطلاعات آنها در جایی ذخیره نمیشود، بنابراین این تنها راه برای ثبت و ردیابی آنها است.
- -c, --compress
- فشردهسازی فایل لاگ با الگوریتم gzip هنگام ذخیرهسازی آن. ابزار etterlog(8) قادر است با هر دو نوع فایلهای فشرده و غیرفشرده لاگ کار کند.
- -o, --only-local
- تنها
اطلاعات
نمایههای
متعلق به
میزبانهای
شبکه محلی (LAN)
را ذخیره
میکند.
نکته: این گزینه تنها بر نمایههای جمعآوریشده در حافظه اعمال میشود. هنگام ثبت در یک فایل، اطلاعات همه میزبانها لاگ خواهد شد. اگر میخواهید آنها را تفکیک کنید، از گزینه مرتبط در etterlog(8) بهره ببرید.
- -O, --only-remote
- تنها اطلاعات نمایههای متعلق به میزبانهای راه دور (remote) را ذخیره میکند.
- گزینههای استاندارد (STANDARD OPTIONS)
- -v, --version
- چاپ نگارش و خروج.
- -h, --help
- چاپ صفحه راهنما به همراه خلاصهای کوتاه از گزینههای موجود.
مثالها (EXAMPLES)
در اینجا چند مثال از نحوه استفاده از ettercap آورده شده است.
- ettercap -Tp
-
استفاده از رابط کنسول بدون قرار دادن کارت شبکه در حالت بیقید (promisc). تنها ترافیک مربوط به خودتان را مشاهده خواهید کرد.
- ettercap -Tzq
-
استفاده از رابط کنسول، بدون پویش ARP در شبکه و در حالت ساکت. محتوای بستهها نمایش داده نخواهد شد، اما نام کاربری و گذرواژهها و همچنین سایر پیامها نمایش داده میشوند.
- ettercap -T -j /tmp/victims -M arp /10.0.0.1-7/ /10.0.0.10-20/
-
فهرست میزبانها را از /tmp/victims بارگذاری کرده و حمله مسمومسازی ARP را علیه دو هدف انجام میدهد. این فهرست با اهداف ترکیب شده و فهرست حاصل برای مسمومسازی ARP استفاده میشود.
- ettercap -T -M arp // //
-
انجام حمله مسمومسازی ARP علیه تمام میزبانهای موجود در شبکه محلی. بسیار مراقب باشید!!
- ettercap -T -M arp:remote /192.168.1.1/ /192.168.1.2-10/
-
انجام مسمومسازی ARP علیه درگاه و میزبانهای موجود در شبکه محلی بین ۲ و ۱۰. گزینه 'remote' برای شنود ترافیک راه دوری که میزبانها از طریق درگاه عبور میدهند ضروری است.
- ettercap -Tzq //110
-
تنها شنود پروتکل pop3 از تمام میزبانها.
- ettercap -Tzq /10.0.0.1/21,22,23
-
شنود اتصالات telnet، ftp و ssh به آدرس 10.0.0.1.
- ettercap -P list
-
چاپ فهرستی از تمام افزونههای موجود.
فایلها (FILES)
- ~/.config/ettercap_gtk
-
اطلاعات ماندگار بین نشستها (مانند جایگاه پنجره) را ذخیره میکند.
نویسندگان اصلی (ORIGINAL AUTHORS)
Alberto Ornaghi (ALoR) <alor@users.sf.net>
Marco Valleri (NaGA) <naga@antifork.org>
سرپرستان پروژه (PROJECT STEWARDS)
Emilio Escobar (exfil) <eescobar@gmail.com>
Eric Milam (Brav0Hax) <jbrav.hax@gmail.com>
توسعهدهندگان رسمی (OFFICIAL DEVELOPERS)
Mike Ryan (justfalter) <falter@gmail.com>
Gianfranco Costamagna (LocutusOfBorg) <costamagnagianfranco@yahoo.it>
Antonio Collarino (sniper) <anto.collarino@gmail.com>
Ryan Linn <sussuro@happypacket.net>
Jacob Baines <baines.jacob@gmail.com>
مشارکتکنندگان (CONTRIBUTORS)
Dhiru Kholia (kholia) <dhiru@openwall.com>
Alexander Koeppe (koeppea) <format_c@online.de>
Martin Bos (PureHate) <purehate@backtrack.com>
Enrique Sanchez
Gisle Vanem <giva@bgnett.no>
Johannes Bauer <JohannesBauer@gmx.de>
Daten (Bryan Schneiders) <daten@dnetc.org>
همچنین ببینید (SEE ALSO)
etter.conf(5) ettercap_curses(8) ettercap_plugins(8) etterlog(8) etterfilter(8) ettercap-pkexec(8)
دسترسپذیری (AVAILABILITY)
گیت (GIT)
git clone git://github.com/Ettercap/ettercap.git
یا
git clone https://github.com/Ettercap/ettercap.git
اشکالات (BUGS)
نرمافزار
ما هرگز باگ
ندارد.
فقط
قابلیتهای
تصادفی
تولید
میکند. ;)
باگهای شناختهشده (KNOWN-BUGS)
- ابزار ettercap بستههای تکهتکه شده (fragmented) را مدیریت نمیکند... تنها نخستین قطعه توسط اسنیفر نمایش داده خواهد شد. با این حال تمام قطعات به درستی به مقصد هدایت میشوند.
+ لطفاً گزارش باگها، وصلهها یا پیشنهادات خود را به نشانی <ettercap-betatesting@lists.sourceforge.net> ارسال کنید یا به https://github.com/Ettercap/ettercap/issues مراجعه فرمایید.
+ برای گزارش اشکال، دستورالعملهای موجود در فایل README.BUGS را دنبال کنید.
تاریخچه لغوی (PHILOLOGICAL HISTORY)
«حتی اگر از هوش ناچیزی برخوردار باشند، بیرحم و باهوشند...» این توصیف اِترکَپ (Ettercap) است، هیولایی در بازی نقشآفرینی Advanced Dungeons & Dragons.
نام "ettercap" به این دلیل انتخاب شد که با عبارت "ethercap" همآوایی دارد که به معنای «گرفتن بستههای اترنت» (ethernet capture، کاری که ettercap در واقع انجام میدهد) است و همچنین به این دلیل که چنین هیولاهایی زهری قدرتمند دارند... و میدانید، مسمومسازی arp... ;)
ارباب حلقهها (The Lord Of The (Token)Ring)
(یاران بسته / the fellowship of the packet)
"One Ring to link them all, One Ring to ping them, one Ring to bring them all and in the darkness sniff them."
(«حلقهای برای پیوند همگان، حلقهای برای پینگ همگان، حلقهای برای گرد آوردن همگان و در تاریکی شنودشان.»)
کلام آخر (Last words)
«امروزه برنامهنویسی مسابقهای است میان مهندسان نرمافزار که تلاش میکنند برنامههای بزرگتر و خطاناپذیرتری بسازند، و کائنات که در تلاش است احمقهای بزرگتر و بهتری تولید کند. تا کنون، کائنات برنده این مسابقه بوده است.» - ریچ کوک
| ettercap 0.8.4.1 |