Ortada insan nədir. Adam-in-the-middle hücumlarının aşkarlanması (MitM hücumları)

15.05.2022

Orta hücumda olan adam (MitM hücumu) kriptoqrafiyada təcavüzkarın müxbirlər arasında mübadilə edilən mesajları oxuya və dəyişdirə bildiyi və sonuncuların heç birinin kanalda varlığını təxmin edə bilməyəcəyi vəziyyətə aid bir termindir .

Qarşı tərəflər arasında bir kanala qoşulan təcavüzkarın ötürmə protokoluna aktiv şəkildə müdaxilə etdiyi, məlumatları sildiyi, təhrif etdiyi və ya yalan məlumat tətbiq etdiyi bir rabitə kanalını pozma üsulu.

Hücum prinsipi:

Tutaq ki, "A" obyekti bəzi məlumatları "B" obyektinə ötürməyi planlaşdırır. “C” obyekti istifadə olunan məlumatların ötürülməsi metodunun strukturu və xassələri, həmçinin “C”-nin ələ keçirməyi planlaşdırdığı faktiki məlumatın planlı şəkildə ötürülməsi faktı haqqında biliyə malikdir.

Hücum etmək üçün "C" "A"ya "B" kimi, "B"yə isə "A" kimi görünür. "A" obyekti səhvən "B"yə məlumat göndərdiyinə inanaraq onu "C" obyektinə göndərir.

"C" obyekti məlumatı alaraq və onunla bəzi hərəkətləri yerinə yetirərək (məsələn, öz məqsədləri üçün onun surətinin çıxarılması və ya dəyişdirilməsi) məlumatları alıcının özünə göndərir - "B"; “B” obyekti isə öz növbəsində məlumatın birbaşa “A”dan alındığına inanır.

MitM hücumunun nümunəsi:

Deyək ki, Alisin maliyyə problemləri var və ani mesajlaşma proqramından istifadə edərək, mesaj göndərərək Condan bir məbləğ istəmək qərarına gəlib:
Alice: John, salam!
Alice: Zəhmət olmasa mənə şifrələmə açarını göndərin, kiçik bir xahişim var!
John: salam! Bir saniyə gözləyin!

Lakin bu zaman snayferdən istifadə edərək trafiki təhlil edən cənab X bu mesajı görüb və “şifrələmə açarı” sözləri maraq doğurub. Buna görə də o, aşağıdakı mesajları tutmaq və lazım olan məlumatlarla əvəz etmək qərarına gəldi və aşağıdakı mesajı aldıqda:
John: Budur mənim açarım: 1111_D

O, Conun açarını öz açarı ilə dəyişdi və Alisə mesaj göndərdi:
John: Budur mənim açarım: 6666_M

Alice, xəbərsiz və John'un açarı olduğunu düşünərək, şəxsi açardan istifadə edir 6666_M, Cona şifrəli mesajlar göndərir:
Alice: Con, problemlərim var və mənə təcili pul lazımdır, zəhmət olmasa hesabıma 300 dollar köçürün: Z12345. təşəkkür edirəm. p.s. Mənim açarım: 2222_A

Mesajı aldıqdan sonra cənab X öz açarından istifadə edərək onun şifrəsini açır, oxuyur və sevinərək Alisin hesab nömrəsini və şifrələmə açarını özününki kimi dəyişir, mesajı açarla şifrələyir. 1111_D, və Cona mesaj göndərir:
Alice: Con, problemlərim var və mənə təcili pul lazımdır, zəhmət olmasa hesabıma 300 dollar köçürün: Z67890. təşəkkür edirəm. p.s. Mənim açarım: 6666_A

Mesajı aldıqdan sonra Con açardan istifadə edərək onun şifrəsini açır 1111_D, və hətta tərəddüd etmədən hesaba pul köçürəcək Z67890...

Beləliklə, cənab X ortada olan adamın hücumundan istifadə edərək 300 dollar qazandı, lakin Alice indi pulu almadığını izah etməli olacaq... Bəs Con? Con Alisa onları göndərdiyini sübut etməlidir...

İcra:

Bu tip hücum bəzilərində istifadə olunur proqram məhsullarışəbəkəyə qulaq asmaq üçün, məsələn:
NetStumbler- haqqında bir çox faydalı məlumat toplaya biləcəyiniz bir proqram simsiz şəbəkə və onun fəaliyyəti ilə bağlı bəzi problemləri həll edir. NetStumbler sizə şəbəkənizin diapazonunu təyin etməyə imkan verir və uzun məsafəli rabitə üçün antennanızı dəqiq istiqamətləndirməyə kömək edir. Tapılan hər bir giriş nöqtəsi üçün MAC ünvanını, siqnal-küy nisbətini, xidmətin adını və onun təhlükəsizlik dərəcəsini öyrənə bilərsiniz. Trafik şifrələnməyibsə, o zaman proqramın icazəsiz əlaqələri aşkar etmək qabiliyyəti faydalı olacaq.

dsniff- maraqlı məlumatların (parollar, ünvanlar) axtarışı üçün passiv şəbəkə monitorinqini təmin edən şəbəkə auditi və nüfuz testi üçün proqramlar toplusudur. e-poçt, fayllar və s.), təhlil üçün adətən əlçatmaz olan şəbəkə trafikinin tutulması (məsələn, dəyişdirilmiş şəbəkədə), həmçinin PKI qüsurlarından istifadə etməklə SSH və HTTPS seanslarının qarşısını almaq üçün MITM hücumlarını təşkil etmək imkanı.

Qabil və Habil - pulsuz proqramüçün itirilmiş parolları bərpa etməyə imkan verir əməliyyat sistemləri Windows ailəsi. Bir neçə bərpa rejimi dəstəklənir: kobud güc sındırma, lüğət seçimi, ulduzlarla gizlədilmiş parollara baxmaq və s. Həmçinin məlumat paketlərinin tutulması və onların sonrakı təhlili, şəbəkə danışıqlarının qeyd edilməsi, keş analizi və s. yolu ilə parolun müəyyən edilməsi variantları da mövcuddur.

Ettercap- çoxlu protokolların aktiv və passiv təhlilini dəstəkləyən yerli Ethernet şəbəkələri üçün sniffer, paket ələ keçirən və yazıcıdır, həmçinin öz məlumatlarınızı mövcud bağlantıya “atmaq” və əlaqəni pozmadan “tezliklə” filtrləmək mümkündür. sinxronizasiya. Proqram SSH1, HTTPS və digər təhlükəsiz protokolları ələ keçirməyə imkan verir və aşağıdakı protokollar üçün parolların şifrəsini açmaq imkanı verir: 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 müştərilərin təhlükəsizliyini qiymətləndirmək üçün kommunal proqramlar toplusu, 802.11 Probe Sorğu çərçivələrini passiv dinləməklə müştəriləri və onların üstünlük verdiyi/etibar edilən şəbəkələrini aşkar etməyə imkan verən simsiz snifferdir. Daha sonra avtomatik olaraq qoşula biləcəyi tələb olunan şəbəkələrdən biri üçün saxta giriş nöqtəsi yaradıla bilər. Yüksək səviyyəli saxta xidmətlər şəxsi məlumatları oğurlamaq və ya hostda müştəri zəifliklərindən istifadə etmək üçün istifadə edilə bilər.

AirJack- WiFi hacking sahəsində mütəxəssislərin fikrincə, proqramlar toplusu ən yaxşı vasitədir müxtəlif 802.11 çərçivələri yaratmaq üçün. AirJack gizli ESSID-ləri aşkar etmək, saxta MAC ilə sessiyanın dayandırılması çərçivələrini göndərmək, MitM hücumlarını həyata keçirmək və onu dəyişdirmək üçün nəzərdə tutulmuş bir sıra kommunal proqramları ehtiva edir.

Qarşılıqlı tədbirlər:

Bu tip hücumların qarşısını almaq üçün “A” və “B” abunəçiləri yalnız etibarlı kanaldan istifadə edərək bir-birlərinə məlumat ötürməlidirlər. rəqəmsal imzalar ictimai şifrələmə açarları. Daha sonra şifrələmə seanslarında açar imzaları müqayisə edərkən verilənlərin şifrlənməsi üçün hansı açardan istifadə edildiyini və açarların dəyişdirilib-deyişilmədiyini müəyyən etmək mümkün olacaq.

İstədiyiniz nəticəni əldə etməyin demək olar ki, həmişə bir neçə yolu var. Bu, informasiya təhlükəsizliyi sahəsinə də aiddir. Bəzən bir məqsədə çatmaq üçün kobud güc tətbiq edə, deşiklər axtara və istismarları özünüz inkişaf etdirə və ya şəbəkə üzərindən ötürülənləri dinləyə bilərsiniz. Üstəlik son variant tez-tez optimaldır. Buna görə də bu gün biz bunun üçün MITM hücumlarından istifadə edərək, şəbəkə trafikindən bizim üçün dəyərli olan məlumatları tutmağa kömək edəcək vasitələrdən danışacağıq.

MITMf

Ən maraqlı namizədlərdən biri ilə başlayaq. Bu, həyata keçirmək üçün bütöv bir çərçivədir adam-in-the-orta hücumları, sergio-proxy üzərində qurulmuşdur. Bu yaxınlarda daxil edilmişdir Kali Linux. Onu özünüz quraşdırmaq üçün deponu klonlayın və bir neçə əmri yerinə yetirin:

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

# pip install -r requirements.txt

Pluginlər vasitəsilə genişləndirilə bilən bir arxitekturaya malikdir. Əsas olanlar arasında aşağıdakıları qeyd etmək olar:

  • Spoof - ARP/DHCP saxtakarlığından, ICMP yönləndirmələrindən istifadə edərək trafiki yönləndirməyə və DNS sorğularını dəyişdirməyə imkan verir;
  • Sniffer - bu plagin müxtəlif protokollar üçün giriş cəhdlərini izləyir;
  • BeEFAutorun - OS və müştəri brauzerinin növü əsasında BeEF modullarını avtomatik işə salmağa imkan verir;
  • AppCachePoison - önbelleğe zəhərlənmə hücumu həyata keçirir;
  • SessionHijacking - sessiyaları oğurlayır və nəticədə yaranan kukiləri Firefly profilində saxlayır;
  • BrowserProfiler - brauzer tərəfindən istifadə olunan plaginlərin siyahısını almağa çalışır;
  • FilePwn - Backdoor Factory və BDFProxy istifadə edərək HTTP vasitəsilə göndərilən faylları əvəz etməyə imkan verir;
  • Inject - HTML səhifəsinə ixtiyari məzmunu yeridir;
  • jskeylogger - JavaScript keyloggerini müştəri səhifələrinə yerləşdirir.

Bu funksionallıq sizə qeyri-kafi görünürsə, o zaman müvafiq genişləndirmə tətbiq etməklə hər zaman öz funksiyanızı əlavə edə bilərsiniz.

PuttyRider

Diqqətə layiq başqa bir yardım proqramı. Düzdür, bu gün nəzərdən keçirilən bütün digər vasitələrdən fərqli olaraq, o, çox yüksək ixtisaslaşmışdır. Layihə müəllifinin özünün dediyi kimi, onu belə bir yardım proqramı yaratmağa ruhlandırıb ki, penetrasiya testləri zamanı ən vacib verilənlər inzibatçıların SSH/Telnet/rlogin vasitəsilə qoşulduğu Linux/UNIX serverlərində yerləşirdi. Üstəlik, əksər hallarda idarəçilərin maşınına daxil olmaq hədəf serverə daxil olmaqdan daha asan idi. Sistem administratorunun maşınına daxil olduqdan sonra, PuTTY-nin işlədiyinə əmin olmaq və bu alətdən istifadə edərək təcavüzkar üçün arxa körpü qurmaq qalır.

Kommunal sizə nəinki admin ilə “rabitə” tutmağa imkan verir uzaq server(parollar daxil olmaqla), həm də verilmiş seans daxilində ixtiyari qabıq əmrlərini yerinə yetirir. Üstəlik, bütün bunlar istifadəçi (administrator) üçün tamamilə şəffaf şəkildə baş verəcəkdir. Texniki detallarla, məsələn, PuTTY-nin prosesə necə tətbiq olunduğu ilə maraqlanırsınızsa, müəllifin təqdimatını oxumağı məsləhət görürəm.

Səkkiz ildən çox əvvəl doğulmuş olduqca köhnə bir kommunal. Kukiləri oğurlamaqla seansları klonlaşdırmaq üçün nəzərdə tutulub. Sessiyaları qaçırmaq üçün o, hostları aşkar etmək (açıq simsiz şəbəkəyə və ya mərkəzə qoşulmuşdursa) və ARP zəhərlənməsini həyata keçirmək üçün əsas bacarıqlara malikdir. Yeganə problem odur ki, bu gün səkkiz il əvvəlkindən fərqli olaraq, Yahoo və ya Facebook kimi demək olar ki, bütün böyük şirkətlər SSL şifrələməsindən istifadə edirlər ki, bu da bu aləti tamamilə yararsız edir. Buna baxmayaraq, İnternetdə hələ də SSL-dən istifadə etməyən kifayət qədər resurs var, ona görə də yardım proqramını silmək hələ tezdir. Onun üstünlüklərinə onun Firefox-a avtomatik inteqrasiyası və ələ keçirilən hər bir sessiya üçün ayrıca profil yaratması daxildir. Mənbə kodu repozitoriyada mövcuddur və aşağıdakı əmrlər ardıcıllığından istifadə edərək onu özünüz qura bilərsiniz:

# 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ğrusu

# 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_admin=eip sessionthief

ProxyFuzz

ProzyFuzz-un MITM hücumları ilə birbaşa əlaqəsi yoxdur. Adından da təxmin edə bildiyiniz kimi, alət tündləşmə üçün nəzərdə tutulub. Bu, Python-da həyata keçirilən, şəbəkə trafik paketlərinin məzmununu təsadüfi olaraq dəyişdirən kiçik qeyri-deterministik şəbəkə fuzzeridir. Dəstəkləyir TCP protokolları və UDP. Siz onu yalnız bir tərəfi bükmək üçün konfiqurasiya edə bilərsiniz. Bəzi şəbəkə proqramlarını (və ya protokolunu) tez sınaqdan keçirmək və PoC-ni inkişaf etdirmək lazım olanda bu, lazımlı olur. İstifadə nümunəsi:

Python proxyfuzz -l -r -səh

python proxyfuzz -l -r -səh

Seçimlərin siyahısına aşağıdakılar daxildir:

  • w - fuzzing başlamazdan əvvəl göndərilən sorğuların sayını müəyyən edir;
  • c - yalnız müştəri (əks halda hər iki tərəf) fuzz;
  • s - yalnız serveri gizləyin (əks halda hər iki tərəf);
  • u - UDP protokolu (əks halda TCP istifadə olunur).

The Middleler

DEF CON konfransında müxtəlif protokollara MITM hücumlarının aparılması üçün yardım proqramı təqdim edilmişdir. Alfa versiyası HTTP protokolunu dəstəkləyirdi və arsenalında üç gözəl plagin var idi:

  • plugin-beef.py - yerli şəbəkədən gələn istənilən HTTP sorğusuna Brauzer İstismar Çərçivəsini (BeEF) yeridir;
  • plugin-metasploit.py - Metasploit-dən brauzer istismarlarını yükləyən şifrələnməmiş (HTTP) sorğulara IFRAME-i yerləşdirir;
  • plugin-keylogger.py - HTTPS üzərindən təqdim ediləcək bütün mətn sahələri üçün JavaScript onKeyPress hadisə idarəedicisini yerləşdirir və bu, brauzerin istifadəçi tərəfindən daxil edilmiş parolu bütün forma təqdim edilməmişdən əvvəl hər simvol xarakterli təcavüzkarın serverinə göndərməsinə səbəb olur.

Middleler yalnız avtomatik analiz etmir şəbəkə trafiki və orada kukilər tapır, həm də müstəqil olaraq müştəridən tələb edir, yəni proses maksimuma qədər avtomatlaşdırılır. Proqram bütün qorunmayan hesabların yığılmasına zəmanət verir kompüter şəbəkəsi(və ya ictimai qaynar nöqtə) kimin trafikinə çıxışı var. Proqramın düzgün işləməsi üçün sistemdə aşağıdakı paketlər quraşdırılmalıdır: Scapy, libpcap, readline, libdnet, python-netfilter. Təəssüf ki, repozitoriya uzun müddətdir ki, yenilənməyib, ona görə də özünüz yeni funksionallıq əlavə etməli olacaqsınız.

HTTP trafikini interaktiv şəkildə yoxlamağa və dəyişdirməyə imkan verən konsol yardım proqramı. Bu cür bacarıqlar sayəsində kommunal yalnız pentesters/hakerlər tərəfindən deyil, həm də ondan istifadə edən adi tərtibatçılar tərəfindən, məsələn, veb proqramlarını sazlamaq üçün istifadə olunur. Onun köməyi ilə qəbul edə bilərsiniz ətraflı məlumat tətbiqin hansı sorğuları etdiyi və hansı cavabları aldığı haqqında. mitmproxy həmçinin bəzi REST API-lərinin, xüsusən də zəif sənədləşdirilənlərin işləmə xüsusiyyətlərini öyrənməyə kömək edə bilər.

Quraşdırma olduqca sadədir:

$ sudo atitude quraşdırma mitmproxy

Qeyd etmək lazımdır ki, mitmproxy həm də müştəriyə öz imzası olan sertifikat verməklə HTTPS trafikini kəsməyə imkan verir. Yaxşı nümunə Trafikin tutulmasını və modifikasiyasını necə konfiqurasiya edəcəyinizi öyrənə bilərsiniz.

Dsniff

Yaxşı, bu yardım proqramı, ümumiyyətlə, eşitdiyiniz anda ağlınıza gələn ilk şeylərdən biridir
"MITM hücumu". Alət olduqca köhnədir, lakin aktiv şəkildə yenilənməyə davam edir, bu yaxşı xəbərdir. Mövcud olduğu on dörd il ərzində onun imkanları haqqında ətraflı danışmağın mənası yoxdur, İnternetdə bir dəfədən çox işıqlandırılıb; Məsələn, belə bir bələdçidə:

və ya veb saytımızdan təlimatlar:

Nəhayət..

Həmişə olduğu kimi, biz bütün kommunal xidmətlərə baxmamışıq, lakin yalnız ən populyar olanları bir gün danışa biləcəyimiz çox az tanınan layihələr var; Gördüyünüz kimi, MITM hücumlarını həyata keçirmək üçün alət çatışmazlığı yoxdur və bu, çox tez-tez baş vermir, Windows üçün əla vasitələrdən biri tətbiq olunur. Nix sistemləri haqqında deyiləcək bir şey yoxdur - bütün müxtəliflik. Beləliklə, düşünürəm ki, siz həmişə oğurluq üçün düzgün alət tapa bilərsiniz
digər insanların etimadnamələri. Oops, yəni sınaq üçün.

Hücum prinsipi

Hücum adətən rabitə kanalını dinləməklə başlayır və kriptoanalitikin ələ keçirilən mesajı əvəz etməyə və çıxarmağa çalışması ilə başa çatır. faydalı məlumat, onu bəzi xarici resursa yönləndirin.

Tutaq ki, A obyekti bəzi məlumatları B obyektinə ötürməyi planlaşdırır. C obyekti istifadə olunan məlumatların ötürülməsi metodunun strukturu və xassələri, həmçinin C-nin ələ keçirməyi planlaşdırdığı faktiki məlumatın planlı şəkildə ötürülməsi faktı haqqında biliyə malikdir. Hücum etmək üçün C A obyektinə B, B obyektinə isə A kimi “görünür”. A obyekti səhvən B-yə məlumat göndərdiyinə inanaraq onu C obyektinə göndərir. C obyekti məlumatı qəbul edərək, və onunla bəzi hərəkətləri yerinə yetirir (məsələn, öz məqsədləri üçün köçürmək və ya dəyişdirmək) məlumatları alıcının özünə yönləndirir - B; B obyekti isə öz növbəsində məlumatın birbaşa A-dan alındığını hesab edir.

Nümunə hücum

Zərərli kodun yeridilməsi

Ortadakı adam hücumu kriptoanalitikə kodunu daxil etməyə imkan verir e-poçtlar, SQL ifadələri və veb səhifələri (yəni, SQL inyeksiyalarına, HTML/skript inyeksiyalarına və ya XSS hücumlarına imkan verir) və hətta istifadəçi tərəfindən yüklənmiş dəyişiklikləri ikili fayllar daxil olmaq üçün hesab istifadəçi və ya istifadəçi tərəfindən İnternetdən yüklənmiş proqramın davranışını dəyişdirmək.

Aşağı səviyyəli hücum

“Düşürmə hücumu” termini kriptoanalitikin istifadəçini uyğunluq səbəbi ilə hələ də dəstəklənən daha az təhlükəsiz funksiyalardan, protokollardan istifadə etməyə məcbur etdiyi hücuma aiddir. Bu tip hücum SSH, IPsec və PPTP protokollarında həyata keçirilə bilər.

SSH V2 əvəzinə SSH V1

Təcavüzkar server və müştəri arasında əlaqə qurulduqda əlaqə parametrlərini dəyişməyə cəhd edə bilər. Blackhat Conference Europe 2003-də verilən nitqə görə, kriptoanalitik SSH sessiyası üçün versiya nömrəsini "1.99" "1.51"ə dəyişdirərək müştərini SSH2 əvəzinə SSH1 sessiyasını başlatmağa "məcbur edə" bilər, bu da SSH V1-dən istifadə etmək deməkdir. . SSH-1 protokolunda kriptoanalitik tərəfindən istifadə edilə bilən zəifliklər var.

IPsec

Bu hücum ssenarisində kriptoanalitik öz qurbanını aldadır ki, IPsec sessiyası digər tərəfdən (server) başlaya bilməz. Bu, əgər host maşın geri qaytarma rejimində işləyirsə, mesajların açıq şəkildə göndərilməsi ilə nəticələnir.

PPTP

PPTP sessiyasının parametrləri ilə bağlı danışıqlar mərhələsində təcavüzkar qurbanı daha az təhlükəsiz PAP autentifikasiyasından, MSCHAP V1-dən (yəni MSCHAP V2-dən 1-ci versiyaya “geri döndərmək”dən) istifadə etməyə və ya ümumiyyətlə şifrələmədən istifadə etməyə məcbur edə bilər.

Təcavüzkar qurbanını PPTP seans parametrləri ilə bağlı danışıqlar mərhələsini təkrarlamağa (Tədir-Akk paketi göndərməyə), mövcud tuneldən parolu oğurlamağa və hücumu təkrarlamağa məcbur edə bilər.

Şifrələmə kömək edəcəkmi?

Standart HTTP əməliyyatı halını nəzərdən keçirək. Bu halda, təcavüzkar orijinal TCP bağlantısını iki yenisinə çox asanlıqla ayıra bilər: biri özü ilə müştəri arasında, digəri isə özü ilə server arasında. Bunu etmək olduqca asandır, çünki çox nadir hallarda müştəri ilə server arasında əlaqə birbaşa olur və əksər hallarda onlar bir sıra ara serverlər vasitəsilə birləşdirilir. Bu serverlərdən hər hansı birində MITM hücumu həyata keçirilə bilər.

Bununla belə, əgər müştəri və server HTTPS-dən, şifrələməni dəstəkləyən protokoldan istifadə edərək ünsiyyət qurursa, ortada adam hücumu da həyata keçirilə bilər. Bu tip əlaqə sorğuları şifrələmək üçün TLS və ya SSL istifadə edir ki, bu da kanalı iyləmə və MITM hücumlarından qoruyur. Təcavüzkar hər bir TCP bağlantısı üçün iki müstəqil SSL seansı yarada bilər. Müştəri təcavüzkarla SSL bağlantısı qurur, o da öz növbəsində serverlə əlaqə yaradır. Belə hallarda, brauzer adətən sertifikatın etibarlı sertifikatlaşdırma orqanı tərəfindən imzalanmadığını xəbərdar edir, lakin adi istifadəçi bu xəbərdarlığa asanlıqla məhəl qoymur. Bundan əlavə, təcavüzkarın sertifikatlaşdırma orqanı tərəfindən imzalanmış sertifikatı ola bilər. Beləliklə, HTTPS protokolu MITM hücumlarından etibarlı hesab edilə bilməz.

MITM hücumunun aşkarlanması

Adam-in-the-middle hücumunu aşkar etmək üçün şəbəkə trafikini təhlil etməlisiniz. Məsələn, SSL hücumunu aşkar etmək üçün aşağıdakı parametrlərə diqqət yetirməlisiniz:

  • Server IP ünvanı
  • DNS server
  • X.509 - server sertifikatı
    • Sertifikat özünü imzalayır?
    • Sertifikat imzalanıb?
    • Sertifikat ləğv edilibmi?
    • Sertifikat bu yaxınlarda dəyişib?
    • İnternetdəki digər müştərilər də eyni sertifikatı alıblarmı?

MITM hücumunun tətbiqi

Sadalanan proqramlar ortada adam hücumlarını həyata keçirmək, həmçinin onları aşkar etmək və sistemdə zəiflikləri yoxlamaq üçün istifadə edilə bilər.

Ədəbiyyatda nümunə

Aydın ədəbi nümunəni A. S. Puşkinin "Çar Saltanın nağılı" əsərində görmək olar, burada üç "ortada" görünür: toxucu, aşpaz və Babarixa. Məhz onlar çara ünvanlanan məktubları və onun cavab yazışmalarını əvəz edir.

Həmçinin baxın

  • Aspidistra (İngilis dili) - İkinci Dünya Müharibəsi zamanı "işğal" zamanı istifadə edilən İngilis radio ötürücüsü, MITM hücumunun bir variantı.
  • Babinqton süjeti (İngilis dili) - I Elizabetə qarşı sui-qəsd zamanı Uolsinqem yazışmaları ələ keçirdi.

Digər hücumlar

  • “Brauzerdəki adam” təcavüzkarın əməliyyat parametrlərini dərhal dəyişdirə və qurban üçün tamamilə şəffaf səhifələri dəyişdirə bildiyi bir hücum növüdür.
  • Meet-in-the-middle hücumu, ad günü hücumu kimi, zaman və yaddaş arasında mübadilədən istifadə edən kriptoqrafik hücumdur.
  • "Orta hücumda miss" - təsirli üsul qeyri-mümkün diferensial kriptoanaliz deyilən.
  • Relay hücumu ələ keçirilmiş mesajın mesajın nəzərdə tutulduğu şəxsə deyil, etibarlı alıcıya yönləndirilməsinə əsaslanan MITM hücumunun variantıdır.
  • Rootkit təcavüzkarın varlığının izlərini gizlətmək üçün nəzərdə tutulmuş proqramdır.

Ədəbiyyat

Bağlantılar


Wikimedia Fondu.

2010.

    Digər lüğətlərdə "Ortadakı Adam" sözünün nə olduğuna baxın:

İstədiyiniz nəticəni əldə etməyin demək olar ki, həmişə bir neçə yolu var. Bu, informasiya təhlükəsizliyi sahəsinə də aiddir. Bəzən bir məqsədə çatmaq üçün kobud güc tətbiq edə, deşiklər axtara və istismarları özünüz inkişaf etdirə və ya şəbəkə üzərindən ötürülənləri dinləyə bilərsiniz. Üstəlik, son seçim çox vaxt optimaldır. Buna görə də bu gün biz bunun üçün MITM hücumlarından istifadə edərək, şəbəkə trafikindən bizim üçün dəyərli olan məlumatları tutmağa kömək edəcək vasitələrdən danışacağıq.

MITMf

Ən maraqlı namizədlərdən biri ilə başlayaq. Bu, sergio-proxy əsasında qurulmuş adam-in-the-middle hücumlarının aparılması üçün bütöv bir çərçivədir. Bu yaxınlarda Kali Linux-a daxil edilmişdir. Onu özünüz quraşdırmaq üçün deponu klonlayın və bir neçə əmri yerinə yetirin:

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

Pluginlər vasitəsilə genişləndirilə bilən bir arxitekturaya malikdir. Əsas olanlar arasında aşağıdakıları qeyd etmək olar:

  • Spoof - ARP/DHCP saxtakarlığından, ICMP yönləndirmələrindən istifadə edərək trafiki yönləndirməyə və DNS sorğularını dəyişdirməyə imkan verir;
  • Sniffer - bu plagin müxtəlif protokollar üçün giriş cəhdlərini izləyir;
  • BeEFAutorun - OS və müştəri brauzerinin növü əsasında BeEF modullarını avtomatik işə salmağa imkan verir;
  • AppCachePoison - önbelleğe zəhərlənmə hücumu həyata keçirir;
  • SessionHijacking - sessiyaları oğurlayır və nəticədə yaranan kukiləri Firefly profilində saxlayır;
  • BrowserProfiler - brauzer tərəfindən istifadə olunan plaginlərin siyahısını almağa çalışır;
  • FilePwn - Backdoor Factory və BDFProxy istifadə edərək HTTP vasitəsilə göndərilən faylları əvəz etməyə imkan verir;
  • Inject - HTML səhifəsinə ixtiyari məzmunu yeridir;
  • jskeylogger - JavaScript keyloggerini müştəri səhifələrinə yerləşdirir.

Bu funksionallıq sizə qeyri-kafi görünürsə, o zaman müvafiq genişləndirmə tətbiq etməklə hər zaman öz funksiyanızı əlavə edə bilərsiniz.

PuttyRider

Diqqətə layiq başqa bir yardım proqramı. Düzdür, bu gün nəzərdən keçirilən bütün digər vasitələrdən fərqli olaraq, o, çox yüksək ixtisaslaşmışdır. Layihə müəllifinin özünün dediyi kimi, onu belə bir yardım proqramı yaratmağa ruhlandırıb ki, penetrasiya testləri zamanı ən vacib verilənlər inzibatçıların SSH/Telnet/rlogin vasitəsilə qoşulduğu Linux/UNIX serverlərində yerləşirdi. Üstəlik, əksər hallarda idarəçilərin maşınına daxil olmaq hədəf serverə daxil olmaqdan daha asan idi. Sistem administratorunun maşınına daxil olduqdan sonra, PuTTY-nin işlədiyinə əmin olmaq və bu alətdən istifadə edərək təcavüzkar üçün arxa körpü qurmaq qalır.


Utilit sizə yalnız admin və uzaq server (parollar daxil olmaqla) arasında "əlaqə" tutmağa deyil, həm də müəyyən bir seans daxilində ixtiyari qabıq əmrlərini yerinə yetirməyə imkan verir. Üstəlik, bütün bunlar istifadəçi (administrator) üçün tamamilə şəffaf şəkildə baş verəcəkdir. Texniki detallarla, məsələn, PuTTY-nin prosesə necə tətbiq olunduğu ilə maraqlanırsınızsa, müəllifin təqdimatını oxumağı məsləhət görürəm.


Səkkiz ildən çox əvvəl doğulmuş olduqca köhnə bir kommunal. Kukiləri oğurlamaqla seansları klonlaşdırmaq üçün nəzərdə tutulub. Sessiyaları qaçırmaq üçün o, hostları aşkar etmək (açıq simsiz şəbəkəyə və ya mərkəzə qoşulmuşdursa) və ARP zəhərlənməsini həyata keçirmək üçün əsas bacarıqlara malikdir. Yeganə problem odur ki, bu gün səkkiz il əvvəlkindən fərqli olaraq, Yahoo və ya Facebook kimi demək olar ki, bütün böyük şirkətlər SSL şifrələməsindən istifadə edirlər ki, bu da bu aləti tamamilə yararsız edir. Buna baxmayaraq, İnternetdə hələ də SSL-dən istifadə etməyən kifayət qədər resurs var, ona görə də yardım proqramını silmək hələ tezdir. Onun üstünlüklərinə onun Firefox-a avtomatik inteqrasiyası və ələ keçirilən hər bir sessiya üçün ayrıca profil yaratması daxildir. Mənbə kodu depoda mövcuddur və siz aşağıdakı əmrlər ardıcıllığından istifadə edərək onu özünüz yarada bilərsiniz:

# 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ğrusu

ProxyFuzz

ProzyFuzz-un MITM hücumları ilə birbaşa əlaqəsi yoxdur. Adından da təxmin edə bildiyiniz kimi, alət tündləşmə üçün nəzərdə tutulub. Bu, Python-da həyata keçirilən, şəbəkə trafik paketlərinin məzmununu təsadüfi olaraq dəyişdirən kiçik qeyri-deterministik şəbəkə fuzzeridir. TCP və UDP protokollarını dəstəkləyir. Siz onu yalnız bir tərəfi bükmək üçün konfiqurasiya edə bilərsiniz. Bəzi şəbəkə proqramlarını (və ya protokolunu) tez sınaqdan keçirmək və PoC-ni inkişaf etdirmək lazım olanda bu, lazımlı olur. İstifadə nümunəsi:

Python proxyfuzz -l -r -səh

Seçimlərin siyahısına aşağıdakılar daxildir:

  • w - fuzzing başlamazdan əvvəl göndərilən sorğuların sayını müəyyən edir;
  • c - yalnız müştəri (əks halda hər iki tərəf) fuzz;
  • s - yalnız serveri gizləyin (əks halda hər iki tərəf);
  • u - UDP protokolu (əks halda TCP istifadə olunur).

The Middleler

DEF CON konfransında müxtəlif protokollara MITM hücumlarının aparılması üçün yardım proqramı təqdim edilmişdir. Alfa versiyası HTTP protokolunu dəstəkləyirdi və arsenalında üç gözəl plagin var idi:

  • plugin-beef.py - yerli şəbəkədən gələn istənilən HTTP sorğusuna Brauzer İstismar Çərçivəsini (BeEF) yeridir;
  • plugin-metasploit.py - Metasploit-dən brauzer istismarlarını yükləyən şifrələnməmiş (HTTP) sorğulara IFRAME-i yerləşdirir;
  • plugin-keylogger.py - HTTPS üzərindən təqdim ediləcək bütün mətn sahələri üçün JavaScript onKeyPress hadisə idarəedicisini yerləşdirir və bu, brauzerin istifadəçi tərəfindən daxil edilmiş parolu bütün forma təqdim edilməmişdən əvvəl hər simvol xarakterli təcavüzkarın serverinə göndərməsinə səbəb olur.

Middleler yalnız avtomatik olaraq şəbəkə trafikini təhlil etmir və orada kukilər tapır, həm də müstəqil olaraq müştəridən onları tələb edir, yəni proses maksimuma qədər avtomatlaşdırılır. Proqram, trafikinə daxil olduğu kompüter şəbəkəsində (və ya ictimai qaynar nöqtədə) bütün qorunmayan hesabların toplanmasına zəmanət verir. Proqramın düzgün işləməsi üçün sistemdə aşağıdakı paketlər quraşdırılmalıdır: Scapy, libpcap, readline, libdnet, python-netfilter. Təəssüf ki, repozitoriya uzun müddətdir ki, yenilənməyib, ona görə də özünüz yeni funksionallıq əlavə etməli olacaqsınız.

HTTP trafikini interaktiv şəkildə yoxlamağa və dəyişdirməyə imkan verən konsol yardım proqramı. Bu cür bacarıqlar sayəsində kommunal yalnız pentesters/hakerlər tərəfindən deyil, həm də ondan istifadə edən adi tərtibatçılar tərəfindən, məsələn, veb proqramlarını sazlamaq üçün istifadə olunur. Onun köməyi ilə siz tətbiqin hansı sorğular etdiyi və hansı cavabları aldığı barədə ətraflı məlumat əldə edə bilərsiniz. mitmproxy həmçinin bəzi REST API-lərinin, xüsusən də zəif sənədləşdirilənlərin işləmə xüsusiyyətlərini öyrənməyə kömək edə bilər.

Quraşdırma olduqca sadədir:

$ sudo atitude quraşdırma mitmproxy

$ pip quraşdırma mitmproxy

$easy_install mitmproxy

Qeyd etmək lazımdır ki, mitmproxy həm də müştəriyə öz imzası olan sertifikat verməklə HTTPS trafikini kəsməyə imkan verir. Trafikin qarşısının alınması və modifikasiyasının necə qurulacağına dair yaxşı nümunəni burada tapa bilərsiniz.


Intercepter-NG

Bu əfsanəvi alət bizim rəyimizə daxil edilməsəydi, qəribə olardı. Heç vaxt istifadə etməmisinizsə belə, yəqin ki, bu barədə eşitmisiniz (və sadəcə onu daha yaxşı tanımalısınız) - jurnalın səhifələrində tez-tez görünür. Mən onun funksionallığını tam təsvir etməyəcəyəm - birincisi, biz MITM ilə maraqlanırıq, ikincisi, belə bir təsvir bütün məqaləni əhatə edəcəkdir.

Davamı yalnız üzvlər üçün əlçatandır

Seçim 1. Saytdakı bütün materialları oxumaq üçün “sayt” icmasına qoşulun

Müəyyən edilmiş müddət ərzində cəmiyyətə üzvlük sizə BÜTÜN Hacker materiallarına giriş imkanı verəcək, şəxsi məcmu endiriminizi artıracaq və peşəkar Xakep Score reytinqi toplamağa imkan verəcək!

Adam-in-the-middle hücumu vasitəçi kimi trafikə çıxış əldə etməyə yönəlmiş müxtəlif üsulların ümumi adıdır. Bu üsulların geniş çeşidinə görə, bütün mümkün vəziyyətlər üçün işləyəcək bu hücumları aşkar etmək üçün vahid bir alət tətbiq etmək problemlidir. Məsələn, yerli şəbəkəyə adam-in-the-middle hücumunda adətən ARP saxtakarlığından (zəhərlənmə) istifadə olunur. Və bir çox insan-in-the-middle hücum aşkarlama alətləri Ethernet ünvan cütlərindəki dəyişiklikləri izləyir/və ya ARP sorğularını/cavablarını passiv izləməklə şübhəli ARP fəaliyyətini bildirir. Ancaq bu hücum zərərli şəkildə konfiqurasiya edilmiş proksi serverdə, VPN-də və ya ARP zəhərlənməsindən istifadə etməyən digər variantlarda istifadə olunarsa, bu cür vasitələr köməksizdir.

Bu bölmənin məqsədi insan-in-the-middle hücumlarını aşkar etmək üçün bəzi üsulları, eləcə də sizin MitM hücumu ilə hədəf olub-olmadığınızı müəyyən etmək üçün hazırlanmış bəzi alətləri nəzərdən keçirməkdir. Metodologiyaların və tətbiq ssenarilərinin müxtəlifliyinə görə 100% aşkara zəmanət vermək olmaz.

1. Trafik modifikasiyasının aşkarlanması

Artıq qeyd edildiyi kimi, adam-in-the-middle hücumları həmişə ARP saxtakarlığından istifadə etmir. Buna görə də, ARP səviyyəsində fəaliyyət aşkarlanması ən populyar aşkarlama üsulu olsa da, daha çox universal şəkildə trafik modifikasiyasının aşkarlanmasıdır. Mitmcanary proqramı bu işdə bizə kömək edə bilər.

Proqramın işləmə prinsipi ondan ibarətdir ki, o, “nəzarət” sorğuları edir və alınan cavabları saxlayır. Bundan sonra müəyyən fasilələrlə eyni sorğuları təkrarlayır və aldığı cavabları müqayisə edir. Proqram kifayət qədər ağıllıdır və yanlış pozitivlərin qarşısını almaq üçün cavablarda dinamik elementləri müəyyən edir və onları düzgün emal edir. Proqram MitM hücum alətlərinin fəaliyyətinin izlərini aşkar edən kimi bu barədə məlumat verir.

Bəzi vasitələrin necə “miras ala biləcəyinə” dair nümunələr:

  • MITMf, standart olaraq, HTML kodundakı bütün HTTPS URL-lərini HTTP-yə dəyişir. HTTP məzmununu müqayisə etməklə aşkar edilmişdir.
  • Zarp + MITMProxy, MITMProxy, HTTP sıxılmasını təmizləməyə imkan verən funksionallığa malikdir, bu, ötürülən trafikin şəffaflığı üçün istifadə olunur, bu birləşmə əvvəllər mövcud sıxılmanın yox olması ilə aşkar edilir.
  • mDNS cavablarının transformasiyasında qəfil dəyişikliklərlə müəyyən edilən cavab verən: gözlənilməz cavab; cavab daxilidir, lakin xaricidir; cavab gözlənilən IP-dən fərqlidir
  • MITMCanary vs MITMf:

  • MITMCanary vs Responder:

  • MITMCanary vs Zarp + MITMProxy:

Sudo pip quraşdırma Cython sudo apt-get quraşdırma python-kivy python-dbus sudo pip quraşdırma plyer uuid urlopen analiz sorğusu simplejson datetime git clone https://github.com/CylanceSPEAR/mitmcanary.git cd mitmcanary/

Artıq qeyd edildiyi kimi, mitmcanary nəzarət sorğuları ilə işə başlamalıdır. Bunu etmək üçün kataloqa keçin

CD xidməti/

Və faylı işə salın setup_test_persistence.py:

Python2 setup_test_persistence.py

Bu bir az vaxt aparacaq - bitməsini gözləyin. Səhv mesajları olmamalıdır (əgər belədirsə, bəzi asılılıqları itirmisiniz).

Çıxış belə bir şey olacaq:

Mial@HackWare:~/bin/mitmcanary/service$ python2 setup_test_persistence.py Köhnə konfiqurasiya versiyası aşkar edildi (14 əvəzinə 0) Konfiqurasiya təkmilləşdirilir. Təmizləmə jurnalı işə salındı. Təhlil edilir... Təmizləmə tamamlandı!

/home/mial/.kivy/logs/kivy_16-11-01_0.txt v1.9.1 v2.7.12+ daxil olun (defolt, 1 sentyabr 2016, 20:27:38)

Bu proses başa çatdıqdan sonra eyni qovluqda icra edin (bu, fon prosesini başlayacaq):

Python2 main.py

Bundan sonra, yeni bir terminal pəncərəsi açın və mitmcanary ilə son kataloqa keçin. Kataloqum bin/mitmcanary/-dir, ona görə də daxil oluram

CD bin/mitmcanary/

Bu proses başa çatdıqdan sonra eyni qovluqda icra edin (bu, fon prosesini başlayacaq):

və orada edin:

İlk pəncərədə belə bir şey göstərilir: Mial@HackWare:~/bin/mitmcanary/service$ python2 main.py /home/mial/.kivy/logs/kivy_16-11-01_1.txt v1.9.1 v2.7.12+ daxil olun (defolt, 1 sentyabr 2016-cı il, 20:27:38) istifadə edərək

127.0.0.1:3000-də Tuio üçün socket dinləmək üçün 60 saniyə yatmaq 60 saniyə yatmaq 60 saniyə yatmaq 60 saniyə yatmaq 60 saniyə yatmaq 60 saniyə yatmaq 60 saniyə yatmaq

Bunlar. Proqram dəqiqədə bir dəfə nəzarət sorğuları edir və ortada adam hücumunun əlamətlərini axtarır.

İkinci pəncərədə çıxış var + proqramın müəllifləri bu pəncərəni "qrafik interfeys" adlandırırlar:

Proqramın heç bir yanlış xəbərdarlıq vermədiyinə əmin olmaq üçün bir müddət gözləyə və İnternetdə gəzə bilərsiniz. Gəlin cəhd edək klassik proqram

ARP saxtakarlığı ilə müntəzəm MitM hücumuna başlayıram. mitmcanary özünü aşındırmağa cavab vermir. Mitmcanary aləti trafiki özü yaradır, yəni heç bir istifadəçi hərəkəti tələb olunmur. Bir müddət sonra, sonrakı yoxlamalar zamanı təsdiqlənməyən bir xəbərdarlıq görünür. Ancaq oxşar xəbərdarlıq bir neçə dəqiqədən sonra görünür. Əlavə təhlil etmədən bunun yalan pozitiv nümunə olub-olmadığını söyləməkdə çətinlik çəkirəm - buna çox bənzəyir. Tamamilə mümkündür ki, bu xəbərdarlıq trafikin əlavə marşrutlardan keçməsi zərurətindən və ya keyfiyyətsiz internet bağlantımın özəlliklərindən qaynaqlanan rabitə xətası ilə bağlıdır.

Nəticə aydın olmadığı üçün ("bəli"dən daha çox "yox"), gəlin müxtəlif modulları olan Bettercap proqramını sınayaq. Müxtəlif Ettercap və/və ya plaginlərdən istifadə edərkən buna şübhəm yoxdur əlavə proqramlar funksionallığı genişləndirmək üçün mitmcanary üçün də "işıqlandırardıq".

Təcrübənin təmizliyi üçün avadanlığı yenidən işə salıram, hücuma məruz qalan maşında mitmcanary və hücum edəndə Bettercap işlədirəm. Eyni zamanda, hücuma məruz qalan maşında yenidən nəzarət sorğuları etmək lazım deyil - onlar proqramla birlikdə kataloq daxilində faylda saxlanılır. Bunlar. Sadəcə xidməti və qrafik interfeysi işə salın.

Hücum edən maşında təhlilediciləri aktivləşdirərək Bettercap-ı işə salacağıq:

Sudo bettercap -X

Fərdi xəbərdarlıqlar görünür, bunlar da daha çox yalan pozitivlərə bənzəyir.

Ancaq bu əmri yerinə yetirmək:

Sudo bettercap -X --proxy

Hücum edilən maşın zənglərində çox sayda Mümkün adam-in-the-orta hücumu haqqında xəbərdarlıqlar:

Beləliklə, ortada olan adam hücum aləti nə qədər güclüdürsə, trafikdə bir o qədər çox iz buraxır. Mitmcanary-nin praktiki istifadəsi üçün aşağıdakı şərtlər yerinə yetirilməlidir:

  • trafikin ötürülməsində heç bir vasitəçi olmadığına əmin olduqda etibarlı şəbəkədə ilkin sorğular etmək;
  • doğrulama sorğularının edildiyi resursları redaktə edin, çünki peşəkar təcavüzkar istisnalara defolt resurslar əlavə edə bilər ki, bu da onu bu alət üçün görünməz edəcək.

2. ARP saxtakarlığının aşkarlanması (ARP cache zəhərlənməsi)

Çox tez-tez yerli şəbəkəyə adam-in-the-middle hücumu ARP zəhərlənməsi ilə başlayır. Buna görə də MitM hücumlarını aşkar etmək üçün nəzərdə tutulmuş bir çox alətlər Ethernet (MAC ünvanları) və IP ünvanları arasında yazışma təyin edən ARP keşində dəyişikliklərin monitorinqi mexanizminə əsaslanır.

Belə proqramlara misal olaraq arpwatch, arpalert və çoxlu sayda yeni proqramları xatırlaya bilərik. ArpON proqramı nəinki ARP keşində dəyişiklikləri izləyir, həm də onları onlardan qoruyur.

Nümunə olaraq, fonda çəngəllər yaratmadan və poçtla mesaj göndərmədən arpwatch-ı debug rejimində işə salaq. Bunun əvəzinə mesajlar stderr-ə göndərilir (standart səhv çıxışı).

Sudo /usr/sbin/arpwatch -d

Hücum edən maşında Ettercap-ı işə salaq və ARP saxtakarlığına başlayaq. Hücum edilən maşında görürük:

arpwatch proqramı sizə qoşulmuş yeni cihazlar haqqında tez məlumat əldə etməyə kömək edəcək yerli şəbəkə, həmçinin ARP önbelleğinde dəyişikliklər.

Real vaxtda ARP saxtakarlığını aşkar etmək üçün başqa bir vasitə Ettercap-ın özündən bir plagindir. arp_cop. Hücum edilən maşında Ettercap-ı aşağıdakı kimi işə salın:

Sudo ettercap -TQP arp_cop ///

Və təcavüzkarda ARP zəhərlənməsinə başlayacağıq. Hücum edilən maşında dərhal xəbərdarlıqlar görünməyə başlayır:

3. DNS saxtakarlığının aşkarlanması

DNS saxtakarlığı sizinlə təyinat yeriniz arasında trafikinizi dəyişdirə biləcək bir vasitəçinin olduğunu göstərir. DNS qeydlərinin saxtalaşdırıldığını necə aşkar etmək olar? Bunu etməyin ən asan yolu etibar etdiyiniz ad serverinin cavabları ilə müqayisə etməkdir. Amma sorğunuza göndərilən cavabdakı qeydlər də dəyişdirilə bilər...

Bunlar. ya şifrələnmiş kanal vasitəsilə (məsələn, Tor vasitəsilə) yoxlamalı, ya da qeyri-standart parametrlərdən istifadə etməlisiniz (UDP əvəzinə başqa port, TCP). XiaoxiaoPu-dan olan sans proqramı təxminən bu üçün nəzərdə tutulub (ən azı mənim başa düşdüyüm kimi). Tor vasitəsilə və qeyri-standart parametrlər vasitəsilə DNS sorğularını mənim serverimə yönləndirmək üçün bu proqramdan istifadə edə bildim DNS server. Ancaq onu mənə DNS cavabının saxtalaşdırılması ilə bağlı mesajlar göstərməsini təmin edə bilmədim. Bu olmadan proqramın mənası itir.

Daha layiqli alternativ tapa bilmədim.

Prinsipcə, DNS spooferlərinin adətən yalnız 53-cü portu və yalnız UDP protokolunu izlədiyini nəzərə alsaq, DNS saxtakarlığı faktını sadəcə əl ilə yoxlamaq kifayətdir, baxmayaraq ki, bu, qeyri-standart konfiqurasiya ilə öz DNS serverinizi tələb edir. Məsələn, hücum edən maşında bir fayl yaratdım dns.conf aşağıdakı məzmunla:

Yerli mi-al.ru

Bunlar. mi-al.ru veb saytı üçün DNS qeydini tələb edərkən, həqiqi IP əvəzinə təcavüzkarın maşınının İP-si göndəriləcək.

Hücum maşınında qaçıram:

Sudo bettercap --dns dns.conf

Hücum ediləndə isə iki yoxlama aparıram:

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

Nəticələr:

Mial@HackWare:~$ dig mi-al.ru ;<<>> DiG 9.10.3-P4-Debian<<>> mi-al.ru ;; qlobal seçimlər: +cmd ;; Cavab aldım: ;; ->>BAŞLIQ<<- 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 ;; qlobal seçimlər: +cmd ;; Cavab aldım: ;; ->>BAŞLIQ<<- 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

Görünür ki, "müntəzəm" DNS sorğusu üçün yerli IP 192.168.1.48 göndərilib və atipik portda DNS sorğusu zamanı düzgün server IP-si göndərilib.

Əgər server TCP (UDP əvəzinə) istifadə etmək üçün konfiqurasiya edilibsə, o zaman əmr belə görünür:

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

Trafikdə DNS cavablarına nəzarət edəcək, onları alternativ mənbəyə qarşı iki dəfə yoxlayacaq və saxtakarlıq halında həyəcan siqnalı verəcək bir alətin çatışmazlığı açıq şəkildə var.

Öz uzaq DNS-nizi qurmamaq üçün Tor vasitəsilə ad server sorğuları edə bilərsiniz. Bütün Tor trafiki şifrələndiyi üçün bu şəkildə əldə edilən DNS cavabları vasitəçinin imkanlarından kənardadır. Tor artıq quraşdırılmayıbsa, onu quraşdırın.

Sudo apt-get quraşdırma tor

Sudo pacman -S tor

Xidmətə başlayın:

Sudo systemctl tor başlatın

Əgər ehtiyacınız varsa, bu xidməti başlanğıca əlavə edin:

Sudo systemctl tor-u aktivləşdirir

Faylı açın /etc/tor/torrc və oraya aşağıdakı sətirləri əlavə edin:

DNSPort 530 AutomapHostsOnResolve 1 AutomapHostsSffixes .exit,.onion

530 nömrəsinə diqqət yetirin. Bu, 530 əvəzinə port nömrəsidir, hər hansı digər (istifadə olunmamış) portu təyin edə bilərsiniz; Əsas odur ki, onu xatırlayın.

Yenidən yoxlayırıq:

mi-al.ru # qazın və mi-al.ru -p 530 @localhost-u qazın

İndi biz server kimi təyin edirik localhost, və /etc/tor/torrc parametrlərində göstərdiyiniz port nömrəsini yazın.

Aşağıdakı ekran görüntüsündən göründüyü kimi, yoxlamanın aparıldığı maşında DNS saxtakarlığı hücumu həyata keçirilir:

4. Azğın rejimdə şəbəkə interfeyslərini axtarın

Yerli şəbəkənizdə qeyri-adi rejimdə avadanlıq varsa (və xüsusən də birdən-birə görünsə), bu, ortadakı adamın hücumunu açıq şəkildə göstərməsə də, çox şübhəlidir.

Bu rejimdə şəbəkə kartı kimə ünvanlandığından asılı olmayaraq bütün paketləri qəbul etməyə imkan verir.

Normal vəziyyətdə, Ethernet interfeysi keçid qatının paket filtrindən istifadə edir və qəbul edilən paketin təyinat başlığında MAC ünvanı cari şəbəkə interfeysinin MAC ünvanına uyğun gəlmirsə və yayımlanmırsa, paket atılır. "Qeyri-adi" rejimdə şəbəkə interfeysində filtrləmə söndürülür və bütün paketlər, o cümlədən cari node üçün nəzərdə tutulmayanlar sistemə buraxılır.

Əksər əməliyyat sistemləri qeyri-adi rejimi aktivləşdirmək üçün administrator hüquqlarını tələb edir. Bunlar. Şəbəkə kartını əxlaqsız rejimə qoymaq iyləmə məqsədlərinə xidmət edə biləcək qəsdən edilən bir hərəkətdir.

Şəbəkə interfeyslərini qeyri-adi rejimdə axtarmaq üçün Ettercap adlı bir plagin var search_promisc.

Pluginin işə salınmasına misal:

Sudo ettercap -TQP search_promisc ///

Pluginin işləməsi tamamilə etibarlı deyil, şəbəkə interfeysi rejimini təyin edərkən səhvlər baş verə bilər.

Nəticə

Bəzi adam-in-the-middle hücum metodları çoxlu izlər buraxır, bəziləri isə (məsələn, passiv proxy etimadnaməsi axtarışı) aşkar etmək qeyri-mümkün və ya demək olar ki, qeyri-mümkündür.