Tips & Trik dengan Perintah NetCAT di Linux

Tips & Trik dengan Perintah NetCAT di Linux

NetCat adalah utilitas jaringan serbaguna yang dapat digunakan untuk membaca dan menulis ke koneksi TCP dan UDP pada port yang sewenang -wenang (seperti halnya utilitas lain yang digunakan di Linux, port di bawah 1024 memerlukan hak istimewa root/sudo). Secara default NetCAT menggunakan koneksi TCP, tetapi UDP dapat ditentukan dengan -u bendera. Netcat dapat digunakan sebagai server dan klien. Saat digunakan sebagai server -l Bendera digunakan untuk mendengarkan koneksi. Mirip dengan perintah CAT, NetCAT dapat menerima informasi dari Stdin dan menulis kepada Stdout membuatnya bagus untuk alur kerja yang melibatkan pipa dan pengalihan. Itu NC Perintah biasanya digunakan untuk membangkitkan netcat untuk kemudahan penggunaan.

Dalam tutorial ini Anda akan belajar bagaimana melakukan hal berikut dengan NetCat:

  • Buat permintaan HTTP untuk mengambil halaman web
  • mengobrol dengan teman di seluruh mesin
  • Salin file antar mesin
  • Lakukan pemindaian port
  • Lihat pesan dari NetCat di browser web
  • buat dan sambungkan ke shell terbalik
Tips & Trik dengan Perintah NetCAT di Linux

Persyaratan dan konvensi perangkat lunak yang digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, konvensi atau versi perangkat lunak yang digunakan
Sistem Distribusi-independen
Perangkat lunak Netcat
Lainnya Hak istimewa root untuk menggunakan port di bawah 1024
Konvensi # - Perintah Linux untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
Perintah $ - Linux untuk dieksekusi sebagai pengguna biasa

Meraih halaman web

PERINGATAN
Koneksi netcat tidak dienkripsi. Contoh -contoh berikut mengirimkan data di Clear. Jangan gunakan NETCAT untuk mengirimkan data sensitif pada jaringan yang tidak dapat dipercaya seperti Internet dan Wi-Fi publik. Jika Anda perlu mengirimkan data dengan aman, pertimbangkan Openssh.

NetCat dapat digunakan untuk membuat koneksi sewenang -wenang ke layanan jaringan. Akibatnya, ini dapat digunakan untuk membuat permintaan http ke server web seperti halnya browser web. Ayo lanjutkan dan ambil halaman indeks dari google.com.
Masukkan NC Perintah diikuti oleh tuan rumah dan pelabuhan Anda ingin terhubung ke.

$ NC Google.com 80 

Sekarang mari kita buat permintaan http. Ketik atau salin/tempel berikut ini dan tekan Enter dua kali.

Get /Index.html http/1.1


Anda harus melihat output yang mirip dengan tangkapan layar ini.

Ambil situs web menggunakan netcat

Mengobrol

Contoh ini mengasumsikan bahwa Anda memiliki 2 komputer di jaringan yang sama, dengan nama host tuan rumah Dan host2. Asumsi ini akan dibuat dalam contoh berikut juga. Untuk membuat koneksi mendengarkan netcat di host1 masukkan yang berikut.

$ nc -lv 8888 

Ini mendengarkan koneksi di port 8888. Itu -v Bendera Menentukan output verbose yang akan memberi Anda informasi lebih lanjut tentang koneksi yang masuk.

Sekarang host2 memasuki:

$ nc host1 8888 

Anda akan melihat bahwa teks apa pun yang dimasukkan ke terminal di host1 dikirim ke terminal di host2 dan sebaliknya. Ini dapat digunakan sebagai obrolan ADHOC antara dua pengguna di jaringan yang sama.

Transfer file

Netcat dapat digunakan untuk menyalin file dari satu mesin ke mesin lainnya. Mari kita asumsikan Anda memiliki file yang disebut ncnotes.txt yang ingin Anda transfer tuan rumah ke host2

Di host1 masukkan yang berikut untuk membuat file dan dengarkan koneksi yang masuk untuk mentransfernya di port 2222:

$ echo "Ini adalah catatan netcat saya"> ncnotes.txt $ nc -l 2222 < ncnotes.txt 

Di host2 Masukkan yang berikut untuk menyalin/menerima file dan kemudian mencetaknya ke stdout untuk memverifikasi bahwa transfer file berhasil.

$ nc host1 2222> ncnotes.txt $ cat ncnotes 

Bagaimana jika Anda ingin mentransfer seluruh folder daripada hanya satu file? Netcat tidak mampu melakukan ini sendiri, jadi kita harus memanfaatkan perintah tar.

Masukkan yang berikut pada host1 untuk membuat folder yang diisi dengan lima file dan kemudian gunakan TAR untuk membuat arsip dan menyalurkannya melalui jaringan dengan NetCat.

$ MKDIR file; File Touch/1 ... 5 $ TAR -CVZ File | NC -L 8888 

Masukkan yang berikut ini host2 Untuk mentransfer folder dan memverifikasi bahwa itu mencakup semua lima file.

$ NC HOST1 8888 | file tar -xvz $ ls 

Di host1 the -C Bendera digunakan untuk membuat arsip yang akan disalurkan ke netcat, -v digunakan untuk output verbose sehingga kami memiliki umpan balik visual yang membuat kami tahu ini sedang terjadi dan -z digunakan untuk mengompres arsip sehingga transfer jaringan lebih cepat. Dalam contoh kami kompresi tidak membuat banyak perbedaan karena file Folder diisi dengan file kosong, tetapi Anda mungkin ingin mentransfer direktori/file besar, jadi bagus untuk diketahui. Di host2 the -X Bendera digunakan untuk mengekstrak arsip yang disalurkan dari netcat, -v adalah untuk ekstrak verbose, dan -z adalah mendekompresi arsip.

Pemindaian pelabuhan

Netcat dapat digunakan sebagai pemindai port yang belum sempurna dengan menggunakan -z bendera.

Misalkan Anda aktif tuan rumah Dan Anda ingin tahu apakah server SSH berjalan di host2. Dengan asumsi itu berjalan di port default (22) dan tidak ada akses firewall yang memblokir akses ke sana, Anda dapat menggunakan perintah berikut untuk melihat apakah layanan berjalan.

$ nc -zv host2 22 

Netcat juga dapat memindai berbagai port untuk melihat mana jika ada di antara mereka yang terbuka. Ini dapat digunakan untuk menyimpulkan layanan apa yang sedang dijalankan mesin. Misalkan Anda aktif host2 dan Anda ingin melihat apakah ada port di antara 1 Dan 1024 terbuka tuan rumah; Anda dapat menggunakan perintah berikut.

$ NC -ZV HOST1 1-1024 

Bergantung pada versi NETCAT apa yang telah Anda instal pada sistem Anda, perintah sebelumnya hanya akan melaporkan hanya port terbuka atau akan mencetak baris untuk setiap port yang dibuka dan tertutup. Jika yang pertama terjadi maka outputnya sangat mudah dibaca, tetapi jika yang terakhir adalah kasusnya maka output dapat terbukti sulit diuraikan dan perintah berikut harus digunakan sebagai gantinya sehingga hanya port terbuka yang ditampilkan yang ditampilkan.

$ NC -ZV HOST1 1-1024 2> & 1 | Grep berhasil 


Lihat pesan di browser

Pada tuan rumah Masukkan berikut. Itu -k Bendera menjaga koneksi tetap hidup sehingga dapat dihubungkan kembali ke mesin yang sama atau oleh mesin lain. Tanpa bendera ini tuan rumah akan berhenti mendengarkan lebih banyak koneksi setelah koneksi pertama dibuat.

$ echo "halo di sana" | NC -LKV 5555 

Pada host2 Buka browser dan navigasikan ke HOST1: 5555

Anda harus melihat kata -katanya Halo ditampilkan di browser.

Cangkang terbalik

NetCat juga dapat digunakan untuk membuat shell terbalik untuk memberikan mesin dari jarak jauh melalui jaringan. Ini dilakukan dengan -e bendera. Dalam contoh ini, kami ingin terhubung ke shell bash host2 untuk mengelolanya dari tuan rumah.

Pada tuan rumah memasuki:

$ nc -lv 6666 

Pada host2 memasuki:

$ nc -v host1 6666 -e /bin /bash 

Sekarang tuan rumah Masukkan yang berikut dan akan jelas bahwa kami memiliki akses jarak jauh ke shell bash host2.

$ hostname $ whoami $ ls 

Anda harus melihat nama host untuk host2, Nama pengguna pengguna yang dimulai NC pada host2 dan file mereka. Banyak versi netcat tidak termasuk -e Opsi karena potensi penyalahgunaannya. Membangun shell jarak jauh pada mesin yang memiliki versi netcat yang tidak termasuk opsi -e akan memerlukan melakukan perintah netcat yang sama di host1, saat menggunakan program yang berbeda untuk membuat shell terbalik pada host2. Solusi untuk ini ada untuk Bash, Python, Perl, PHP dan banyak lagi.

Tutorial Linux Terkait:

  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Menguasai loop skrip bash
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Ubuntu 20.04 trik dan hal -hal yang mungkin tidak Anda ketahui
  • Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 1
  • Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 3
  • Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 4
  • Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 2
  • Pengantar Pipa Bernama di Bash Shell
  • Contoh dan trik Contoh Tip Baris Bash Berguna - Bagian 5