Texnik savollar. O'rtadagi odam hujumlarini aniqlash (O'rtadagi odam, MitM hujumlari) O'rtadagi odam nima

Uy / Muzlab qoladi

Ushbu maqolada biz o'rtadagi odam hujumlari nazariyasini va ushbu turdagi hujumlarning oldini olishga yordam beradigan ba'zi amaliy fikrlarni tushunishga harakat qilamiz. Bu bizga bunday tajovuzlar bizning shaxsiy hayotimizga ta'sir qilish xavfini tushunishga yordam beradi, chunki MitM hujumlari bizga aloqalarga aralashish va suhbatlarimizni tinglash imkonini beradi.

Internet qanday ishlashini tushunish

O'rtadagi odam hujumi tamoyilini tushunish uchun, avvalo, Internetning o'zi qanday ishlashini tushunish kerak. O'zaro ta'sirning asosiy nuqtalari: mijozlar, marshrutizatorlar, serverlar. Mijoz va server o'rtasidagi eng keng tarqalgan aloqa protokoli Hypertext Transfer Protocol (HTTP) hisoblanadi. Brauzer, elektron pochta, lahzali xabarlar yordamida Internetda kezish - bularning barchasi HTTP orqali amalga oshiriladi.

Brauzeringizning manzil satrini kiritganingizda, mijoz (siz) veb-sahifani ko'rsatish uchun serverga so'rov yuboradi. Paket (HTTP GET so'rovi) bir nechta routerlar orqali serverga uzatiladi. Keyin server mijozga yuboriladigan va uning monitorida ko'rsatiladigan veb-sahifa bilan javob beradi. HTTP xabarlari yuborilishi kerak xavfsiz rejim maxfiylik va anonimlikni ta'minlash.

Shakl 1. Mijoz va server o'zaro ta'siri

Aloqa protokolini himoya qilish

Xavfsiz aloqa protokoli quyidagi xususiyatlarning har biriga ega bo'lishi kerak:

  1. Maxfiylik- faqat mo'ljallangan oluvchi xabarni o'qiy oladi.
  2. Haqiqiylik- o'zaro aloqada bo'lgan tomonlarning shaxsi isbotlangan.
  3. Butunlik- xabar tranzitda o'zgartirilmaganligini tasdiqlash.

Agar ushbu qoidalardan birortasi bajarilmasa, butun protokol buziladi.

HTTP protokoli orqali o'rtadagi odam hujumi

Tajovuzkor ARP spoofing deb ataladigan texnikadan foydalangan holda o'rtadagi odam hujumini osongina amalga oshirishi mumkin. Sizning ichingizdagi har kim Wi-Fi tarmoqlari sizga soxta ARP paketini yuborishi mumkin, bu sizning barcha trafikingizni bilmasdan marshrutizatoringiz o'rniga tajovuzkor orqali yuborishingizga olib keladi.

Shundan so'ng, tajovuzkor trafikni to'liq nazorat qiladi va har ikki yo'nalishda yuborilgan so'rovlarni kuzatishi mumkin.

Shakl 2. O'rtadagi odam hujumi sxemasi


Bunday hujumlarning oldini olish uchun HTTP protokolining xavfsiz versiyasi yaratildi. Transport Layer Security (TLS) va undan oldingi Secure Socket Layer (SSL) kriptografik protokollar boʻlib, tarmoq orqali maʼlumotlarni uzatish xavfsizligini taʼminlaydi. Shuning uchun xavfsiz protokol HTTPS deb nomlanadi. Xavfsiz protokol qanday ishlashini brauzeringizning manzil satriga kiritish orqali ko'rishingiz mumkin (https-dagi S ga e'tibor bering).

Yomon amalga oshirilgan SSL-ga o'rtadagi odam hujumi

Zamonaviy SSL yaxshi shifrlash algoritmidan foydalanadi, lekin u to'g'ri amalga oshirilmagan bo'lsa, bu muhim emas. Agar xaker so'rovni to'xtata olsa, ular so'ralgan URLdan "S" ni olib tashlash orqali uni o'zgartirishi mumkin va shu bilan SSLni chetlab o'tadi.

Bunday ushlab turish va so'rovni o'zgartirishni ko'rish mumkin. Misol uchun, agar siz https://login.yahoo.com/ so'rovi bo'lsa va javob http://login.yahoo.com/ bo'lsa, bu shubhalarni kuchaytirishi kerak. Yozish vaqtida ushbu hujum aslida xizmatda ishlaydi elektron pochta Yahoo.

Shakl 3. So'rovni ushlab turish va o'zgartirish


Bunday hujumning oldini olish uchun serverlar HTTPS protokoli orqali majburiy xavfsiz ulanishni ta'minlaydigan HTTP qat'iy transport xavfsizligini (HSTS) amalga oshirishi mumkin. Bunday holda, agar tajovuzkor URL manzilidan "S" ni olib tashlash orqali so'rovni o'zgartirsa, server hali ham 302 yo'naltirish bilan foydalanuvchini xavfsiz protokolga ega sahifaga yo'naltiradi.

Shakl 4. HSTS ishlash diagrammasi


SSL-ni amalga oshirishning bu usuli boshqa turdagi hujumlarga nisbatan zaifdir - buzg'unchi serverga SSL ulanishini yaratadi, lekin foydalanuvchini HTTP-dan foydalanishga majburlash uchun turli xil fokuslardan foydalanadi.

Shakl 5. HSTS hujumi sxemasi


Bunday hujumlarning oldini olish uchun zamonaviy brauzerlar Chrome, Firefox va Tor kabi saytlarni HSTS yordamida kuzatib boradi va ularga SSL orqali mijoz tomonidan ulanishni majbur qiladi. Bunday holda, o'rtadagi odam hujumini amalga oshirayotgan tajovuzkor qurbon bilan SSL ulanishini yaratishi kerak bo'ladi.

Shakl 6. Buzg'unchi jabrlanuvchi bilan SSL ulanishini o'rnatadigan hujum namunasi


Foydalanuvchiga SLL ulanishini ta'minlash uchun tajovuzkor server sifatida qanday harakat qilishni bilishi kerak. Keling, SSL ning texnik jihatlarini tushunaylik.

SSL haqida tushuncha

Xaker nuqtai nazaridan, har qanday aloqa protokolini buzish yuqorida sanab o'tilgan komponentlar (maxfiylik, haqiqiylik va yaxlitlik) o'rtasidagi zaif aloqani topishga to'g'ri keladi.

SSL assimetrik shifrlash algoritmidan foydalanadi. Simmetrik shifrlash bilan bog'liq muammo shundaki, xuddi shu kalit ma'lumotlarni shifrlash va parolini ochish uchun ishlatiladi, bu yondashuv Internet protokollari uchun amal qilmaydi, chunki tajovuzkor bu kalitni kuzatishi mumkin.

Asimmetrik shifrlash har bir tomon uchun 2 ta kalitni o'z ichiga oladi: umumiy kalit, shifrlash uchun ishlatiladi va shaxsiy kalit, ma'lumotlar shifrini ochish uchun ishlatiladi.

Rasm 7. Ochiq va shaxsiy kalitlar ishlaydi

SSL xavfsiz aloqa uchun zarur bo'lgan uchta xususiyatni qanday ta'minlaydi?

  1. Ma'lumotlarni shifrlash uchun assimetrik kriptografiya qo'llanilganligi sababli, SSL shaxsiy ulanishni ta'minlaydi. Ushbu shifrlashni buzish unchalik oson emas va aniqlanmaydi.
  2. Server mijozga sertifikat organi - ishonchli uchinchi tomon tomonidan berilgan SSL sertifikatini yuborish orqali o'zining qonuniyligini tasdiqlaydi.

Agar tajovuzkor qandaydir tarzda sertifikat olishga muvaffaq bo'lsa, ular "o'rtadagi odam" hujumiga eshikni ochishi mumkin. Shunday qilib, u 2 ta ulanishni yaratadi - server bilan va qurbon bilan. Bu holda server tajovuzkorni oddiy mijoz deb hisoblaydi va jabrlanuvchi tajovuzkorni aniqlashning imkoni yo'q, chunki u server ekanligini tasdiqlovchi sertifikat taqdim etgan.

Sizning xabarlaringiz shifrlangan shaklda keladi va keladi, lekin ular kiberjinoyatchining kompyuteri orqali zanjir bo'ylab boradi, u erda u to'liq nazorat qiladi.

Shakl 8. Agar tajovuzkor sertifikatga ega bo'lsa, hujum namunasi


Agar tajovuzkor jabrlanuvchining brauzerini buzish imkoniyatiga ega bo'lsa, sertifikat soxtalashtirilishi shart emas. Bunday holda, u o'z-o'zidan imzolangan sertifikatni kiritishi mumkin, bu sukut bo'yicha ishonchli bo'ladi. O'rtadagi odam hujumlarining aksariyati shunday amalga oshiriladi. Keyinchalik murakkab holatlarda xaker boshqa yo'lni tanlashi kerak - sertifikatni soxtalashtirish.

Sertifikat idorasi muammolari

Server tomonidan yuborilgan sertifikat sertifikatlash organi tomonidan chiqarilgan va imzolangan. Har bir brauzerda ishonchli sertifikat organlari ro'yxati mavjud va siz ularni qo'shishingiz yoki o'chirishingiz mumkin. Muammo shundaki, agar siz yirik vakolatli organlarni olib tashlashga qaror qilsangiz, ushbu organlar tomonidan imzolangan sertifikatlardan foydalanadigan saytlarga kira olmaysiz.

Sertifikatlar va sertifikat organlari har doim HTTPS ulanishidagi eng zaif havola bo'lib kelgan. Har bir narsa to'g'ri amalga oshirilgan bo'lsa ham va har bir sertifikat organi mustahkam vakolatga ega bo'lsa ham, ko'plab uchinchi tomonlarga ishonishingiz kerakligi bilan kelishish hali ham qiyin.

Bugungi kunda sertifikatlar berishga qodir 650 dan ortiq tashkilotlar mavjud. Agar tajovuzkor ulardan birortasini buzib kirsa, u xohlagan sertifikatlarini oladi.

Hatto bitta sertifikat organi - VeriSign mavjud bo'lganda ham muammo bor edi - "o'rtadagi odam" hujumlarining oldini olishi kerak bo'lgan odamlar ushlash xizmatlarini sotishgan.

Shuningdek, sertifikat organlarining xakerlik hujumi tufayli ko'plab sertifikatlar yaratilgan. Maqsadli foydalanuvchini soxta sertifikatlarga ishonish uchun aldash uchun turli xil texnika va hiylalar qo'llanilgan.

Sud tibbiyoti

Buzg'unchi soxta ARP paketlarini yuborgani uchun tajovuzkorning IP-manzilini ko'rib bo'lmaydi. Buning o'rniga, tarmoqdagi har bir qurilmaga xos bo'lgan MAC manziliga e'tibor qaratishingiz kerak. Agar siz marshrutizatoringizning MAC manzilini bilsangiz, u haqiqatan ham routeringiz yoki tajovuzkor ekanligini bilish uchun uni standart shlyuzning MAC manzili bilan solishtirishingiz mumkin.

Masalan, Windows operatsion tizimida ipconfig buyrug'idan foydalanishingiz mumkin buyruq qatori(CMD) standart shlyuz IP manzilingizni ko'rish uchun (oxirgi qator):

Shakl 9. ipconfig buyrug'idan foydalanish


Keyin ushbu shlyuzning MAC manzilini bilish uchun arp –a buyrug'idan foydalaning:

10-rasm. arp –a buyrug'idan foydalanish


Ammo hujumni payqashning yana bir usuli bor - agar siz u boshlangan vaqtda tarmoq faoliyatini kuzatayotgan bo'lsangiz va ARP paketlarini ko'rsangiz. Misol uchun, bu maqsadda Wireshark-dan foydalanishingiz mumkin, bu dastur standart shlyuzning MAC manzili o'zgarganligi haqida sizni xabardor qiladi.

Eslatma: Agar tajovuzkor MAC manzillarini to'g'ri soxta qilsa, uni kuzatish katta muammoga aylanadi.

Xulosa

SSL - bu tajovuzkorni hujumni amalga oshirish uchun ko'p ishlarni bajarishga majbur qiladigan protokol. Ammo bu sizni davlat tomonidan homiylik qilinadigan hujumlardan yoki malakali xakerlik tashkilotlaridan himoya qilmaydi.

Foydalanuvchining vazifasi soxta sertifikat kiritilishining oldini olish uchun brauzer va kompyuterni himoya qilishdir (juda keng tarqalgan texnika). Shuningdek, ro'yxatga e'tibor qaratish lozim ishonchli sertifikatlar va o'zingiz ishonmaydiganlarni olib tashlang.

O'rtadagi odam hujumi vositachi sifatida trafikka kirishga qaratilgan turli usullarning umumiy nomidir. Ushbu usullarning xilma-xilligi tufayli barcha mumkin bo'lgan vaziyatlarda ishlaydigan ushbu hujumlarni aniqlash uchun yagona vositani amalga oshirish muammoli. Masalan, mahalliy tarmoqqa odam-in-the-middle hujumida odatda ARP spoofing (zaharlanish) qo'llaniladi. O'rtada hujumni aniqlash vositalarining ko'pchiligi Ethernet manzillari juftligidagi o'zgarishlarni kuzatadi/yoki ARP so'rovlarini/javoblarini passiv kuzatish orqali shubhali ARP faoliyati haqida xabar beradi. Ammo agar bu hujum zararli konfiguratsiya qilingan proksi-server, VPN yoki ARP zaharlanishidan foydalanmaydigan boshqa variantlarda ishlatilsa, bunday vositalar yordamsiz bo'ladi.

Ushbu bo'limning maqsadi o'rtadagi odam hujumlarini aniqlashning ba'zi usullarini, shuningdek, MitM hujumi nishonga olinganligini aniqlash uchun mo'ljallangan ba'zi vositalarni ko'rib chiqishdir. Turli metodologiyalar va amalga oshirish stsenariylari tufayli 100% aniqlash kafolatlanmaydi.

1. Yo'l harakati modifikatsiyasini aniqlash

Yuqorida aytib o'tilganidek, "o'rtadagi odam" hujumlarida har doim ham ARP spoofing ishlatilmaydi. Shuning uchun, ARP darajasida faoliyatni aniqlash eng mashhur aniqlash usuli bo'lsa-da, ko'proq universal tarzda transport modifikatsiyasini aniqlashdir. Bunda bizga mitmcanary dasturi yordam berishi mumkin.

Dasturning ishlash printsipi shundaki, u "nazorat" so'rovlarini amalga oshiradi va olingan javoblarni saqlaydi. Shundan so'ng, u ma'lum vaqt oralig'ida bir xil so'rovlarni takrorlaydi va olingan javoblarni taqqoslaydi. Dastur juda aqlli va noto'g'ri ijobiy holatlarning oldini olish uchun javoblardagi dinamik elementlarni aniqlaydi va ularni to'g'ri qayta ishlaydi. Dastur MitM hujumlari uchun vositalar faolligi izlarini aniqlashi bilanoq, bu haqda xabar beradi.

Ba'zi vositalar qanday qilib "meros olishi" mumkinligiga misollar:

  • MITMf, sukut bo'yicha, HTML kodidagi barcha HTTPS URL manzillarini HTTP ga o'zgartiradi. HTTP kontentini solishtirish orqali aniqlandi.
  • Zarp + MITMProxy, MITMProxy HTTP siqilishini tozalash imkonini beruvchi funksiyaga ega, bu uzatilgan trafikning shaffofligi uchun ishlatiladi, bu kombinatsiya ilgari mavjud bo'lgan siqishni yo'qolishi bilan aniqlanadi.
  • mDNS javoblarining o'zgarishidagi keskin o'zgarishlar bilan aniqlangan javob beruvchi: kutilmagan javob; javob ichki, lekin tashqi bo'lishi kutilmoqda; javob kutilgan IP dan farq qiladi
  • MITMCanary va MITMf:

  • MITMCanary va javob beruvchi:

  • MITMCanary vs Zarp + MITMProxy:

Sudo pip o'rnatish Cython sudo apt-get o'rnatish python-kivy python-dbus sudo pip o'rnatish plyer uuid urlopen tahlil so'rovi simplejson datetime git clone https://github.com/CylanceSPEAR/mitmcanary.git cd mitmcanary/

Yuqorida aytib o'tilganidek, mitmcanary nazorat so'rovlari bilan ishlashni boshlashi kerak. Buning uchun katalogga o'ting

CD xizmati/

Va faylni ishga tushiring setup_test_persistence.py:

Python2 setup_test_persistence.py

Bu biroz vaqt oladi - tugashini kuting. Xato xabarlari bo'lmasligi kerak (agar shunday bo'lsa, sizda ba'zi bog'liqliklar etishmayapti).

Chiqish shunday bo'ladi:

Mial@HackWare:~/bin/mitmcanary/service$ python2 setup_test_persistence.py Konfiguratsiyaning eski versiyasi aniqlandi (14 oʻrniga 0) Konfiguratsiya yangilanmoqda. Jurnalni tozalash ishga tushirildi. Tahlil qilinmoqda... Tozalash tugallandi!

/home/mial/.kivy/logs/kivy_16-11-01_0.txt v1.9.1 v2.7.12+ (standart, 2016-yil, 1-sentabr, 20:27:38)

Jarayon tugagandan so'ng, xuddi shu katalogda bajaring (bu fon jarayonini boshlaydi):

Python2 main.py

Shundan so'ng, yangi terminal oynasini oching va mitmcanary bilan yakuniy katalogga o'ting. Mening katalogim bin/mitmcanary/, shuning uchun men kiraman

CD bin/mitmcanary/

Jarayon tugagandan so'ng, xuddi shu katalogda bajaring (bu fon jarayonini boshlaydi):

va u erda bajaring:

Birinchi oynada quyidagilar ko'rsatiladi: Mial@HackWare:~/bin/mitmcanary/service$ python2 main.py /home/mial/.kivy/logs/kivy_16-11-01_1.txt v1.9.1 v2.7.12+ (standart, 2016-yil, 1-sentabr,) tizimga kiring. 20:27:38) yordamida

127.0.0.1:3000 da Tuio uchun socket tinglash uchun 60 soniya uxlash 60 soniya uxlash 60 soniya uxlash 60 soniya uxlash 60 soniya uxlash 60 soniya uxlash 60 soniya uxlash

Bular. Dastur daqiqada bir marta nazorat so'rovlarini amalga oshiradi va o'rtadagi odam hujumi belgilarini qidiradi.

Ikkinchi oynada shuningdek, chiqish + qorong'i oyna ochiladi, dastur mualliflari ushbu oynani "grafik interfeys" deb atashadi:

Dastur hech qanday noto'g'ri ogohlantirishlar bermasligiga ishonch hosil qilish uchun siz biroz kutishingiz va Internetda sayr qilishingiz mumkin. Keling, harakat qilaylik klassik dastur

ettercap. Men ARP spoofing bilan muntazam MitM hujumini boshlayapman. mitmcanary o'zi etchingga javob bermaydi. Mitmcanary vositasi trafikni o'zi yaratadi, ya'ni foydalanuvchi harakati talab qilinmaydi. Biroz vaqt o'tgach, bitta ogohlantirish paydo bo'ladi, bu keyingi tekshiruvlarda tasdiqlanmaydi. Ammo shunga o'xshash ogohlantirish bir necha daqiqadan so'ng paydo bo'ladi. Qo'shimcha tahlil qilmasdan, bu misol yoki yo'qligini aytish qiyin- bunga juda o'xshash. Bu ogohlantirish qo'shimcha marshrutlarni o'tkazish uchun trafik zarurati yoki sifatsiz internet ulanishimning o'ziga xos xususiyatlari tufayli aloqa uzilishidan kelib chiqqan bo'lishi mumkin.

Natija aniq bo'lmagani uchun ("ha"dan ko'ra "yo'q" ehtimoli ko'proq), keling, turli xil modullarga ega Bettercap dasturini sinab ko'raylik. Men turli xil Ettercap va/yoki plaginlardan foydalanganda shubha qilmayman qo'shimcha dasturlar funksionallikni kengaytirish uchun biz mitmcanary uchun ham "yoritilgan" bo'lardik.

Tajribaning tozaligi uchun men uskunani qayta ishga tushiraman, hujum qilingan mashinada mitmcanary va hujum qilayotganda Bettercap-ni ishga tushiraman. Bunday holda, hujum qilingan mashinada nazorat so'rovlarini qayta bajarish shart emas - ular dastur bilan katalog ichidagi faylda saqlanadi. Bular. Xizmatni va grafik interfeysni ishga tushirish kifoya.

Va hujum qiluvchi mashinada biz Bettercap-ni tahlilchilar yoqilgan holda ishga tushiramiz:

Sudo bettercap -X

Shaxsiy ogohlantirishlar paydo bo'ladi, ular ham noto'g'ri pozitivlarga o'xshaydi.

Lekin bu buyruqni bajarish:

Sudo bettercap -X --proksi

Hujum qilingan mashina qo'ng'iroqlarida katta raqam O'rtadagi odam hujumi haqida ogohlantirishlar:

Demak, “o‘rtadagi odam” hujum vositasi qanchalik kuchli bo‘lsa, u tirbandlikda shunchalik ko‘p iz qoldiradi. Mitmkanariydan amaliy foydalanish uchun quyidagi shartlar bajarilishi kerak:

  • trafikni uzatishda vositachi yo'qligiga ishonchingiz komil bo'lganda, ishonchli tarmoqda dastlabki so'rovlarni amalga oshiring;
  • tekshirish so'rovlari yuboriladigan resurslarni tahrirlang, chunki professional tajovuzkor istisnolarga standart resurslarni qo'shishi mumkin, bu esa uni ushbu vositaga ko'rinmas qiladi.

2. ARP spoofingni aniqlash (ARP keshini zaharlash)

Ko'pincha mahalliy tarmoqqa odamning o'rtadagi hujumi ARP zaharlanishi bilan boshlanadi. Shuning uchun MitM hujumlarini aniqlash uchun mo'ljallangan ko'plab vositalar Ethernet (MAC manzillari) va IP manzillari o'rtasidagi yozishmalarni tayinlaydigan ARP keshidagi o'zgarishlarni kuzatish mexanizmiga asoslangan.

Bunday dasturlarga misol sifatida arpwatch, arpalert va ko'plab yangi dasturlarni eslashimiz mumkin. ArpON dasturi nafaqat ARP keshidagi o'zgarishlarni kuzatib boradi, balki ularni ulardan himoya qiladi.

Misol tariqasida, fonda vilkalar yaratmasdan va pochta orqali xabarlar yubormasdan, arpwatch-ni disk raskadrovka rejimida ishga tushiramiz. Buning o'rniga, xabarlar stderr ga yuboriladi (standart xato chiqishi).

Sudo /usr/sbin/arpwatch -d

Keling, hujum qiluvchi mashinada Ettercap-ni ishga tushiramiz va ARP spoofingni boshlaymiz. Hujum qilingan mashinada biz quyidagilarni kuzatamiz:

Arpwatch dasturi sizga ulangan yangi qurilmalar haqida tezda bilib olishga yordam beradi mahalliy tarmoq, shuningdek, ARP keshidagi o'zgarishlar.

Haqiqiy vaqtda ARP spoofingni aniqlashning yana bir vositasi Ettercap plaginidir, bu plagin deb ataladi. arp_cop. Hujum qilingan mashinada Ettercap-ni quyidagicha ishga tushiring:

Sudo ettercap -TQP arp_cop ///

Va tajovuzkorda biz ARP zaharlanishini boshlaymiz. Ogohlantirishlar hujum qilingan mashinada darhol paydo bo'la boshlaydi:

3. DNS spoofingni aniqlash

DNS-spoofing, siz va maqsadingiz o'rtasida sizning trafikingizni o'zgartirishi mumkin bo'lgan vositachi borligini ko'rsatadi. DNS yozuvlari soxtalashtirilganligini qanday aniqlash mumkin? Buni qilishning eng oson yo'li - siz ishonadigan nom serverining javoblari bilan solishtirish. Ammo so'rovingizga yuborilgan javobdagi yozuvlar ham almashtirilishi mumkin...

Bular. Siz shifrlangan kanal orqali (masalan, Tor orqali) tekshirishingiz yoki nostandart sozlamalardan foydalanishingiz kerak (UDP o'rniga boshqa port, TCP). XiaoxiaoPu-ning sans dasturi taxminan bu uchun mo'ljallangan (hech bo'lmaganda men tushunganimdek). Men ushbu dasturdan DNS so'rovlarini Tor orqali va nostandart sozlamalar orqali o'zimga yo'naltirish uchun foydalana oldim DNS server. Lekin men uni DNS javobini aldash haqidagi xabarlarni ko'rsatishga majbur qila olmadim. Busiz dasturning ma'nosi yo'qoladi.

Ko'proq munosib alternativalar Men topa olmadim.

Printsipial jihatdan, DNS spooferlari odatda faqat 53-portni va faqat UDP protokolini nazorat qilishini hisobga olsak, hatto DNS-spoofing faktini qo'lda tekshirish kifoya qiladi, garchi bu sizning nostandart konfiguratsiyaga ega bo'lgan DNS serveringizni talab qiladi. Masalan, hujum qiluvchi mashinada men fayl yaratdim dns.conf quyidagi mazmun bilan:

Mahalliy mi-al.ru

Bular. mi-al.ru veb-sayti uchun DNS yozuvini so'raganda, haqiqiy IP o'rniga tajovuzkor mashinasining IP-si yuboriladi.

Men hujum mashinasida yuguraman:

Sudo bettercap --dns dns.conf

Va hujum qilinganida men ikkita tekshiruv o'tkazaman:

Dig mi-al.ru # va dig mi-al.ru -p 4560 @185.117.153.79

Natijalar:

Mial@HackWare:~$ dig mi-al.ru ;<<>> DiG 9.10.3-P4-Debian<<>> mi-al.ru ;; global variantlar: +cmd ;; Javob oldim: ;; ->>SALOV<<- opcode: QUERY, status: NOERROR, id: 51993 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;mi-al.ru. IN A ;; ANSWER SECTION: mi-al.ru. 86400 IN A 192.168.1.48 ;; Query time: 2 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Wed Nov 02 09:25:20 MSK 2016 ;; MSG SIZE rcvd: 42 mial@HackWare:~$ dig mi-al.ru -p 4560 @185.117.153.79 ; <<>> DiG 9.10.3-P4-Debian<<>> mi-al.ru -p 4560 @185.117.153.79 ;; global variantlar: +cmd ;; Javob oldim: ;; ->>SALOV<<- opcode: QUERY, status: NOERROR, id: 401 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;mi-al.ru. IN A ;; ANSWER SECTION: mi-al.ru. 3799 IN A 185.26.122.50 ;; Query time: 304 msec ;; SERVER: 185.117.153.79#4560(185.117.153.79) ;; WHEN: Wed Nov 02 09:25:27 MSK 2016 ;; MSG SIZE rcvd: 53

Ko'rinib turibdiki, "muntazam" DNS so'rovi uchun mahalliy IP 192.168.1.48 yuborilgan va atipik portda DNS so'ralganda to'g'ri server IP yuborilgan.

Agar server TCP (UDP o'rniga) dan foydalanish uchun tuzilgan bo'lsa, buyruq quyidagicha ko'rinadi:

Dig mi-al.ru -p 4560 +tcp @185.117.153.79

Trafikdagi DNS-javoblarni o'zi nazorat qiladigan, ularni muqobil manbaga nisbatan ikki marta tekshiradigan va soxtalashtirish holatlarida signal beruvchi vositaning etishmasligi aniq.

O'zingizning masofaviy DNS-ni o'rnatmaslik uchun Tor orqali nom serveriga so'rovlar qilishingiz mumkin. Barcha Tor trafigi shifrlanganligi sababli, shu tarzda olingan DNS javoblari vositachining imkoniyatlaridan tashqarida. Agar Tor hali o'rnatilmagan bo'lsa, uni o'rnating.

Sudo apt-get o'rnatish tor

Sudo pacman -S tor

Xizmatni ishga tushiring:

Sudo systemctl start tor

Agar sizga kerak bo'lsa, ishga tushirish uchun ushbu xizmatni qo'shing:

Sudo systemctl torni yoqish

Faylni oching /etc/tor/torrc va u erga quyidagi qatorlarni qo'shing:

DNSPort 530 AutomapHostsOnResolve 1 AutomapHostsSuffixes .exit,.onion

530 raqamiga e'tibor bering. Bu 530 o'rniga port raqami, siz boshqa har qanday (ishlatilmagan) portni belgilashingiz mumkin; Asosiysi, uni eslab qolish.

Yana tekshiramiz:

Dig mi-al.ru # va dig mi-al.ru -p 530 @localhost

Endi biz server sifatida belgilaymiz localhost, va /etc/tor/torrc sozlamalarida ko'rsatgan port raqamini yozing.

Quyidagi skrinshotdan ko'rinib turibdiki, tekshiruv o'tkazilgan mashinada DNS spoofing hujumi amalga oshirilgan:

4. Tarmoq interfeyslarini promiscuous rejimida qidirish

Agar sizning mahalliy tarmog'ingizda noxush rejimda uskunalar mavjud bo'lsa (va ayniqsa, u to'satdan paydo bo'lsa), bu juda shubhali, garchi u o'rtadagi odam hujumini aniq ko'rsatmasa ham.

Ushbu rejimda tarmoq kartasi barcha paketlarni kimga qaratilganligidan qat'iy nazar qabul qilish imkonini beradi.

Oddiy holatda Ethernet interfeysi havola qatlami paketini filtrlashdan foydalanadi va agar qabul qilingan paketning maqsad sarlavhasidagi MAC manzili joriy tarmoq interfeysining MAC manziliga mos kelmasa va translyatsiya qilinmasa, paket o'chiriladi. "Faxriy" rejimda tarmoq interfeysida filtrlash o'chiriladi va barcha paketlar, shu jumladan joriy tugun uchun mo'ljallanmagan paketlar tizimga kirishga ruxsat etiladi.

Aksariyat operatsion tizimlar noxush rejimni yoqish uchun administrator huquqlarini talab qiladi. Bular. Tarmoq kartasini nopok rejimga o'rnatish - bu hidlash maqsadlariga xizmat qilishi mumkin bo'lgan qasddan qilingan harakat.

Tarmoq interfeyslarini nopok rejimda qidirish uchun Ettercap deb nomlangan plagin mavjud search_promisc.

Plaginni ishga tushirishga misol:

Sudo ettercap -TQP search_promisc ///

Plaginning ishlashi to'liq ishonchli emas, tarmoq interfeysi rejimini aniqlashda xatolar paydo bo'lishi mumkin;

Xulosa

O'rtadagi odam hujumining ba'zi usullari juda ko'p iz qoldiradi va ba'zilari (masalan, passiv proksi-server ma'lumotlarini qidirish) aniqlash mumkin emas yoki deyarli imkonsizdir.

Bu tajovuzkor muxbirlar o'rtasida almashilgan xabarlarni o'z xohishiga ko'ra o'qishi va o'zgartirishi mumkin bo'lgan vaziyatni bildiradi va ularning hech biri uning kanalda mavjudligini taxmin qila olmaydi.


Wikimedia fondi.

2010 yil.

    Boshqa lug'atlarda "O'rtadagi odam (hujum)" nima ekanligini ko'ring:

    O'rta hujumdagi odam, MITM hujumi (inglizcha Man in the middle) kriptografiyadagi atama bo'lib, kriptoanalitik (hujumchi) almashilgan xabarlarni o'z xohishiga ko'ra o'qishi va o'zgartirishi mumkin bo'lgan vaziyatni bildiradi... ... Vikipediya

    - ... Vikipediya

    Kriptanaliz (yunoncha yashirin va tahlil qilishdan) - buning uchun zarur bo'lgan maxfiy ma'lumotlarga (kalitga) kirish huquqiga ega bo'lmagan holda shifrlangan ma'lumotlarning asl ma'nosini olish usullari haqidagi fan. Aksariyat hollarda bu degani... ... Vikipediya

    So'zning tor ma'nosida xakerlik hujumi hozirda "xavfsizlik tizimiga hujum" sifatida tushuniladi va keyingi Cracker hujumi atamasining ma'nosiga ko'proq moyil bo'ladi. Bu "hacker" so'zining o'zi ma'nosining buzilishi tufayli sodir bo'ldi... Vikipediya

- (boshqa yunoncha khrυτόs dan yashirin va tahlil qilish) shifrlangan ma'lumotni kalitsiz ochish usullari haqidagi fan. Bu atama 1920 yilda amerikalik kriptograf Uilyam Fridman tomonidan kiritilgan. Norasmiy... ... Vikipediya

O'rta hujumdagi odam (MitM hujumi) kriptografiyadagi atama bo'lib, tajovuzkor muxbirlar o'rtasida almashinadigan xabarlarni o'z xohishiga ko'ra o'zgartirishi mumkin bo'lgan vaziyatni bildiradi va ularning hech biri uning kanalda mavjudligini taxmin qila olmaydi .

Aloqa kanalini buzish usuli, bunda tajovuzkor kontragentlar o'rtasidagi kanalga ulanib, uzatish protokoliga faol aralashadi, ma'lumotni o'chiradi, buzib yuboradi yoki noto'g'ri ma'lumotlarni kiritadi.

Hujum printsipi:

Hujum qilish uchun "C" "A" ga "B" va "B" ga "A" deb e'tiroz bildiradi. "A" ob'ekti "B" ga ma'lumot yuborayotganiga noto'g'ri ishonib, uni "C" ob'ektiga yuboradi.

"C" ob'ekti ma'lumotni olgan va u bilan ba'zi harakatlarni amalga oshirgan (masalan, uni o'z maqsadlari uchun nusxalash yoki o'zgartirish) ma'lumotlarni qabul qiluvchining o'ziga yuboradi - "B"; "B" ob'ekti, o'z navbatida, ma'lumot to'g'ridan-to'g'ri "A" dan olingan deb hisoblaydi.

MitM hujumiga misol:

Aytaylik, Elis moliyaviy muammolarga duch keldi va tezkor xabar almashish dasturidan foydalanib, xabar yuborish orqali Jondan pul so'rashga qaror qildi:
Elis: Jon, salom!
Elis: Iltimos, menga shifrlash kalitini yuboring, kichik iltimosim bor!
Jon: Salom! Bir soniya kuting!

Ammo, bu vaqtda, sniffer yordamida trafikni tahlil qilgan janob X bu xabarni payqab qoldi va "shifrlash kaliti" so'zlari qiziqish uyg'otdi. Shuning uchun u quyidagi xabarlarni ushlab, ularni kerakli ma'lumotlar bilan almashtirishga qaror qildi va u quyidagi xabarni olganida:
Jon: Mana mening kalitim: 1111_D

U Jonning kalitini o'ziga o'zgartirdi va Elisga xabar yubordi:
Jon: Mana mening kalitim: 6666_M

Elis, bexabar va buni Jonning kaliti deb o'ylab, shaxsiy kalitdan foydalangan holda 6666_M, Jonga shifrlangan xabarlarni yuboradi:
Elis: Jon, menda muammolar bor va menga zudlik bilan pul kerak, iltimos mening hisobimga 300 dollar o'tkazing: Z12345. Rahmat. p.s. Mening kalitim: 2222_A

Xabarni olgan janob X o'z kaliti yordamida uni parolini ochadi, o'qiydi va xursand bo'lib, Elisning hisob raqamini va shifrlash kalitini o'ziga o'zgartiradi, xabarni kalit bilan shifrlaydi. 1111_D, va Jonga xabar yuboradi:
Elis: Jon, menda muammolar bor va menga zudlik bilan pul kerak, iltimos mening hisobimga 300 dollar o'tkazing: Z67890. Rahmat. p.s. Mening kalitim: 6666_A

Xabarni olgandan so'ng, Jon kalit yordamida uni parolini ochadi 1111_D, va hatto ikkilanmasdan, hisob raqamiga pul o'tkazadi Z67890...

Shunday qilib, janob X o'rtadagi odam hujumidan foydalanib, 300 dollar ishlab oldi, ammo Elis endi pulni olmaganini tushuntirishi kerak ... Va Jon? Jon Elisga ularni yuborganini isbotlashi kerak...

Amalga oshirish:

Ushbu turdagi hujum tarmoqni tinglash uchun ba'zi dasturiy mahsulotlarda qo'llaniladi, masalan:
NetStumbler- simsiz tarmoq haqida juda ko'p foydali ma'lumotlarni to'plashingiz va uning ishlashi bilan bog'liq ba'zi muammolarni hal qilishingiz mumkin bo'lgan dastur. NetStumbler sizga tarmog'ingiz diapazonini aniqlash imkonini beradi va uzoq masofali aloqa uchun antennangizni aniq yo'naltirishga yordam beradi. Topilgan har bir kirish nuqtasi uchun siz MAC manzilini, signal-shovqin nisbatini, xizmat nomini va uning xavfsizlik darajasini bilib olishingiz mumkin. Agar trafik shifrlanmagan bo'lsa, u holda dasturning ruxsatsiz ulanishlarni aniqlash qobiliyati foydali bo'ladi.

dsniff- bu tarmoq auditi va kirish testlari uchun dasturlar to'plami bo'lib, ular qiziqish ma'lumotlarini (parollar, elektron pochta manzillari, fayllar va boshqalar) qidirish uchun tarmoqning passiv monitoringini ta'minlaydigan, odatda tahlil qilish uchun mavjud bo'lmagan tarmoq trafigini ushlab turadigan (masalan, kommutatsiyalangan tarmoq), shuningdek, PKI kamchiliklaridan foydalangan holda SSH va HTTPS seanslarini ushlab turish uchun MITM hujumlarini tashkil qilish qobiliyati.

Qobil va Hobil Windows oilasining operatsion tizimlari uchun yo'qolgan parollarni tiklash imkonini beruvchi bepul dastur. Bir nechta tiklash rejimlari qo'llab-quvvatlanadi: qo'pol kuch buzish, lug'at tanlash, yulduzcha bilan yashirilgan parollarni ko'rish va hk. Shuningdek, ma'lumot paketlarini ushlab qolish va ularni keyingi tahlil qilish, tarmoq suhbatlarini yozish, kesh tahlili va boshqalar orqali parolni aniqlash imkoniyatlari mavjud.

Ettercap- bu bir nechta protokollarni faol va passiv tahlil qilishni qo'llab-quvvatlaydigan mahalliy Ethernet tarmoqlari uchun sniffer, paketlarni to'xtatuvchi va yozuvchidir, shuningdek, o'z ma'lumotlaringizni mavjud ulanishga "tashlash" va ulanishni buzmasdan "parvozda" filtrlash mumkin. sinxronizatsiya. Dastur sizga SSH1, HTTPS va boshqa xavfsiz protokollarni tutib olish imkonini beradi va quyidagi protokollar uchun parollarni ochish imkoniyatini beradi: 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.

KARMA- simsiz mijozlar xavfsizligini baholash uchun yordamchi dasturlar to'plami - 802.11 Probe Request ramkalarini passiv tinglash orqali mijozlar va ularning afzal ko'rgan/ishonchli tarmoqlarini aniqlash imkonini beruvchi simsiz sniffer. Keyin so'ralgan tarmoqlardan biri uchun soxta kirish nuqtasi yaratilishi mumkin, u avtomatik ravishda ulanishi mumkin. Yuqori darajadagi soxta xizmatlar shaxsiy ma'lumotlarni o'g'irlash yoki xostdagi mijozlar zaifliklaridan foydalanish uchun ishlatilishi mumkin.

AirJack- WiFi xakerlik sohasidagi mutaxassislarning fikriga ko'ra, turli xil 802.11 ramkalarini yaratish uchun eng yaxshi vosita bo'lgan dasturlar to'plami. AirJack yashirin ESSID-larni aniqlash, soxta MAC yordamida sessiyani tugatish ramkalarini yuborish, MitM hujumlarini amalga oshirish va uni o'zgartirish uchun mo'ljallangan bir qator yordamchi dasturlarni o'z ichiga oladi.

Qarshilik:

Ushbu turdagi hujumlarning oldini olish uchun "A" va "B" abonentlari faqat ishonchli kanal yordamida ochiq shifrlash kalitlarining raqamli imzolarini bir-biriga o'tkazishlari kerak. Keyinchalik, shifrlash seanslarida kalit imzolarini solishtirganda, ma'lumotlarni shifrlash uchun qaysi kalit ishlatilganligini va kalitlar almashtirilganligini aniqlash mumkin bo'ladi.

MTProto hozirda zaif bo'lgan mobil aloqada ishonchlilik va katta fayllarni (masalan, fotosuratlar, videolar va 1 Gb gacha bo'lgan hujjatlar) etkazib berish tezligiga erishish uchun original usuldan foydalanadi. Ushbu hujjat tizimimizning tafsilotlarini aniqlashtirish va birinchi qarashda tushunish qiyin bo'lishi mumkin bo'lgan elementlarga murojaat qilish uchun mo'ljallangan.

Batafsil protokol hujjatlari ushbu sahifada mavjud. Savollaringiz bo'lsa yozing Twitter.

Eslatma: MTProto orqali shifrlangan har bir xabar har doim quyidagi ma'lumotlarni o'z ichiga oladi, ular tizimni ma'lum muammolardan himoya qilish uchun shifrni ochish paytida tekshiriladi:

  • sessiya identifikatori - sessiya identifikatori;
  • xabar uzunligi - xabar uzunligi;

Eslatma 2: Foydalanish bo'yicha qo'shimcha sharhlarni ko'ring va tahrirlangan sxemalar

Nima uchun X dan foydalanmaysiz [sizning tanlovingiz]

Shubhasiz, bir xil kriptografik maqsadlarga erishishning boshqa yo'llari mavjud bo'lsa-da, biz hozirgi yechim ham ishonchli va ikkinchi darajali maqsadimizga - etkazib berish tezligi va barqarorligi bo'yicha xavfli messenjerlardan ustun bo'lishiga ishonamiz.

Nima uchun klassik kriptoalgoritmlarga tayanasiz?

Biz tarmoqli kengligi va ishlov berish kuchi noyob juftlik bo'lgan kunlarda yaratilgan taniqli algoritmlardan foydalanishni afzal ko'ramiz. Aynan shu algoritmlar mobil qurilmalar uchun ilovalarning bugungi kundagi rivojlanishiga sezilarli ta'sir ko'rsatib, ularning mualliflarini ma'lum kamchiliklardan xalos bo'lishga majbur qilmoqda. Bunday algoritmlarning zaif tomonlari ham yaxshi ma'lum va hujumchilar tomonidan o'nlab yillar davomida foydalanilgan. Ushbu amalga oshirishda biz ushbu algoritmlardan foydalanamiz, chunki bizning fikrimizcha, ular har qanday ma'lum hujumni muvaffaqiyatsizlikka olib keladi. Biroq, tizimimizni takomillashtirish uchun buning aksini tasdiqlovchi dalillarni ko'rishdan xursand bo'lardik (hozircha bunday holatlar bo'lmagan).

Men xavfsizlik bo'yicha mutaxassisman va sizning protokolingiz xavfli ekanligiga ishonaman.

Siz bizning tanlovimizda ishtirok etishingiz mumkin: Pavel Durov MTProto’ni buzib kirgan birinchi shaxsga 200 000 dollar Bitcoin taklif qilmoqda. Siz e'lon va tanlov haqida FAQ bilan tanishishingiz mumkin. Agar sizda boshqa sharhlar bo'lsa, biz ularni eshitishdan xursand bo'lamiz [elektron pochta himoyalangan].

Ma'lum bo'lgan hujumlardan himoya qilish

Ma'lum bo'lgan ochiq matnli hujumlar

Ta'rifga ko'ra, ochiq matnli hujum - bu tajovuzkor matnning shifrlangan va ochiq matnli versiyalariga ega bo'lgan kriptoanalitik hujumning bir turi. MTProto-da ishlatiladigan AES IGE bunday hujumlarga chidamli. Bundan tashqari, MTProto-dagi ochiq matn har doim server tuzi va sessiya identifikatorini o'z ichiga oladi.

Moslashuvchan tekis matn hujumi

Ta'rifga ko'ra, adaptiv ochiq matn hujumi kriptotahlildagi hujumning bir turi bo'lib, unda kriptoanalitik ochiq matnni tanlashi va tegishli shifrlangan matnni olishi mumkin. MTProto bunday hujumlardan himoyalangan IGE rejimida AES-dan foydalanadi. IGE blokli-adaptiv hujumlarga nisbatan zaif ekanligi ma'lum, ammo MTProto buni quyida tavsiflangan tarzda tuzatadi. Shifrlanishi kerak bo'lgan har bir ochiq matnli xabar shifrni ochish paytida tekshiriladigan quyidagi ma'lumotlarni o'z ichiga oladi:

  • server tuzi (64-bit);
  • xabarlar ketma-ketligi raqami;
  • xabar yuborilgan vaqt - vaqt.

Bundan tashqari, ochiq matnni almashtirish uchun siz auth_key ga bog'liq bo'lgan to'g'ri AES kaliti va ishga tushirish vektoridan foydalanishingiz kerak. Bu MTProto-ni moslashuvchan ochiq matn hujumlariga chidamli qiladi.

Moslashgan shifrlangan matn hujumlari

Ta'rifga ko'ra, tanlangan shifrlangan matn hujumi - bu kriptografik hujum bo'lib, bunda kriptoanalitik shifrlangan matnni tanlab, noma'lum kalit yordamida uning shifrini hal qilish orqali shifr haqida ma'lumot to'playdi. Bunday hujumda tajovuzkor tizimga bir yoki bir nechta ma'lum shifrlangan matnlarni kiritishi va ochiq matnlarni olishi mumkin. Ushbu ma'lumotlardan foydalanib, tajovuzkor shifrni ochish uchun ishlatiladigan kalitni tiklashga harakat qilishi mumkin. MTProto-da har safar xabar shifrlanganda, msg_key shifrlangan ma'lumotlarning SHA-1-ga mos kelishini tekshirish uchun tekshiriladi. To'g'ri matn (shifrlangan ma'lumotlar) har doim xabarning uzunligi, uning tartib raqami va server tuzi haqidagi ma'lumotlarni o'z ichiga oladi. Bu tanlangan shifrlangan matnga asoslangan hujumlarni inkor etadi.

Takroriy hujumlar

Takroriy hujumlar mumkin emas, chunki har bir ochiq matnli xabarda server tuzi, noyob xabar identifikatori va tartib raqami mavjud.

O'rtadagi odam (MitM) hujumi

Telegramda ikkita aloqa rejimi mavjud: mijoz-server shifrlashdan foydalanadigan oddiy chatlar va uchdan-end shifrlashdan foydalanadigan va o‘rtadagi odam hujumlaridan himoyalangan maxfiy chatlar. Telegram mijozlariga o‘rnatilgan RSA ochiq kalit algoritmi tufayli mijoz va server o‘rtasida ma’lumotlar uzatish Diffie-Hellman kalitlarini yaratish jarayonida bunday hujumlardan himoyalangan. Shundan so'ng, agar suhbatdoshlar mijozlari server dasturiy ta'minotiga ishonsa, ular o'rtasidagi maxfiy chatlar server tomonidan "o'rtadagi odam" hujumlaridan himoyalangan. Ayniqsa, kimlar uchun Yo'q serverga ishonadi, maxfiy kodlarni taqqoslash ilovada mavjud. Kalitlar tasvir sifatida tasvirlangan. Vizual kalitlarni taqqoslash orqali foydalanuvchilar o'rtadagi odam hujumi sodir bo'lmaganligini tekshirishlari mumkin.

Shifrlash

Siz IGE dan foydalanasizmi? Bu buzilgan!

Ha, biz IGE-dan foydalanamiz, lekin bizning amaliyotimizda u bilan hamma narsa yaxshi. IGE-ni tizimimizning boshqa elementlari bilan MAC kabi ishlatmasligimiz IGE-ni buzishga urinishlarni behuda qiladi. IGE, xuddi umumiy shifrlangan matnni blokirovka qilish (CBC) rejimi kabi, blokli-adaptiv hujumlarga moyil. Ammo moslashuvchan hujumlar faqat bir xil kalit bir nechta xabarlarda ishlatilganda tahdiddir (bu shunday emas).

Moslashuvchan hujumlar MTProto-da hatto nazariy jihatdan ham mumkin emas, chunki xabarlarni shifrlash uchun birinchi navbatda ikkinchisini to'liq terish kerak, chunki xabar kaliti uning mazmuniga bog'liq. Moslashuvchan bo'lmagan CPA hujumlariga kelsak, IGE xuddi CBC kabi ulardan himoyalangan.

© 2024 ermake.ru -- Kompyuterni ta'mirlash haqida - Axborot portali