Use Netcat to Spawn Reverse Shells & Connect to Other Computers [Tutorial]
Talaan ng mga Nilalaman:
- Netcat Syntax
- Pag-scan ng Port
- Pagpapadala ng mga File sa pamamagitan ng Netcat
- Lumilikha ng isang Simple Server Server
- Nagsasagawa ng isang kahilingan sa HTTP
- Konklusyon
Ang Netcat (o nc) ay isang utility-utility na nagbabasa at nagsusulat ng data sa mga koneksyon sa network, gamit ang TCP o UDP protocol. Ito ay isa sa mga pinakamalakas na tool sa network at mga administrador ng sistema ng arsenal at ito ay itinuturing bilang isang kutsilyo ng Swiss hukbo ng mga tool sa networking.
Ang Netcat ay cross-platform at magagamit ito para sa Linux, macOS, Windows, at BSD. Maaari mong gamitin ang Netcat upang i-debug at subaybayan ang mga koneksyon sa network, i-scan para sa bukas na mga port, ilipat ang data, bilang isang proxy at marami pa. Ang pakete ng Netcat ay paunang naka-install sa macOS at tanyag na mga pamamahagi ng Linux tulad ng Ubuntu.
Netcat Syntax
Ang pinaka pangunahing syntax ng utility ng Netcat ay tumatagal ng sumusunod na form:
nc host port
Sa Ubuntu, maaari mong gamitin ang alinman sa
netcat
o
nc
. Pareho silang symlinks sa openBSD bersyon ng Netcat.
Bilang default, susubukan ng Netcat na magsimula ng koneksyon sa TCP sa tinukoy na host at port. Kung nais mong magtaguyod ng koneksyon sa UDP, gamitin ang
-u
pagpipilian:
Pag-scan ng Port
Ang mga pag-scan ng mga port ay isa sa mga pinaka-karaniwang gamit para sa Netcat. Maaari mong mai-scan ang isang solong port o isang port range.
Halimbawa upang mag-scan para sa bukas na mga port sa saklaw ng 20-80 gagamitin mo ang sumusunod na utos:
nc -z -v 10.10.8.8 20-80
Ang opsyon na
-z
ay magsasabi sa
nc
mag-scan lamang para sa bukas na mga port, nang walang pagpapadala ng anumang data sa kanila at ang pagpipilian na
-v
upang magbigay ng mas maraming impormasyon ng pandiwa.
Ang output ay magiging hitsura ng isang bagay tulad nito:
nc: connect to 10.10.8.8 port 20 (tcp) failed: Connection refused nc: connect to 10.10.8.8 port 21 (tcp) failed: Connection refused Connection to 10.10.8.8 22 port succeeded! nc: connect to 10.10.8.8 port 23 (tcp) failed: Connection refused… nc: connect to 10.10.8.8 port 79 (tcp) failed: Connection refused Connection to 10.10.8.8 80 port succeeded!
nc -z -v 10.10.8.8 20-80 2>&1 | grep succeeded
Connection to 10.10.8.8 22 port succeeded! Connection to 10.10.8.8 80 port succeeded!
Maaari mo ring gamitin ang Netcat upang mahanap ang software ng server at ang bersyon nito. Halimbawa, kung magpadala ka ng isang utos na "EXIT" sa server sa default na SSH port 22:
echo "EXIT" | nc 10.10.8.8 22
Ang output ay magiging hitsura ng isang bagay tulad nito:
SSH-2.0-OpenSSH_7.6p1 Ubuntu-4 Protocol mismatch.
Upang mag-scan para sa mga UDP port ay idagdag lamang ang
-u
pagpipilian sa utos tulad ng ipinakita sa ibaba:
nc -z -v -u 10.10.8.8 20-80
Sa karamihan ng mga sitwasyon, ang Nmap ay isang mas mahusay na tool kaysa sa Netcat para sa kumplikadong pag-scan ng port.
Pagpapadala ng mga File sa pamamagitan ng Netcat
Maaaring magamit ang Netcat upang ilipat ang data mula sa isang host sa isa pa sa pamamagitan ng paglikha ng isang pangunahing modelo ng kliyente / server.
Gumagana ito sa pamamagitan ng pagtatakda ng Netcat upang makinig sa isang tukoy na port (gamit ang
-l
opsyon) sa pagtanggap ng host at pagkatapos ay magtatatag ng isang regular na koneksyon ng TCP mula sa iba pang host at ipadala ang file sa ibabaw nito.
Sa pagtanggap tumakbo ang sumusunod na utos na magbubukas sa port 5555 para sa papasok na koneksyon at mag-redirect ang output sa file:
nc -l 5555 > file_name
Mula sa pagpapadala ng host kumonekta sa pagtanggap ng host at ipadala ang file:
nc receiving.host.com 5555 < file_name
Upang maglipat ng isang direktoryo maaari mong gamitin ang tar upang i-archive ang direktoryo sa source host at kunin ang archive sa host ng patutunguhan.
Sa pagtanggap ng host itakda ang tool ng Netcat upang makinig para sa isang papasok na koneksyon sa port 5555. Ang papasok na data ay piped sa utos ng tar na kung saan ay kunin ang archive:
nc -l 5555 | tar xzvf -
Sa pagpapadala ng host pack ng direktoryo at ipadala ang data sa pamamagitan ng pagkonekta sa proseso ng pakikinig ng
nc
sa pagtanggap ng host:
tar czvf - /path/to/dir | nc receiving.host.com 5555
Maaari mong panoorin ang pag-unlad ng paglipat sa parehong mga dulo. Kapag nakumpleto, i-type ang
CTRL+C
upang isara ang koneksyon.
Lumilikha ng isang Simple Server Server
Ang pamamaraan para sa paglikha ng isang online chat sa pagitan ng dalawa o higit pang mga host ay pareho tulad ng sa paglilipat ng mga file.
Sa unang host magsimula ang isang proseso ng Netcat upang makinig sa port 5555:
nc -l 5555
Mula sa pangalawang host magpatakbo ng sumusunod na utos upang kumonekta sa port sa pakikinig:
nc first.host.com 5555
Ngayon kung nag-type ka ng isang mensahe at pindutin ang
ENTER
ipapakita ito sa parehong mga host.
Upang isara ang koneksyon, i-type ang
CTRL+C
Nagsasagawa ng isang kahilingan sa HTTP
Bagaman mayroong mas mahusay na mga tool para sa mga kahilingan ng HTTP tulad ng curl, maaari mo ring gamitin ang Netcat upang magpadala ng iba't ibang mga kahilingan sa mga malayuang server.
Halimbawa, upang makuha ang pahina ng tao ng Netcat mula sa OpenBSD web site na iyong mai-type:
printf "GET /nc.1 HTTP/1.1\r\nHost: man.openbsd.org\r\n\r\n" | nc man.openbsd.org 80
Ang buong tugon kasama ang mga header ng HTTP at HTML code ay mai-print sa terminal.
Konklusyon
Sa tutorial na ito, natutunan mo kung paano gamitin ang utility ng Netcat upang maitaguyod ang isang at subukan ang mga koneksyon sa TCP at UDP.
Para sa karagdagang impormasyon bisitahin ang pahina ng tao ng Netcat at basahin ang tungkol sa lahat ng iba pang makapangyarihang mga pagpipilian ng utos ng Netcat.
terminal ng netcatAng isa pang kasanayan na lumalaki ang katanyagan ay ang paggamit ng mga video game bilang mga tool sa pagsasanay. Ang maraming kaligtasan ng publiko at mga organisasyong militar ay gumagamit ng mga video game upang gayahin ang mga kondisyon ng field. (Halimbawa, ang labanan ng Amerikanong Hukbo ng digmaan, na binuo ng US Army, ay naging isang napakalaking matagumpay na tool sa pagrerekord para sa militar.) Ngunit hindi mo kailangang i-shoot ang Nazis upang makahanap ng halaga para sa mga laro s
Sa Regence Blue Cross / Blue Shield sa Portland, Oregon, ang mga miyembro ng IT department ay nakakakuha ng virtual na "mga token" para sa pagganap ilang mga gawain: Ang pag-reset ng password ng gumagamit ay nagkakahalaga ng 2 mga token. Ang pagpapatupad ng isang cost-saving na ideya ay kumikita ng 30 token. Ang mga empleyado ay maaaring "gastusin" ang mga token na ito upang maglaro ng mga laro ng mabilis at batay sa pagkakataon. Ang mga laro ay higit na katulad sa mga slot machine: Ang mga toke
Ang pag-urong ay may mga kumpanya sa buong mundo na nag-aagawan upang ipagtanggol ang mga gastos sa teknolohiya na may mga desperadong vendor na tumutugon sa pagliko, na nag-aalok ng mga diskuwento sa malalim na lisensya, na nagbibigay ng murang financing at nagpapahayag na mas masalimuot na ang kanilang mga produkto sa katunayan ay nagse-save ng mga customer ng pera. mayroong higit sa digmaang trench na nangyayari, ayon sa isang hanay ng mga tagamasid. Kapag ang ekonomiya ay lumiliko sa paligid
Halimbawa, ang mga vendor na nagbebenta ng software na mahalaga sa negosyo ngunit hindi nagbibigay ng mga customer ng isang competitive na kalamangan - - tulad ng mga tool sa pakikipagtulungan - kailangang mag-ampon ng mas simple, mas mura na mga modelo ng pagpepresyo o harapin ang mga kahihinatnan, ayon sa analyst ng Redmonk na si Michael Coté.
Utos ng Echo sa linux na may mga halimbawa
Ang utos ng echo ay isa sa pinaka pangunahing at madalas na ginagamit na mga utos sa Linux. Ang mga argumento na naipasa sa echo ay nakalimbag sa karaniwang output.







