Internet Windows Android
Kengaytirish

Hujumlarda odam. Texnik savollar

Deyarli har doim kerakli natijaga bir necha usul bilan erishishingiz mumkin. Bu axborot xavfsizligi sohasiga ham tegishli. Ba'zan maqsadga erishish uchun siz qo'pollik qilishingiz, mustaqil ravishda teshiklarni qidirishingiz va buzilishlarni rivojlantirishingiz yoki tarmoq orqali uzatiladigan narsalarni tinglashingiz mumkin. Oxirgi variant ko'pincha eng yaxshisidir. Shuning uchun bugun biz buning uchun MITM hujumlaridan foydalanib, tarmoq trafigidan biz uchun qimmatli ma'lumotlarni olishga yordam beradigan vositalar haqida gaplashamiz.

MITMf

Keling, qiziqarli nomzodlardan biri bilan boshlaylik. Bu sergio-proksi ustiga qurilgan odam-in-the-middle hujumlari uchun butun ramka. Yaqinda Kali Linux-ga kiritilgan. Uni o'zingiz o'rnatish uchun omborni klonlash va bir nechta buyruqlarni bajarish kifoya:

# setup.sh # pip install -r requirements.txt

U plaginlar orqali kengaytirilishi mumkin bo'lgan arxitekturaga ega. Ulardan asosiylari quyidagilardan iborat:

  • Spoof - ARP / DHCP spoofing, ICMP qayta yo'naltirishlari va DNS so'rovlarini o'zgartirish yordamida trafikni qayta yo'naltirish imkonini beradi;
  • Sniffer - bu plagin turli protokollar uchun kirish urinishlarini nazorat qiladi;
  • BeEFAutorun - OT turi va mijoz brauzeri asosida BeEF modullarini avtomatik ravishda ishga tushirish imkonini beradi;
  • AppCachePoison - keshni zaharlash hujumini amalga oshiradi;
  • SessionHijacking - seanslarni o'g'irlaydi va qabul qilingan cookie-fayllarni firelis profilida saqlaydi;
  • BrowserProfiler - brauzer tomonidan ishlatiladigan plaginlar ro'yxatini olishga harakat qiladi;
  • FilePwn - HTTP orqali yuborilgan fayllarni Backdoor Factory va BDFProxy yordamida almashtirish imkonini beradi;
  • Inject - HTML sahifasiga ixtiyoriy tarkibni kiritadi;
  • jskeylogger - JavaScript keyloggerni mijoz sahifalariga kiritadi.

Agar bu funksiya siz uchun etarli bo'lmasa, tegishli kengaytmani qo'llash orqali har doim o'zingiznikini qo'shishingiz mumkin.

shlakli chavandoz

Yana bir e'tiborga loyiq yordamchi dastur. To'g'ri, bugungi kunda ko'rib chiqilgan barcha boshqa vositalardan farqli o'laroq, u juda tor ixtisoslashgan. Loyiha muallifining o'zi ta'kidlaganidek, uni bunday yordamchi dasturni yaratishga kirishish testlari paytida ma'murlar SSH/Telnet/rlogin orqali ulangan Linux/UNIX serverlarida joylashganligi sabab bo'lgan. Va ko'p hollarda, ma'murlar mashinasiga kirish maqsadli serverga kirishdan ko'ra ancha oson edi. Tizim ma'murining mashinasiga kirganingizdan so'ng, PuTTY ishlayotganiga ishonch hosil qilish va tajovuzkorga teskari ko'prik qurish uchun ushbu vositadan foydalanish qoladi.


Yordamchi dastur nafaqat administrator va masofaviy server (shu jumladan parollar) o'rtasidagi "aloqa" ni aniqlashga, balki ma'lum bir seans ichida ixtiyoriy qobiq buyruqlarini bajarishga ham imkon beradi. Va bularning barchasi foydalanuvchi (administrator) uchun mutlaqo shaffof bo'ladi. Agar siz texnik tafsilotlarga qiziqsangiz, masalan, PuTTY jarayonini amalga oshirish qanday amalga oshirilayotgani, muallifning taqdimotini o'qishni maslahat beraman.


Sakkiz yildan ko'proq vaqt oldin tug'ilgan juda eski yordamchi dastur. Cookie-fayllarni o'g'irlash orqali seanslarni klonlash uchun mo'ljallangan. Sessiyani o'g'irlash uchun u xostlarni aniqlash (ochiq simsiz tarmoq yoki markazga ulangan taqdirda) va ARP zaharlanishini amalga oshirishda asosiy ko'nikmalarga ega. Yagona muammo shundaki, bugungi kunda, sakkiz yil avvalgidan farqli o'laroq, Yahoo yoki Facebook kabi deyarli barcha yirik kompaniyalar SSL shifrlashdan foydalanadilar, bu esa ushbu vositani butunlay foydasiz qiladi. Shunga qaramay, Internetda hali ham SSL-dan foydalanmaydigan resurslar etarli, shuning uchun yordam dasturini o'chirishga hali erta. Uning afzalliklari orasida Firefox-ga avtomatik ravishda integratsiyalashuvi va har bir ushlangan sessiya uchun alohida profil yaratishi kiradi. Manba kodi omborda mavjud va uni quyidagi buyruqlar ketma-ketligidan foydalanib o'zingiz qurishingiz mumkin:

# apt-get install build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev # g++ $(wx-config --cppflags --libs) -lpcap -o sessionthief *.cpp # setcap cap_net_raw,cap_net sessiya o'g'ri

Proksi Fuzz

ProzyFuzz MITM hujumlari bilan bevosita aloqasi yo'q. Nomidan taxmin qilganingizdek, vosita fuzzing uchun mo'ljallangan. Bu python-da amalga oshirilgan deterministik bo'lmagan kichik tarmoq fuzzeri bo'lib, u tarmoq trafik paketlarining mazmunini tasodifiy o'zgartiradi. TCP va UDP protokollarini qo'llab-quvvatlaydi. Faqat bir tomonni bukish uchun sozlash mumkin. Ba'zi tarmoq ilovalarini (yoki protokollarini) tezda sinab ko'rish va PoC ni ishlab chiqish kerak bo'lganda foydalidir. Foydalanish misoli:

Python proxyfuzz -l -r -p

Variantlar ro'yxati quyidagilarni o'z ichiga oladi:

  • w - fuzzing boshlanishidan oldin yuborilgan so'rovlar sonini belgilaydi;
  • c - faqat mijozni (aks holda har ikki tomonni) fuzz;
  • s - faqat serverni noaniq qilish (aks holda har ikki tomon);
  • u - UDP protokoli (aks holda TCP ishlatiladi).

Middleler

DEF CON konferentsiyasida taqdim etilgan, turli protokollarga MITM hujumlarini amalga oshirish uchun yordamchi dastur. Alfa versiyasi HTTP protokolini qo'llab-quvvatladi va uning arsenalida uchta ajoyib plagin mavjud edi:

  • plugin-beef.py - mahalliy tarmoqdan kelgan har qanday HTTP so'roviga Brauzerni ekspluatatsiya qilish ramkasini (BeEF) kiritadi;
  • plugin-metasploit.py - Metasploit-dan brauzer ekspluatatsiyasini yuklaydigan IFRAME-ni shifrlanmagan (HTTP) so'rovlariga kiritadi;
  • plugin-keylogger.py - HTTPS orqali yuboriladigan barcha matn maydonlari uchun JavaScript onKeyPress hodisasi ishlovchisini kiritadi, bu esa brauzerning foydalanuvchi parolini har bir belgi bo'yicha tajovuzkor serveriga butun shakl yuborilishidan oldin yuborishiga sabab bo'ladi.

Middleler nafaqat tarmoq trafigini avtomatik ravishda tahlil qiladi va undagi cookie-fayllarni topadi, balki ularni mijozdan mustaqil ravishda so'raydi, ya'ni jarayon maksimal darajada avtomatlashtirilgan. Dastur o'zi kirish huquqiga ega bo'lgan kompyuter tarmog'idagi (yoki umumiy hotspot) barcha himoyalanmagan hisoblarni to'plashni kafolatlaydi. Dastur to'g'ri ishlashi uchun tizimda quyidagi paketlar o'rnatilgan bo'lishi kerak: Scapy, libpcap, readline, libdnet, python-netfilter. Afsuski, ombor uzoq vaqt davomida yangilanmagan, shuning uchun siz o'zingiz yangi funksiyalarni qo'shishingiz kerak bo'ladi.

HTTP trafigini interaktiv tarzda tekshirish va o'zgartirish imkonini beruvchi konsol yordam dasturi. Bunday ko'nikmalar tufayli yordam dasturidan nafaqat penetratsion testerlar / xakerlar, balki undan foydalanadigan oddiy ishlab chiquvchilar ham foydalanadilar, masalan, veb-ilovalarni disk raskadrovka qilish uchun. U ilova qanday so'rovlar berishi va qanday javoblarni olishi haqida batafsil ma'lumot olish uchun ishlatilishi mumkin. Bundan tashqari, mitmproxy sizga ba'zi REST API-lari, ayniqsa yomon hujjatlashtirilganlarini qanday ishlashini o'rganishga yordam beradi.

O'rnatish juda oddiy:

$ sudo aptitude o'rnatish mitmproxy

$ pip o'rnatish mitmproxy

$ easy_install mitmproxy

Shuni ta'kidlash kerakki, mitmproxy mijozga o'z-o'zidan imzolangan sertifikat berish orqali HTTPS trafigini to'xtatishga ham imkon beradi. Trafikni ushlab turish va o'zgartirishni qanday o'rnatishning yaxshi namunasini topish mumkin.


Interceptor-NG

Agar ushbu afsonaviy asbob bizning sharhimizga kiritilmagan bo'lsa, g'alati bo'lar edi. Agar siz uni hech qachon ishlatmagan bo'lsangiz ham, ehtimol siz u haqida eshitgansiz (va siz uni yaxshiroq bilishingiz kerak) - bu jurnal sahifalarida juda keng tarqalgan. Men uning funksionalligini to'liq ta'riflamayman - birinchidan, biz MITMga qiziqamiz, ikkinchidan, bunday tavsif butun maqolani qamrab oladi.

Davomi faqat aʼzolar uchun mavjud

Variant 1. Saytdagi barcha materiallarni o'qish uchun "sayt" jamoasiga qo'shiling

Belgilangan muddatda hamjamiyatga a'zolik sizga BARCHA Hacker materiallariga kirish imkonini beradi, shaxsiy jami chegirmangizni oshiradi va professional Xakep Score reytingini to'plash imkonini beradi!

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. Misol uchun, mahalliy tarmoqqa odam-in-the o'rta hujumda, odatda, ARP spoofing (zaharlanish) qo'llaniladi. O'rtadagi odam hujumini aniqlash vositalarining ko'pchiligi Ethernet manzillari juftligi o'zgarishini kuzatadi / yoki ARP so'rovlari/javoblarini passiv kuzatish orqali shubhali ARP faoliyati haqida xabar beradi. Ammo agar bu hujum zararli konfiguratsiya qilingan proksi-server, VPN yoki boshqa variantlarda ARP zaharlanishi ishlatilmasa, bunday vositalar yordamsiz bo'ladi.

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

1. Yo'l harakati o'zgarishini aniqlash

Yuqorida aytib o'tilganidek, ARP spoofing har doim ham o'rtadagi odam hujumlarida qo'llanilmaydi. Shuning uchun, ARP darajasidagi faoliyatni aniqlash eng mashhur aniqlash usuli bo'lsa-da, trafik o'zgarishini aniqlash yanada umumiy usuldir. Bunda bizga mitmcanary dasturi yordam berishi mumkin.

Dasturning 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 qayd etishi 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 siqishni tozalash imkonini beruvchi xususiyatga ega, bu uzatiladigan trafikning shaffofligi uchun ishlatiladi, bu to'plam ilgari mavjud bo'lgan siqishni yo'qolishi bilan aniqlanadi.
  • Responder , mDNS javob tarjimasida keskin o'zgarishlar bilan aniqlangan: 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 ishi nazorat so'rovlari bilan boshlanishi kerak. Buning uchun katalogga o'ting

CD xizmati/

Va faylni ishga tushiring setup_test_persistence.py:

Python2 setup_test_persistence.py

Bu biroz vaqt talab etadi - oxirigacha kuting. Hech qanday xato xabarlari ko'rsatilmasligi kerak (agar shunday bo'lsa, sizda ba'zi bog'liqliklar etishmayapti).

Shunga o'xshash narsa chiqariladi:

[elektron pochta himoyalangan]:~/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)

Ushbu jarayonni tugatgandan so'ng, xuddi shu katalogda bajaring (bu fon jarayonini boshlaydi):

Python2 main.py

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

cd bin/mitmcanary/

va u erda bajaring:

Python2 main.py

Birinchi oynada quyidagilar ko'rsatiladi:

[elektron pochta himoyalangan]:~/bin/mitmcanary/service$ python2 main.py Tizimga kirish /home/mial/.kivy/logs/kivy_16-11-01_1.txt v1.9.1 v2.7.12+ (standart, 2016-yil, 1-sentabr, 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 ularda odam-in-the-midle hujumi belgilarini qidiradi.

Ikkinchi oynada ham chiqish mavjud + 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 mumkin, Internetda ko'ring.

Keling, klassik Ettercap dasturini sinab ko'raylik.

Men ARP spoofing bilan muntazam MitM hujumini amalga oshiryapman. mitmcanary o'z-o'zidan etchingga munosabat bildirmaydi. Mitmcanary vositasi trafikni o'zi yaratadi, ya'ni foydalanuvchi harakati talab qilinmaydi. Biroz vaqt o'tgach, keyingi tekshiruvlarda tasdiqlanmaydigan bitta ogohlantirish paydo bo'ladi. Ammo xuddi shu ogohlantirish bir necha daqiqadan so'ng paydo bo'ladi. Qo'shimcha tahlillarsiz, bu noto'g'ri ijobiy misolmi yoki yo'qligini aytish qiyin - bu bunga juda o'xshaydi. Ehtimol, bu ogohlantirish trafikning qo'shimcha marshrutlardan o'tishi zarurati tufayli ulanishning uzilishi yoki mening yomon internet aloqamning o'ziga xos xususiyatlaridan kelib chiqqan bo'lishi mumkin.

Natija aniq bo'lmagani uchun ("ha"dan ko'ra "yo'q"), keling, turli xil modullarga ega Bettercap dasturini sinab ko'raylik. Funktsionallikni kengaytirish uchun turli xil Ettercap plaginlari va / yoki qo'shimcha dasturlardan foydalanganda, biz mitmcanary uchun ham "yorug'lik" qilishimizga shubham yo'q.

Tajribaning tozaligi uchun men uskunani qayta ishga tushiraman, hujum qilingan mashinada mitmcanary va hujum qilayotganda Bettercap-ni ishga tushiraman. Shu bilan birga, 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:

Sudocap -X

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

Lekin bu buyruqni bajarish:

sudo bettercap -X --proksi

Hujum qilingan mashinada u o'rtadagi odam hujumi haqida juda ko'p ogohlantirishlarni keltirib chiqaradi:

Shunday qilib, o'rtadagi odam hujumi vositasi qanchalik funktsional bo'lsa, u tirbandlikda shunchalik ko'p iz qoldiradi. Mitmkanariydan amaliy foydalanish uchun quyidagi shartlar bajarilishi kerak:

  • trafikni uzatishda vositachi yo'qligiga ishonch hosil qilganingizda ishonchli tarmoqda dastlabki so'rovlarni amalga oshirish;
  • 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 yozishmalar tayinlangan ARP keshidagi o'zgarishlarni kuzatish mexanizmiga asoslangan.

Bunday dasturlarga misol sifatida arpwatch, arpalert va ko'plab yangi dasturlar kiradi. 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

Hujum qiluvchi mashinada Ettercap-ni ishga tushiring va ARP spoofingni boshlang. Hujum qilingan mashinada biz quyidagilarni kuzatamiz:

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

Haqiqiy vaqtda ARP aldashini aniqlashning yana bir vositasi Ettercap plaginining o'zi deb ataladi arp_cop. Hujum qilingan mashinada Ettercap-ni quyidagicha ishga tushiring:

sudo ettercap -TQP arp_cop ///

Va tajovuzkorda keling, ARP-etchingni boshlaylik. Ogohlantirishlar hujum qilingan mashinada darhol paydo bo'la boshlaydi:

3. DNS Spoofing Detection

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

Bular. shifrlangan kanal orqali (masalan, Tor orqali) tekshirishingiz yoki nostandart sozlamalardan foydalanishingiz kerak (UDP o'rniga boshqa port, TCP). XiaoxiaoPu-dan sans dasturi taxminan bu uchun mo'ljallangan (hech bo'lmaganda, men tushunganimdek). Men ushbu dasturdan DNS so'rovlarini Tor orqali va nostandart sozlamalar orqali DNS serverimga yo'naltirishga muvaffaq bo'ldim. Lekin men uni hech qachon DNS javobini aldash haqidagi xabarlarni ko'rsatishga majbur qila olmadim. Va bu holda, dasturning ma'nosi yo'qoladi.

Men yaxshiroq alternativa topa olmadim.

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

Mahalliy mi-al.ru

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

Men hujum mashinasida yuguraman:

sudo bettercap --dns dns.conf

Va hujum qilinganda men ikkita tekshiruv o'tkazaman:

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

Natijalar:

[elektron pochta himoyalangan]:~$ dig mi-al.ru ;<<>> DiG 9.10.3-P4-Debian<<>> mi-al.ru ;; global variantlar: +cmd ;; javob oldi: ;; ->>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 [elektron pochta himoyalangan]:~$ 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 oldi: ;; ->>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, "oddiy" DNS so'rovi uchun mahalliy IP 192.168.1.48 yuborilgan va atipik portda DNS so'rovida to'g'ri server IP yuborilgan.

Agar server TCP (UDP o'rniga) bilan ishlash uchun sozlangan bo'lsa, unda buyruq quyidagicha ko'rinadi:

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

Shubhasiz, trafikning o'zida DNS-javoblarni kuzatadigan, ularni muqobil manbaga nisbatan ikki marta tekshiradigan va firibgarlik holatlarida signal beradigan vosita yo'q.

O'zingizning masofaviy DNS-ni o'rnatmaslik uchun siz Tor orqali nom serveriga so'rov yuborishingiz mumkin. Barcha Tor trafigi shifrlanganligi sababli, shu tarzda olingan DNS javoblari vositachi uchun juda qiyin. Agar Tor hali o'rnatilmagan bo'lsa, uni o'rnating.

sudo apt-get install 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 ochish /etc/tor/torrc va u erga quyidagi qatorlarni qo'shing:

DNSPort 530 AutomapHostsOnResolve 1 AutomapHostsSuffixes .exit, .onion

530 raqamiga e'tibor bering. Bu port raqami, 530 o'rniga siz boshqa har qanday (bo'sh) portni belgilashingiz mumkin. Eng muhimi, esda tuting.

Yana tekshiramiz:

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

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

Quyidagi skrinshotdan ko'rinib turibdiki, tekshiruv o'tkazilgan mashinaga nisbatan DNS spoofing hujumi amalga oshirilmoqda:

4. Tarmoq interfeyslarini promiscuous rejimda qidirish

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

Ushbu rejimda tarmoq kartasi barcha paketlarni, ular kimga qaratilganligidan qat'i nazar, olish imkonini beradi.

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

Aksariyat operatsion tizimlar noxush rejimni yoqish uchun administrator huquqlarini talab qiladi. Bular. tarmoq kartasini nopok rejimga qo'yish - bu hidlash maqsadiga xizmat qilishi mumkin bo'lgan ongli harakat.

Tarmoq interfeyslarini tajovuzkor rejimda qidirish uchun Ettercap plagini mavjud search_promisc.

Plaginni ishga tushirishga misol:

sudo ettercap -TQP search_promisc ///

Plagin ishlashi to'liq ishonchli emas, tarmoq interfeysi rejimini aniqlashda xatolar bo'lishi mumkin.

Xulosa

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

Hujum "o'rtadagi odam" (ing. Man in the middle, MitM-hujum) - kriptografiyadagi atama, tajovuzkor o'z xohishiga ko'ra muxbirlar tomonidan almashinadigan xabarlarni o'qiy olishi va o'zgartirishi mumkin bo'lgan vaziyatni bildiradi va ularning hech biri buni qila olmaydi. uning kanalda mavjudligi haqida taxmin qiling.

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

Hujum printsipi:

Aytaylik, "A" ob'ekti "B" ob'ektiga ba'zi ma'lumotlarni yuborishni rejalashtirmoqda. "S" ob'ekti qo'llaniladigan ma'lumotlarni uzatish usulining tuzilishi va xususiyatlari, shuningdek, "C" ushlab olishni rejalashtirgan haqiqiy ma'lumotlarni rejalashtirilgan uzatish fakti haqida ma'lumotga ega.

Hujumni amalga oshirish uchun "C" "A" ob'ektiga "B", "B" ob'ektiga esa "A" sifatida "vakil qilinadi". "A" ob'ekti "B" ga ma'lumot yuborayotganiga noto'g'ri ishonib, uni "C" ob'ektiga yuboradi.

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

MitM hujumiga misol:

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

Ammo, bu vaqtda, sniffer bilan trafikni tahlil qilar ekan, bu xabarni va "shifrlash kaliti" so'zlarini payqagan janob X 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 uni Jonning kaliti deb o'ylab, shaxsiy kalitdan foydalangan holda 6666_M, Jonga shifrlangan xabarlarni yuboradi:
Elis: Jon, men muammoga duch keldim va menga zudlik bilan pul kerak, iltimos, mening hisobimga 300 dollar o'tkazing: Z12345. Rahmat. p.s. Mening kalitim: 2222_A

Xabarni olgach, Mister-X o'z kaliti yordamida uning shifrini 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 shubhasiz, hisob raqamiga pul o'tkazadi Z67890...

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

Amalga oshirish:

Xuddi shunday hujum turi 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 tarmoq diapazonini aniqlash imkonini beradi va uzoq masofalardagi aloqa uchun antennani aniq yo'naltirishga yordam beradi. Har bir topilgan 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 kirib borishini tekshirish uchun dasturlar to'plami bo'lib, qiziqish ma'lumotlarini (parollar, elektron pochta manzillari, fayllar va boshqalar) qidirish uchun tarmoqning passiv monitoringini ta'minlaydi, odatda tahlil qilish mumkin bo'lmagan tarmoq trafigini ushlab turadi (masalan, , kommutatsiyalangan tarmoqda), shuningdek, PKI kamchiliklaridan foydalangan holda SSH va HTTPS seanslarini ushlab turish uchun MITM hujumlarini tashkil qilish imkoniyati.

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 qo'pol kuch sindirish, lug'at tanlash, yulduzcha bilan yashirilgan parollarni ko'rish va hk. Axborot paketlarini ushlab qolish va ularni keyingi tahlil qilish, tarmoq suhbatlarini yozish, kesh tahlili va boshqalar orqali parolni aniqlash imkoniyatlari ham mavjud.

Ettercap- bu ko'plab protokollarning faol va passiv tahlilini qo'llab-quvvatlaydigan, shuningdek, mavjud ulanishga o'z ma'lumotlarini "tashlash" va ulanishning sinxronizatsiyasini buzmasdan "tezlikda" filtrlashni qo'llab-quvvatlaydigan mahalliy chekilgan tarmoqlari uchun sniffer, paketlarni to'xtatuvchi va registrator. . 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 - bu simsiz sniffer bo'lib, 802.11 Probe Request ramkalarini passiv tinglash orqali mijozlar va ularning afzal ko'rgan / ishonchli tarmoqlarini topishga imkon beradi. 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 mijozning zaifliklaridan foydalanish uchun ishlatilishi mumkin.

havo jeti- WiFi xakerlik sohasidagi mutaxassislarning fikriga ko'ra, turli xil 802.11 ramkalarini yaratish uchun eng yaxshi vosita bo'lgan dasturlar to'plami. AirJack maxfiy ESSIDni aniqlash, soxta MAC yordamida sessiyani tugatish kadrlarini 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 ishonchli kanal yordamida ochiq shifrlash kalitlarining raqamli imzolarini bir-biriga o'tkazishlari kifoya. Keyin, shifrlash seanslarida kalit imzolarni solishtirganda, ma'lumotlar qaysi kalit bilan shifrlanganligini va kalitlar soxtalashtirilganligini aniqlash mumkin bo'ladi.

18.10.2016 | Vladimir Xazov

FSB, Telekommunikatsiya va ommaviy kommunikatsiyalar vazirligi va Sanoat va savdo vazirligining ruslarning yozishmalarini ushlash va parolini ochish nuqtai nazaridan Yarovaya qonuni qoidalarini amalga oshirish rejalari endi shunchaki rejalar emas, balki allaqachon amalga oshirila boshlandi. WhatsApp, Viber, Facebook Messenger, Telegram, Skype xabarlarini MITM hujumlaridan foydalangan holda ushlash imkoniyati bo‘yicha ekspert xulosasini tayyorlash va bunday vosita prototipini namoyish etish buyrug‘i bilan ishga tushirildi.

Biz oldingi maqolada "qonuniy" MITM hujumini tashkil qilish sxemasi haqida yozgan edik. Bugun biz bunday hujumning printsipi va uni qanday amalga oshirish haqida batafsilroq to'xtalamiz.

MITM hujumi nima

Man In The Middle (MITM) "o'rtadagi odam" deb tarjima qilinadi. Bu atama, tajovuzkor Internet foydalanuvchisi va u kiradigan dastur o'rtasida bo'lganida, tarmoq hujumiga ishora qiladi. Albatta, jismonan emas, balki maxsus dasturiy ta'minot yordamida. U foydalanuvchiga so'ralgan ilova tomonidan taqdim etiladi (u veb-sayt yoki Internet xizmati bo'lishi mumkin), u bilan ishlashga taqlid qiladi, uni normal ishlash va ma'lumot almashish taassurotini qoldiradigan tarzda bajaradi.

Hujum maqsadi - foydalanuvchining shaxsiy ma'lumotlari, masalan, turli tizimlarga kirish ma'lumotlari, bank rekvizitlari va karta raqamlari, shaxsiy yozishmalar va boshqa maxfiy ma'lumotlar. Aksariyat hollarda moliyaviy ilovalar (bank mijozlari, onlayn banklar, to'lov va pul o'tkazmalari xizmatlari), kompaniyaning SaaS xizmatlari, elektron tijorat saytlari (onlayn do'konlar) va tizimga kirish uchun avtorizatsiya talab qilinadigan boshqa saytlar hujumga uchraydi.

Buzg'unchi tomonidan olingan ma'lumotlar turli maqsadlarda, jumladan, noqonuniy pul o'tkazmalari, hisoblarni almashtirish, shaxsiy yozishmalarni ushlash, birovning hisobidan sotib olish, kompromat va shantaj uchun ishlatilishi mumkin.

Bundan tashqari, hisob ma’lumotlarini o‘g‘irlash va tizimni buzishdan so‘ng jinoyatchilar korporativ tarmoqqa intellektual mulk (patentlar, dizaynlar, ma’lumotlar bazalari)ni o‘g‘irlashni tashkil qilish uchun zararli dasturlarni o‘rnatishi va muhim ma’lumotlarni o‘chirib tashlash orqali iqtisodiy zarar keltirishi mumkin.

MITM hujumini sizning yozishmalaringizni etkazib berish paytida xatni ochadigan, shaxsiy foydalanish uchun uning mazmunini qayta yozadigan yoki hatto soxta qo'lyozma orqali o'ziga xos narsalarni qo'shib, keyin konvertni muhrlab, etkazib beradigan pochtachi bilan taqqoslash mumkin. hech narsa bo'lmagandek adresatga. Bundan tashqari, agar siz xat matnini shifrlagan bo'lsangiz va siz qabul qiluvchiga shifrni hal qilish kodini shaxsan xabar qilmoqchi bo'lsangiz, pochtachi o'zini adresat sifatida ko'rsatadi, shunda siz almashtirishni sezmaysiz.

MITM hujumi qanday amalga oshiriladi

MITM hujumini amalga oshirish ikki bosqichdan iborat: tutib olish va shifrni ochish.

  • Tutib olish

Hujumning birinchi bosqichi foydalanuvchidan mo'ljallangan maqsadgacha bo'lgan trafikni ushlab turish va uni tajovuzkor tarmog'iga yo'naltirishdir.

To'xtatib turishning eng keng tarqalgan va eng oson usuli - bu tajovuzkor bepul kirishga ega (parol va avtorizatsiyasiz) Wi-Fi nuqtalarini yaratganda passiv hujum. Foydalanuvchi bunday nuqtaga ulanganda, tajovuzkor u orqali o'tadigan barcha trafikka kirish huquqiga ega va undan ushlab olish uchun istalgan ma'lumotni olishi mumkin.

Ikkinchi usul - faol tutib olish, uni quyidagi variantlardan biri bilan amalga oshirish mumkin:

IP-spoofing– paket sarlavhasidagi maqsadli IP-manzilni tajovuzkor manzili bilan almashtirish. Natijada, foydalanuvchilar so'ralgan URL manziliga o'tish o'rniga, tajovuzkorning saytiga kirishadi.

ARP spoofing– xostning haqiqiy MAC manzilini jabrlanuvchining ARP jadvalidagi tajovuzkor manzili bilan almashtirish. Natijada, foydalanuvchi tomonidan kerakli tugunning IP-manziliga yuborilgan ma'lumotlar tajovuzkorning manziliga tushadi.

DNS spoofing - DNS keshini yuqtirish, DNS serveriga kirish va veb-sayt manzilining mos yozuvini buzish. Natijada, foydalanuvchi so'ralgan saytga kirishga harakat qiladi, lekin DNS serverdan tajovuzkorning sayt manzilini oladi.

  • Shifrni ochish

Tutib qo'ygandan so'ng, ikki tomonlama SSL trafik shifrlanishi kerak va bu foydalanuvchi va u so'ragan resurs shovqinni sezmasligi uchun amalga oshirilishi kerak.

Buning uchun bir nechta usullar mavjud:

HTTPS spoofing– HTTPS protokoli orqali saytga ulanish o‘rnatilganda qurbonning brauzeriga soxta sertifikat yuboriladi. Ushbu sertifikat buzilgan dasturning raqamli imzosini o'z ichiga oladi, bu esa brauzerni tajovuzkor bilan ulanishni ishonchli deb qabul qilishga olib keladi. Bunday aloqa o'rnatilgandan so'ng, tajovuzkor dasturga o'tkazilgunga qadar jabrlanuvchi tomonidan kiritilgan har qanday ma'lumotlarga kirish huquqiga ega.

SSL YAYVON(brauzerning SSL/TLSga qarshi ekspluatatsiyasi) – hujum TLS 1.0 va 1.2 versiyalarida SSL zaifligidan foydalanadi. Jabrlanuvchining kompyuteri veb-ilovaga yuborilgan shifrlangan cookie-fayllarni ushlaydigan zararli JavaScript-ni yuqtirgan. Bu tajovuzkor shifrlangan cookie-fayllarni va autentifikatsiya kalitlarini olishi uchun "shifrlangan matnni blokirovka qilish" shifrlash rejimini buzadi.

SSL o'g'irlash- TCP seansi boshlanishida foydalanuvchi va dasturga soxta autentifikatsiya kalitlarini uzatish. Bu xavfsiz ulanish ko'rinishini beradi, aslida "o'rtadagi odam" sessiyani boshqaradi.

SSL o'chirish- Ilova tomonidan foydalanuvchiga yuborilgan TLS autentifikatsiyasini ushlab turish orqali ulanishni xavfsiz HTTPS dan oddiy HTTP ga pasaytiradi. Buzg'unchi foydalanuvchiga saytga shifrlanmagan kirishni ta'minlaydi, shu bilan birga u o'zi jabrlanuvchining uzatilgan ma'lumotlarini ko'rish imkoniyatini qo'lga kiritib, ilova bilan xavfsiz seansni amalga oshiradi.\

MITM hujumlaridan himoya

MITM hujumlaridan ishonchli himoya, agar foydalanuvchi bir nechta profilaktik harakatlarni amalga oshirsa va veb-ilovalarni ishlab chiquvchilar tomonidan shifrlash va autentifikatsiya usullari kombinatsiyasidan foydalanganda mumkin.

Foydalanuvchi harakatlari:

  • Parol bilan himoyalanmagan Wi-Fi ulanish nuqtalariga ulanishdan saqlaning. Ma'lum kirish nuqtalariga avtomatik ulanishni o'chiring - tajovuzkor Wi-Fi-ni qonuniy deb yashirishi mumkin.
  • Xavfsiz saytga o'tish haqidagi brauzer xabarnomasiga e'tibor bering. Bunday xabar sizni tajovuzkorning soxta saytiga olib kirganingizni yoki qonuniy saytni himoya qilish bilan bog'liq muammolar mavjudligini ko'rsatishi mumkin.
  • Seansni ilova ishlatilmasa (chiqish) bilan yakunlang.
  • Umumiy tarmoqlardan (kafe, park, mehmonxona va boshqalar) maxfiy operatsiyalarni amalga oshirish uchun foydalanmang (biznes yozishmalar, moliyaviy operatsiyalar, onlayn-do'konlarda xaridlar va boshqalar).
  • Kompyuteringizda yoki noutbukingizda zamonaviy antivirusdan foydalaning, bu zararli dasturlardan foydalangan holda hujumlardan himoya qilishga yordam beradi.

Veb-ilovalar va veb-saytlarni ishlab chiquvchilar TLS va HTTPS xavfsiz protokollaridan foydalanishlari kerak, bu esa uzatilgan ma'lumotlarni shifrlash orqali firibgarlik hujumlarini ancha murakkablashtiradi. Shuningdek, ulardan foydalanish avtorizatsiya parametrlari va kirish kalitlarini olish uchun trafikni ushlab turishni oldini oladi.

TLS va HTTPSni nafaqat avtorizatsiya sahifalari uchun, balki saytning boshqa barcha bo'limlari uchun ham himoya qilish yaxshi amaliyot hisoblanadi. Bu tizimga kirgandan so‘ng xavfli sahifalar bo‘ylab harakatlanayotganda tajovuzkor foydalanuvchining cookie-fayllarini o‘g‘irlash ehtimolini kamaytiradi.

MITM hujumlaridan himoya qilish foydalanuvchi va aloqa operatorining zimmasida. Foydalanuvchi uchun eng muhimi, hushyorlikni yo'qotmaslik, Internetga kirishning faqat tasdiqlangan usullaridan foydalanish va shaxsiy ma'lumotlarni uzatish uchun HTTPS shifrlangan saytlarni tanlashdir. Aloqa operatorlariga ma'lumotlar tarmoqlaridagi anomaliyalarni aniqlash va firibgarlik hujumlarining oldini olish uchun Deep Packet Inspection (DPI) tizimlaridan foydalanish tavsiya etilishi mumkin.

Hukumat idoralari MITM hujumidan hujumchilardan farqli ravishda zarar yetkazmaslik uchun fuqarolarni himoya qilish uchun foydalanishni rejalashtirmoqda. Shaxsiy xabarlarni va foydalanuvchilarning boshqa trafiklarini ushlash amaldagi qonun hujjatlari doirasida amalga oshiriladi, terrorizmga, narkotik moddalarning noqonuniy aylanishiga va boshqa taqiqlangan faoliyatga qarshi kurashish bo‘yicha adliya organlarining qarori bilan amalga oshiriladi. Oddiy foydalanuvchilar uchun "qonuniy" MITM hujumlari xavfli emas.

MTProto hozirda zaif bo'lgan mobil aloqada ishonchlilikka va katta hajmdagi fayllarni (masalan, fotosuratlar, videolar va 1 Gb gacha bo'lgan hujjatlar) etkazib berish tezligiga erishish uchun original usuldan foydalanadi. Ushbu hujjat tizimimizning tafsilotlarini tushuntirish va birinchi qarashda tushunish qiyin bo'lgan elementlarni qamrab olish uchun mo'ljallangan.

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

Eslatma: MTProto bilan 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:, va dan foydalanish bo'yicha qo'shimcha sharhlarga qarang tahrirlangan sxema .

Nega X dan foydalanmaysiz [sizning tanlovingiz]

Shubhasiz, bir xil kriptografik maqsadlarga erishishning boshqa yo'llari mavjud bo'lsa-da, biz hozirgi yechim ham xavfsiz, ham yetkazib berish tezligi va barqarorligi bo'yicha xavfsiz bo'lmagan messenjerlardan ustun bo'lishdek ikkinchi darajali maqsadimizga erishadi deb hisoblaymiz.

Nima uchun klassik kriptoalgoritmlarga tayanasiz?

Biz o'tkazuvchanlik va ishlov berish quvvati kamdan-kam uchraydigan kunlardagi 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. Biz ushbu amalga oshirishda ushbu algoritmlardan foydalanamiz, chunki biz ishonganimizdek, ular har qanday ma'lum hujumni muvaffaqiyatsizlikka olib keladi. Biroq, tizimimizni yaxshilash uchun biz buning aksini tasdiqlovchi dalillarni ko'rishdan xursand bo'lardik (hozirgacha bunday holatlar bo'lmagan).

Men xavfsizlik bo'yicha mutaxassisman va sizning protokolingiz xavfli deb hisoblayman.

Siz bizning tanlovimizda ishtirok etishingiz mumkin: Pavel Durov MTProto’ni buzib kirgan birinchi shaxsga 200 000 dollar bitkoin taklif qilmoqda. Siz e'lon va Tanlov bo'yicha FAQ bilan tanishishingiz mumkin. Agar sizda boshqa sharhlar bo'lsa, biz ularni eshitishni xohlaymiz [elektron pochta himoyalangan].

Ma'lum bo'lgan hujumlardan himoya qilish

Ma'lum bo'lgan ochiq matnli hujumlar

Ta'rifga ko'ra, ochiq matn hujumi kriptoanalitik hujumning bir turi bo'lib, unda tajovuzkor matnning ikkala versiyasiga ega: shifrlangan va original. MTProto-da ishlatiladigan AES IGE bunday hujumlarga chidamli. Bundan tashqari, MTProto-dagi oddiy matn har doim server tuzi va sessiya identifikatorini o'z ichiga oladi.

Moslashuvchan ochiq matnli hujum

Ta'rifga ko'ra, adaptiv tanlangan ochiq matn hujumi kriptotahlildagi hujumning bir turi bo'lib, kriptoanalitik aniq matnni tanlashi va tegishli shifrlangan matnni olishi mumkin deb taxmin qiladi. MTProto bunday hujumlardan himoyalangan IGE rejimida AES-dan foydalanadi. IGE blokli-adaptiv hujumlarga nisbatan zaif ekanligi ma'lum, ammo MTProto buni quyidagi 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) - server tuzi (64-bit);
  • xabarning tartib raqami - xabarning tartib raqami;
  • xabar yuborish vaqti - vaqt.

Buning ustiga, ochiq matnni almashtirish uchun siz to'g'ri AES kalitidan va auth_key ga bog'liq ishga tushirish vektoridan foydalanishingiz kerak. Bu MTProto-ni moslashuvchan matnli hujumlarga chidamli qiladi.

Tanlangan shifrlangan matn hujumlari

Ta'rifga ko'ra, shifrlangan matnli hujum - bu kriptografik hujum bo'lib, unda kriptoanalitik shifrlangan matnni taxmin qilish va uni noma'lum kalit yordamida shifrlash 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'lumotlar yordamida 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 shifrlangan matn hujumlarini bekor qiladi.

Takroriy hujumlar

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

"O'rtadagi odam" hujumi (MitM)

Telegramda ikkita aloqa rejimi mavjud: mijoz-server shifrlashdan foydalangan holda oddiy chatlar va uchdan-end shifrlashdan foydalangan holda maxfiy chatlar va o'rtadagi odam hujumlaridan himoyalangan. 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 suhbatdoshlarning mijozlari server dasturiy ta'minotiga ishonsa, ular orasidagi maxfiy suhbatlar server tomonidan o'rtadagi odam hujumlaridan himoyalangan. Ayniqsa, kimlar uchun Yo'q serverga ishonadi, maxfiy kodlarni taqqoslash ilovada mavjud. Kalitlar tasvir sifatida taqdim etiladi. Ko'rsatilgan kalitlarni taqqoslash orqali foydalanuvchilar o'rtadagi odam hujumi sodir bo'lmaganligini tekshirishlari mumkin.

Shifrlash

Siz IGE dan foydalanasizmi? U xakerlik hujumiga uchragan!

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

Moslashuvchan hujumlar MTProto-da hatto nazariy jihatdan imkonsizdir, chunki xabarlarni shifrlash uchun ularni birinchi navbatda to'liq terish kerak, chunki xabarning kaliti uning mazmuniga bog'liq. Noto'g'ri CPA hujumlariga kelsak, IGE CBC kabi ulardan himoyalangan.