Selamat siang, nama saya Fedor, saya dari
InSecure.org dan saya penulis proyek pemindai keamanan
Nmap , dirilis pada 1997. Saya ingin mengucapkan terima kasih kepada semua orang yang datang ke sini, dan
Defcon sendiri telah mengundang saya ke sini. Saya penggemar berat konferensi semacam itu, di mana orang-orang yang memiliki hasrat nyata terhadap teknologi amatir, tetapi yang tidak memiliki perusahaan yang bersedia membayar ribuan dolar untuk tiket, bisa datang.
Saya ingin memperingatkan Anda bahwa percakapan ini bukan tentang bagaimana melakukan serangan skrip lintas situs di jejaring sosial atau cara meretas saluran
Twitter . Ini tentang pemindaian porta dan sesuatu yang lebih dari pemindaian porta, dan jika Anda tidak suka pemindaian porta, maka 50 menit berikutnya akan menjadi mimpi terburuk Anda.

Karena bagi saya itu akan menjadi tidak biasa untuk membicarakan hal lain seperti mendengar Dan Kaminsky, yang tidak berbicara tentang
DNS . Maksud saya, saya bisa terburu-buru menemukan beberapa OS atau aksi dari script handler
Nmap dengan cara yang sama seperti Dan dapat mengambil
DNS- nya dan menggunakannya untuk tunnel
YouTube untuk menipu beberapa orang idiot, tetapi dalam kedua kasus kami hanya perlu memperluas kunci kami topik.
Tema saya, seperti yang Anda lihat dari slide pertama, adalah tentang pemindaian Internet. Saya menghabiskan banyak waktu musim panas ini memindai puluhan juta host di Internet dan mengumpulkan data yang diperlukan.
Dan ketika saya memberi tahu orang-orang tentang ini, mereka sering bertanya: "Mengapa?" Bagi saya, pemindaian itu berharga, tetapi jika Anda memerlukan alasan, maka dalam hal ini, dalam hal ini saya memiliki beberapa tujuan spesifik dari proyek tersebut. Yang pertama adalah mengumpulkan data empiris dan menggunakannya untuk memperluas dan meningkatkan fungsionalitas
Nmap , kita akan membicarakannya nanti.
Tujuan kedua adalah menggunakan data untuk membantu orang yang berpengetahuan memindai lebih efisien. Ada banyak orang yang mengumpulkan informasi tentang penataan jaringan dan populasi untuk mengetahui metode pemindaian mana yang terbaik. Tetapi biasanya mereka bertanya-tanya bagaimana menyesuaikan alat pemindaian yang ada tanpa menemukan sesuatu yang cocok. Agar Anda dapat menggunakan data empiris saya untuk kebutuhan Anda sendiri, mereka akan membantu Anda mempelajari cara memindai dan mengumpulkan hasilnya.

Tujuan ketiga adalah untuk mendeteksi dan memperbaiki kesalahan
Nmap dan meningkatkan kinerja untuk pemindaian skala besar. Karena jutaan host dipindai dalam berbagai situasi, dan Anda dapat melacak bagaimana
Nmap meresponsnya. Saya berhasil memperbaiki kesalahan yang menyebabkan sistem macet atau membeku, mempercepat proses dengan mencari tahu apa yang sebenarnya menyebabkan pemindaian melambat.
Tujuan keempat adalah untuk menunjukkan teknologi yang dapat digunakan untuk pemindaian konvensional dan pemindaian Internet dalam skala besar.
Idenya adalah bahwa jika pemindaian ini bekerja untuk 25 juta host, maka itu mungkin akan mengatasi pemindaian 25.000 host atau berapa banyak yang Anda butuhkan untuk memindai.
Mari kita lihat masalah yang harus saya hadapi saat memindai. Pertama-tama, saya ingin mengatakan bahwa lebih baik melakukan lusinan pemindaian besar, tetapi ditargetkan daripada satu pemindaian besar. Masing-masing sasaran ini memungkinkan Anda untuk mengumpulkan data berguna dari jenis tertentu, tetapi masalahnya adalah menentukan alamat IP tertentu yang perlu dipindai.
Ada banyak kemungkinan untuk ini: Tabel perutean
BGP yang memberi tahu Anda jaringan mana yang dirutekan, file zona DNS, daftar alokasi tabel, dll.

Saya memutuskan untuk menggunakan generator alamat IP
Nmap yang saya buat sendiri, yang memungkinkan saya membuat 25.000.000 alamat IP, dan saya membuat tambahan 200.000 karena kemungkinan duplikat. Pada saat yang sama, bukan komputer yang benar-benar dipindai, tetapi daftar mereka, karena saya akan memindai mesin itu sendiri nanti. Sebagai hasilnya, saya mendapat daftar 25 juta alamat IP, yang saya gunakan untuk memindai. Itu adalah cara untuk menghasilkan angka acak, tetapi begitu Anda memiliki tujuan spesifik yang perlu dipindai, muncul pertanyaan berikut: sumber apa yang akan Anda gunakan.
Di sini saya punya banyak ide, satu lebih gila dari yang lain, misalnya, pemindaian P2P. Saya akan mendistribusikan klien bernama
Nmapster yang dapat diunduh orang. Dia akan memindai komputer mereka dan mengatakan bahwa kami mengumpulkan data untuk digeneralisasi. Tetapi saya memutuskan bahwa tujuan utamanya adalah untuk membuat
Nmap lebih cepat dan lebih efisien untuk pemindaian sehari-hari, dan bahwa lebih baik untuk fokus menggunakan
Nmap sendiri, daripada membuat program khusus untuk itu.
Kendala besar kedua adalah ilegalitas tindakan tersebut. Ketika Anda memindai banyak host, orang mungkin marah, dan saya tidak ingin ISP saya menolak untuk memberikan saya lagi, tetapi kemungkinan ditangkap tampak lebih buruk. Karena itu, saya memutuskan untuk online melalui titik akses nirkabel gratis tetangga saya (tepuk tangan dan tawa).
Tidak, saya hanya bercanda, selain itu, saluran Internet tetangga saya tidak akan memiliki bandwidth yang cukup untuk menangani lalu lintas sebanyak yang saya butuhkan.
Oleh karena itu, saya memutuskan untuk menggunakan ISP, yang saya gunakan untuk colocation, dan memindai dari sana, yaitu melalui peralatan yang terletak di wilayahnya. 15 menit setelah dimulainya pemindaian, orang-orang ini menghubungi saya, dengan panik bertanya apa yang sedang terjadi, mungkin komputer saya terinfeksi oleh worm terburuk di Internet, karena ia menjadi gila dan memeriksa ribuan mobil per detik di seluruh Internet! Mereka menyarankan untuk memutuskan hubungan saya, tetapi saya menjelaskan bahwa mereka tidak perlu khawatir, bahwa saya tidak akan terluka, saya melakukan ini untuk tujuan tertentu. Kemudian mereka berpikir bahwa saya adalah semacam spammer, atau bahkan lebih buruk, jika ini memungkinkan, dan saya perlu ditangkap. Kemudian saya menjadi takut dan berpikir bahwa saya sudah selesai, saya harus menyerahkan proyek saya dan mulai mempelajari kerentanan lintas situs. Untungnya, ternyata mereka adalah pengguna
Nmap dan saya dapat menjelaskan bahwa pemindaian ini diperlukan untuk membuat program saya lebih efisien dan produktif. Yang mereka katakan: "Baiklah, kalau begitu kamu bisa melanjutkan!"
Saya sedikit mengurangi kecepatan pemindaian, karena saya tidak ingin sekering mereka meledak, dan melanjutkan pekerjaan besar ini. Sayangnya, Departemen Pertahanan AS tidak begitu baik, mereka tidak suka pemindaian saya sama sekali, dan mereka mengatakan kepada saya untuk berhenti memindai fasilitas militer penting. Saya berpikir bahwa kemampuan
Nmap untuk melewatkan pemindaian jaringan tertentu akan berguna bagi saya, tetapi mereka bahkan tidak akan membiarkan saya mengidentifikasi jaringan ini, karena mereka juga fasilitas militer. Jadi sejak itu saya sedikit gugup jika pesawat militer terbang di atas kepala saya.

Rintangan selanjutnya untuk pemindaian adalah firewall. Untuk beberapa kasus, cukup bagi saya untuk mendapatkan hasil dari segmen Internet yang tidak terlindungi, tetapi bagi yang lain akan menyenangkan untuk mempelajari bagaimana tampilannya di balik firewall perusahaan. Anda tahu bahwa mereka sering mengontrol port yang berbeda, jadi dari dalam jaringan terbuka terlihat sangat berbeda. Saya akan mengatakan dengan senang hati bahwa saya dapat menembus serangkaian firewall tidak dengan bantuan seperti serangan fragmentasi canggih, tetapi dengan bantuan teknologi yang hanya "meminta" mereka untuk memberikan data yang diperlukan.
Ada banyak perusahaan besar yang memindai jaringan mereka setiap hari dengan
Nmap , dan mereka senang berkontribusi dalam bentuk data untuk membantu meningkatkannya.
Masalah berikutnya adalah kinerja dan akurasi. Memindai internet adalah pekerjaan yang panjang dan sulit. Tujuan utamanya adalah untuk meningkatkan kinerja Nmap karena statistik penggunaannya mengecewakan:
- waktu berlalu sejak awal pemindaian 93 jam 57 menit. 40 s (lebih dari 4 hari);
- selama waktu ini, dari 254868 host yang direncanakan, scan UDP dari 65.000 port yang berlokasi pada 2048 host dilakukan;
- Selama waktu ini, pemindaian UDP dilakukan sekitar 11,34% dari jumlah yang direncanakan, waktu untuk memindai host yang tersisa akan menjadi 688 jam 41 menit 48 detik.
Ketika perkiraan sisa waktu Anda mengarah ke "integer overflow" dan membawa satu negatif, ini bukan tanda yang sangat menggembirakan. Pemindaian khusus ini masih dalam proses, dan mungkin pada konferensi DEFCON tahun depan saya akan memberi tahu Anda apa yang terjadi. Untungnya, beberapa pemindaian kami yang lain berakhir jauh lebih awal, jadi ini adalah jenis pengantar untuk jenis pemindaian yang kami lakukan dan mengapa.
Sekarang mari kita beralih ke tips yang lebih praktis yang dapat berfungsi sebagai detail yang berguna dan memberi tahu Anda bagaimana Anda dapat menggunakan ini sebagai bantuan untuk pemindaian Anda sendiri. Penemuan host adalah awal yang baik, karena hal pertama yang ingin Anda lakukan ketika meninjau ulang jaringan adalah menemukan host dan mencari tahu jaringan mana yang tersedia untuk pemindaian. Karena itu, Anda tidak perlu membuang waktu memindai alamat IP yang tidak didengarkan oleh penghuni dan memutuskan metode yang akan dipindai.
Ada saat ketika sebagian besar host menanggapi permintaan echo
ICMP atau paket ping yang
Nmap kirimkan ke port 80 secara default, tetapi sayangnya kali ini berakhir 10 tahun yang lalu.

Sekarang sebagian besar perusahaan memblokir paket ping dan saya harus menggunakan metode yang lebih efisien.
Yang pertama adalah metode
TCP untuk mendeteksi host menggunakan paket sintetik
SYN (-PS) yang bekerja paling baik terhadap firewall penyaringan statis yang menggunakan daftar pengecualian konstan dan menggunakan
paket ACK (-PA) yang efektif terhadap firewall penyaringan dinamis.
Firewall yang membiarkan paket sintetik melalui biasanya memblokir paket
ACK , dan sebaliknya.
Saya akan menunjukkan contoh cepat menggunakan
Nmap dengan paket sintetis untuk port 80 dari
sun.com . Seperti yang Anda lihat, jawabannya datang sangat cepat dan itu menunjukkan bahwa tuan rumah tersedia.

Kemudian kami menggunakan paket
ACK untuk host yang sama, Anda melihat bahwa pemindaian memakan waktu lebih lama dan tuan rumah tidak menanggapi kami karena itu memblokir ping sensing.

Dengan demikian, Anda dapat memahami firewall mana yang diinstal pada host ini - dengan penyaringan statis atau dinamis. Dalam hal ini, kami memiliki firewall statis yang melewatkan paket
SYN dan memblokir paket
ACK .
Mungkin timbul pertanyaan, port sensing seperti apa yang lebih baik digunakan. Saya akan menjawab - Anda perlu mengirim kedua jenis paket sampai host melewati salah satunya.
Pertanyaan selanjutnya adalah port mana yang digunakan. Anda memiliki 65 ribu port, dan seringkali tidak mungkin untuk memilih yang bekerja paling baik. Oleh karena itu, saya membuat pilihan port berdasarkan data empiris, yang ditunjukkan pada slide berikutnya. Ini adalah 10 port terbaik untuk mendeteksi tipe host tertentu.

Beberapa orang mungkin melihat daftar ini dan bertanya, di mana port
Windows 135 atau 139 yang paling umum?
Namun, ingatlah bahwa saya membuat basis data saya berdasarkan host yang terlindungi dengan baik, jadi jika Anda mengalami masalah dalam memasang firewall, Anda sebaiknya memblokir port
Windows ini. Saya akan merekomendasikan untuk "menyelidiki" bagian dari port ini dengan
paket SYN , bagian lainnya - dengan paket
ACK .
Selanjutnya kita memiliki penemuan host
UDP . Dalam hal ini, port
UDP tertutup lebih baik daripada port terbuka karena lebih rentan untuk dijawab. Buka port, menerima paket bersih, tidak tahu apa yang harus dilakukan dengannya dan abaikan saja. Port yang tertutup biasanya melarang paket seperti itu, dan ini berarti bahwa host ada di sini. Port 53 sering jatuh ke dalam pengecualian firewall karena itu untuk
DNS .
Saya juga menggunakan metode penemuan host
ICMP (PE, PM, PP) . Beberapa sistem siap menerima ping, tetapi memblokir yang lain. Sebagai contoh, administrator
Google.com tidak melihat ancaman dalam menerima paket ping, tetapi mereka memblokir permintaan topeng jaringan dan cap waktu karena mereka percaya bahwa peretas menggunakannya.
Administrator lain secara eksplisit memblokir permintaan gema sebagai peretas, tetapi lupakan tentang memblokir permintaan topeng jaringan dan
cap waktu
netmask / timestamp . Oleh karena itu, saya menyarankan Anda untuk menggunakan kedua jenis permintaan - permintaan gema dan salah satu permintaan dari jenis kedua.
Kami juga memiliki fitur baru yang disebut
Protocol Ping (PO) . Secara default, protokol ini menggunakan 3 jenis paket IP: 1 (
ICMP ), 2 (
IGMP ) dan 4 (
IPinIP ) untuk mendapatkan respons yang terjangkau jika host masih hidup. Saya tidak menguji untuk mengetahui protokol mana yang paling berguna, jadi ketiganya digunakan secara default.
Sekarang saya ingin berbicara tentang berbagai teknologi penemuan inang yang saya gunakan, dan Anda bisa bertanya yang mana dari tumpukan ini yang paling berharga dan apa perbedaan di antara mereka. Slide menunjukkan contoh ketika saya menghasilkan 50 ribu alamat IP dan menggunakan pemindaian ping default, sebagai hasilnya 3348 host ditemukan dalam 1600 s, atau 27 menit.

Ini banyak komputer, dan pemindaian ini terlihat cukup sukses. Tetapi kemudian saya memutuskan untuk menggunakan pemindaian "lanjutan", mengambil daftar yang hampir sama, yaitu 50 ribu host dan menambahkan beberapa teknik pendeteksian yang berbeda, seperti balasan gema, stempel waktu, pemeriksaan
SYN dari tumpukan port dan mengatur port sumber 53 untuk menutupi. di bawah
DNS . Ini memungkinkan kami untuk mendeteksi 4473 host "hidup", tetapi butuh sedikit lebih lama - 4259 detik.

Perbandingan kedua metode pemindaian ini - dengan opsi default dan lanjutan - menunjukkan bahwa yang kedua mengambil waktu 167% lebih banyak (41 menit dibandingkan 27) dan menemukan 34% lebih banyak host.
Sekarang saya ingin berbicara tentang peningkatan
Nmap , yang dilakukan berdasarkan studi ini.
Versi terbaru dari
Nmap 4.68 tersedia di
http://nmap.org/changelog.html , di mana bug telah diperbaiki dan kinerja telah ditingkatkan. Ada juga rilis
SVN terbaru, yang dapat ditemukan di
http://nmap.org/book/install.html#instsvn .
Saya bosan dengan pesan kesalahan yang mengatakan bahwa "ya, kami memperbaikinya pada tahun 2003" karena ada banyak orang yang tidak ingin sering melakukan pembaruan. Kemudian mereka mengeluh bahwa program
Nmap sudah usang, karena memberi tahu Anda nomor port mana yang terbuka, tetapi tidak memberi tahu layanan mana yang ada di belakangnya. Baru-baru ini, saya telah menambahkan sejumlah perbaikan pada program ini, dan jika Anda memerlukan versi paling canggih dari program - pelepasan
BHD CO 8 Black Hat DefCon , Anda dapat menemukannya di tautan khusus
svn: //svn.insecure.org/nmapexp/bhdc08 menggunakan info masuk tamu dan kata sandi. Versi terbaru ini berisi fitur pemindaian
Port Top dan beberapa fitur lain yang akan saya bahas nanti.
Jadi, proyek
Top Ports adalah pemindaian besar lainnya dari jutaan alamat IP untuk menemukan port
TCP dan
UDP terbuka menggunakan pilihan port populer. Beberapa organisasi besar juga menyediakan kemampuan untuk memindai data jaringan internal yang terletak di belakang firewall. Pada saat yang sama, file layanan
Nmap dilengkapi dengan data frekuensi untuk setiap port.
Pertimbangkan port yang dipindai secara default.
Nmap 4.68 memindai 1715 port
TCP dan 1488 port
UDP , memindai port dari 1 hingga 1024 dan semuanya bernama port yang lebih tinggi. Saya perhatikan bahwa banyak port diciptakan bertahun-tahun yang lalu dan belum pernah digunakan untuk waktu yang lama. Pada saat yang sama, ada banyak port tanpa nama yang terbuka.

Versi final
Nmap menggunakan data frekuensi port 1000 Teratas untuk setiap protokol, jadi dalam banyak kasus saya mendapat hasil terbaik. Ini memungkinkan kami untuk tidak membuang waktu memindai port lama yang tidak digunakan, sehingga pemindaian lebih cepat karena sedikit lebih dari setengah dari semua port yang ada benar-benar dipindai.
Pemindaian cepat sangat berbeda dari pemindaian standar. Dalam
Nmap, ini dilambangkan dengan huruf (
-F ). Kali ini,
Nmap 4.68 memindai 1276 port
TCP dan 1017 port
UDP di seluruh rentang angka. Anda mungkin bertanya mengapa, secara default, pemindaian memproses lebih banyak port, tetapi tidak ada yang dramatis di sini - pemindaian cepat hanya memakan waktu lebih sedikit. Namun, dalam hal ini, pemindai tidak memeriksa semua port yang ada, tetapi hanya bekerja dengan mereka yang namanya ada dalam file layanan
Nmap baru. Akibatnya, pemindaian dilakukan untuk port TOP 100 untuk masing-masing protokol, dan saya mendapatkan kecepatan urutan yang lebih besar daripada saat pemindaian secara default. Ini jauh lebih berguna untuk
TCP dan bahkan lebih berguna untuk
UDP , karena saya tahu bahwa banyak orang tidak pernah melakukan pemindaian
UDP , mengingat itu sangat memakan waktu dan sulit untuk menyaring port terbuka. Oleh karena itu, mereka berpura-pura bahwa
UDP tidak ada. Namun, peretas tidak berpura-pura, oleh karena itu sangat penting bagi kita untuk memahami apa yang terjadi dengan protokol ini.
Slide berikut ini menunjukkan contoh pemindaian cepat menggunakan versi
Nmap yang berbeda. Huruf
U dalam penunjukan mode pemindaian
Nmap - sUV - F-T4 menunjukkan port
UDP , pemindaian
F - cepat. Ada masalah penyaringan dalam versi terbuka ini karena
Nmap tidak menerima respons dan tidak dapat menentukan apakah port difilter atau terbuka. Ini terjadi jika Anda menggunakan versi dari
scanme.nmap.org . , , .

,
Nmap 4.68 ,
Blackhat DefCon 08 6 , «»
Blackhat DefCon 08 13 . 3 53.
:
- top-ports <n>
Dia memindai port terbuka paling populer dengan setiap protokol yang diperlukan, dan fungsinya:
–port-ratio <n>
di mana
n dipilih antara 0 dan 1, ia memindai semua port dengan frekuensi yang ditetapkan pada level ini.
Versi terbaru bekerja dengan bendera "
—versi - intensitas 0 ". Ini berarti bahwa permintaan
UDP dikirim ke port tertentu menggunakan protokol tertentu, yaitu, untuk 53 saya mencoba hanya
DNS , untuk 161 port hanya
SNMP , dll. Ini mengurangi waktu pemindaian menjadi 13 detik.
Moral dari cerita ini adalah bahwa jika Anda tahu data apa yang benar-benar Anda butuhkan, Anda dapat mengoptimalkan pemindaian sedikit dan membuatnya lebih cepat. Dalam hal ini, kami menerima data yang sama, tetapi alih-alih menunggu satu jam, kami hanya menunggu 13 detik. Jadi mengkonfigurasi fitur sangat membantu, terutama fitur port top. Anda hanya perlu memilih antara pemindaian default 1000 port dan pemindaian cepat 100 port dan tentukan secara arbitrer berapa banyak port yang ingin Anda pindai.
Ini menimbulkan pertanyaan tentang fitur Port Top mana yang paling berfungsi. Slide di bawah ini menunjukkan port
TCP Top-10 dan contoh efisiensi "puncak", yang saya buat berdasarkan data empiris. Sampel ini menunjukkan berapa banyak port terbuka yang saya temukan menggunakan satu atau yang lain "atas".
Jika Anda menggunakan pemindaian “puluhan” port tercepat, Anda dapat mendeteksi lebih dari setengah port TCP terbuka. Menggunakan port "Top 100", Anda dapat mendeteksi 73% port terbuka, menggunakan default "Top-1000" mendeteksi 93%, tetapi Anda hanya memindai 2% dari ruang port 65 ribu.

Selanjutnya, saya akan memberikan statistik untuk menemukan port
UDP terbuka. Port
Microsoft yang khas mendominasi di sini, meskipun ada
SNMP dan
NTP .

Efisiensi
UDP berbeda dari efisiensi
TCP , di sini persentase port terbuka yang lebih besar ditentukan dengan nilai "top" yang lebih rendah. Jadi, "Top-100"
UDP memungkinkan untuk mendeteksi 90% port terhadap 73% untuk
TCP .
Saya menggunakan fungsi lain yang baru-baru ini saya kembangkan:
Kontrol Kecepatan Paket .

Saya memiliki perasaan campur aduk tentang dia. Saya bangga
dengan kontrol beban
Nmap dan teknologi lainnya untuk mengetahui kecepatan pemindaian mana yang paling berhasil. Tetapi ada banyak orang yang mengatakan bahwa mereka hanya ingin memindai port pada frekuensi tertentu dan tidak khawatir jika ada paket yang hilang. Ini adalah salah satu alasan mereka menggunakan pemindai seperti
RAND atau
Unicorn . Untuk kasus seperti itu, saya memutuskan untuk menambahkan fungsi yang menetapkan frekuensi maksimum dan minimum pengiriman paket per detik.
Ternyata sangat berguna ketika saya hampir "menyatukan" layanan hosting Internet saya, karena saya dapat mengatur parameter pemindaian untuk
Nmap pada 300 paket / s dan membuat orang-orang ini dari
ISP sedikit lebih bahagia.
Slide berikut menunjukkan contoh bagaimana menyatukan semua fitur
Nmap yang berguna.

Di sini Anda memasukkan alamat IP sumber yang ingin saya gunakan untuk pemindaian khusus ini dan menunjukkan mode debug. Saya sering menggunakan fungsi ini untuk berinteraksi dengan program selama pemindaian, karena orang tidak tahu bahwa Anda dapat menekan tombol
D dan membuka mode debug, dan jika Anda menekannya beberapa kali, Anda dapat menggulir layar dan melihat apa yang dilakukan
Nmap di saat ini.
Di sini saya menggunakan latensi rendah, karena saya tidak ingin menunggu lama untuk host yang frekuensi paketnya terbatas. Saya menerapkan fungsi membuat file log menggunakan fungsi nilai waktu
STRF , yang secara otomatis menempatkan tanggal dan waktu.
Selanjutnya, saya memasukkan nama file yang ingin saya dapatkan pada akhirnya dan mencatat bahwa saya tidak ingin melakukan upaya lebih dari 1 detik untuk memindai, karena saya akan melakukan pemindaian dalam jumlah besar secepat mungkin.
Selanjutnya, pengacakan host dicatat, jumlah port yang dipindai terdaftar, sekelompok besar alamat MAC dari host diindikasikan, frekuensi pemindaian minimum adalah 175 paket per detik dan maksimum 300 paket per detik.
Ini adalah contoh bagaimana saya secara konstan mengubah dan meningkatkan algoritma
Nmap , sampai saya menemukan opsi yang bekerja lebih baik daripada yang lain.
Sekarang saya ingin menggunakan waktu yang tersisa untuk memberi tahu Anda berita
Nmap terbaru. Beberapa di antaranya adalah fitur baru dan menarik, misalnya, mesin skrip
NSE . Ini adalah mekanisme modular yang mensurvei port dengan cara tertentu. Dalam hal ini, kami membuat judul
HTML untuk situs web yang ditemukannya.

Sekarang ada lebih dari 50 skrip yang didukung oleh
Nmap , kompatibel dengan data
Whois , kata sandi
pop3 kasar dan hal-hal gila lainnya yang ingin Anda gunakan.
Sekarang saya akan segera menunjukkan kepada Anda bagaimana
Nmap Scripting Engine bekerja.

Ini tim yang panjang, jadi saya akan menyalinnya dari tempat lain. Ini menetapkan mode
Nmap yang terperinci - jangan ping, lakukan pemeriksaan
UDP untuk port 53, gunakan pengaturan waktu yang agresif dan terapkan 3 skrip di sini, yang akan membantu menghindari kesalahan
DNS yang dibicarakan Dan pada hari Minggu lalu. Satu skrip hanya memeriksa untuk melihat apakah server DNS memungkinkan rekursi, yang kedua memeriksa untuk melihat apakah itu mengacak nomor port asli, dan yang ketiga memeriksa untuk melihat apakah ia memiliki pengidentifikasi transaksi acak. Ini adalah kesalahan yang orang ingin perbaiki untuk mengurangi masalah keracunan cache.
Dalam kasus kami, saya ingin menunjukkan operasi
NSE selama pemindaian port dari salah satu server
BlackHat dan salah satu server
Shmoo.com . Ini membutuhkan sedikit waktu, dan kemudian tepat di sebelah nomor port hasilnya ditampilkan.
Anda dapat melihat bahwa untuk
blackhat.com dengan alamat IP 216.231.64.55 ketika
UDP memindai port 53, dalam kedua kasus kegagalan rekursi server diterima, sehingga tidak bisa "diinterogasi" lebih lanjut. Untuk server
archimedes.shmoo.com dengan alamat IP 12.21.210.234, rekursi terjadi. Tetapi saya senang melaporkan bahwa itu bagus dalam hal pengacakan pelabuhan.
Saya ingin menunjukkan salah satu dari beberapa contoh ketika usaha saya gagal total, jadi di sini mungkin untuk memainkan permainan "siapa yang bisa meracuni cache terlebih dahulu", tetapi memutuskan bahwa ini bukan ide yang baik untuk presentasi kami. Selain itu, saya memiliki materi yang lebih menarik tentang topik yang menjadi
perhatian saya - ini adalah
GUI Zenmap baru.

Banyak orang mengatakan bahwa mereka tidak memerlukan antarmuka grafis, karena mereka telah bekerja dengan
Nmap selama 10 tahun dan mengetahui semua 130 pilihannya. Namun, antarmuka ini adalah alat yang ampuh untuk bekerja dengan pemindai, yang akan saya cepat tunjukkan sekarang.
Ini menampilkan jendela dengan output, setiap host terbuka, Anda dapat mengatur pemfilteran tampilan
HTTP atau
SSH , dan sebagainya. Selain itu, kami menambahkan fitur menarik ke versi terbaru dari pemindai. Bagi orang-orang yang mengatakan: "karena Anda menyebut alat ini
kartu-H , jadi beri saya kartu ini!", Kami menambahkan diagram grafis dari topologi jaringan yang dipindai.

Ini adalah hal yang cukup akurat, yang menarik hasil pemindaian jaringan dan menempatkannya di tengah node sumber, dan dalam lingkaran konsentris di sekitar pusat ini setiap lompatan ke jaringan dan komputer yang Anda pindai ditampilkan. Anda dapat mengambil simpul seperti itu dan berkata: "Hei, tunjukkan padaku apa data lain untuk pemindaian khusus ini, tunjukkan port terbuka, dll.", Yaitu, ketika Anda mengarahkan kursor ke lingkaran kuning, jendela terbuka dengan semua detail pemindaian dilakukan. Anda dapat memindai mesin-mesin baru dan mereka juga akan ditambahkan ke sirkuit. Anda juga dapat memusatkan diagram relatif ke host lain - cukup klik pada node dan seret ke arah yang diinginkan.

Kelebihan lain dari antarmuka grafis adalah bahwa sekarang
Nmap akan dapat bekerja dengan pengguna
Windows yang tidak tahu cara mengontrol program menggunakan baris perintah. Saya sudah menerima surat dari mereka di mana itu ditulis: “Saya mengklik dua
kali ikon
nmap.exe di desktop, setelah itu kotak hitam muncul sebentar, dan kemudian semuanya menghilang. Jelas, program Anda benar-benar rusak. " Jadi saya berharap
Zenmap GU I akan membantu mereka. Meskipun, di sisi lain, mungkin orang-orang seperti itu tidak boleh menggunakan
Nmap sama sekali .
Kami juga memiliki sistem deteksi OS generasi kedua.

Ini mewujudkan semua yang telah saya pelajari tentang deteksi OS selama 7 tahun sebelumnya, dan berisi 1.500 tanda tangan sistem operasi baru. Jadi pengguna Nmap dapat menemukan alat apa pun yang dapat Anda bayangkan di situs web
nmap.org kami dan mengunduh versi program untuk
Windows atau
Linux . Kami juga memiliki alat untuk mendeteksi versi perangkat lunak.

Ada juga fungsi yang disebut
Alasan . Ini adalah jenis filter yang menunjukkan untuk alasan apa pembukaan port terjadi - karena penggunaan paket sintetik atau
ACK , atau untuk alasan apa port ditutup, misalnya, karena reboot.

Ini adalah alat yang sangat baik untuk memahami apa yang sebenarnya dilakukan
Nmap . Fungsi selanjutnya, yang dapat memberi Anda banyak informasi berguna, disebut "Paket Penelusuran", atau
penelusuran paket .

Berkat dia, saya bisa mengetahui apakah port 25 adalah host terakhir yang mengembalikan paket kepada saya, atau jika firewall mengembalikannya. Dengan melihat jejak paket selama pemindaian
Nmap yang cepat, saya dapat mengetahui perangkat mana yang berinteraksi dengan mereka. Di sini Anda dapat melihat frekuensi, opsi pemindaian yang digunakan, ID IP, dan dengan fungsi ini saya bisa mengetahui apakah host yang sama mengirimi saya paket dalam kedua kasus atau tidak. Ini berguna untuk memahami firewall dan sistem penyaringan yang digunakan.
Fitur lain yang disebut
Advanced Traceroute menunjukkan jenis suara apa yang paling baik digunakan untuk penetrasi. Ini adalah fungsi cepat karena
Nmap dapat menjalankannya secara paralel dengan pemindaian.

Selanjutnya, saya membuat beberapa peningkatan akurasi kinerja dan pemindaian.

Ada seluruh bagian pada halaman utama antarmuka program yang menunjukkan semua opsi yang dapat Anda gunakan untuk bekerja. Selanjutnya, kami memiliki opsi tajuk
TCP dan
IP , yang memungkinkan Anda menentukan rute sumber atau catatan sumber.

Banyak dari Anda akan mengatakan bahwa rute asli diperlukan 15 tahun yang lalu dan sekarang tidak ada yang membutuhkannya. Tetapi saya berbicara dengan seorang pria yang baru-baru ini menguji jaringan area lokal di satu perusahaan. Itu terletak di sesuatu seperti ruang konferensi dan hanya bisa terhubung ke server dari seri tertentu, jadi tidak mungkin untuk melakukan kontak dengan semua komputer perusahaan. Mereka telah menciptakan sesuatu seperti
DMZ untuk mengakses ruang konferensi. Kemudian orang ini mengambil salah satu server mereka dan kehilangan rute asli melaluinya, menemukan komputer tujuan dan dengan demikian dapat mengatasi batasan ini.
Kami telah mengembangkan alat baru yang disebut
Ncat .

Ini adalah interpretasi
Netcat modern tentang Hobbit yang terhormat. Ini sebenarnya mendukung semua fitur
Netcat 1.10 , kecuali untuk pemindai port dasar, karena saya lebih suka menggunakan
Nmap sebagai pemindai. Ini juga mendukung banyak fitur keren baru:
SSL, IPv6 pada berbagai platform yang menjalankan
Linux, Windows, Mac OS , mediasi jaringan, port forwarding, proksi (klien, server, rantai) untuk memindai melalui komputer lain, eksekusi shell, kontrol akses dll. Program ini dibuat oleh Chris Catterjon pada tahun 2005 dan sekarang sepenuhnya siap untuk rilis. Chris juga menambahkan beberapa fitur, seperti opsi IP dan mode deteksi ping.
Alat selanjutnya adalah
Ndiff , penampilan yang sudah lama ditunggu-tunggu.

Utilitas ini membandingkan hasil dari dua pemindaian atau lebih dan menunjukkan perubahan: host baru atau jarak jauh, port, layanan yang diubah, dll. Ini bagus untuk mendeteksi perubahan dengan cepat saat memindai ulang. Misalnya, setiap hari saya memindai jaringan perusahaan, dan di akhir pekerjaan saya menyebut utilitas ini dan berkata: "kirimi saya perubahan yang telah terjadi sejak kemarin". Jadi saya bisa melihat port terbuka baru, komputer tambahan, dan sebagainya.
Akhirnya, saya ingin menunjukkan kepada saya buku saya “Pemindaian Jaringan Menggunakan Nmap,” saya telah mengerjakannya selama beberapa tahun. Ia mengatakan tidak hanya tentang kemampuan pemindai jaringan saya, tetapi juga tentang teknik pemindaian jaringan.

Saya mencetak 170 buku ini yang ingin saya bagikan di sini, tetapi saya khawatir buku-buku itu akan dijual besok paginya. Buku ini juga akan dijual di Amazon dan akan tersedia untuk diunduh gratis di
denman.org/book . Anda dapat menambahkan diri Anda ke daftar peretas
Nmap dan menerima berita tentang program saya.
Slide berikut berisi daftar mereka yang berkontribusi pada peningkatan program
Nmap , dimulai dengan versi 4.50, yang dirilis 9 bulan lalu. Saya tidak bisa melakukan apa pun tanpa bantuan mereka. Proyek kami sangat berhutang budi kepada sukarelawan yang bergabung dan membantunya menjadi lebih baik.
Dan sekarang saya masih punya waktu untuk menjawab beberapa pertanyaan.
Memang, saya merasa tidak enak di Jerman dan Inggris dan di negara-negara lain yang telah mengeluarkan undang-undang yang melarang orang menggunakan alat-alat seperti
Nmap . Ya, orang baik dan orang jahat dapat menggunakannya, tetapi lebih baik untuk meningkatkan jaringan mereka, dan tidak bertindak serupa dengan mereka yang melarang penggunaan palu, karena mereka dapat membunuh seseorang. Secara pribadi, saya suka berbicara di Jerman dan Inggris, jadi larangan seperti itu bisa menjadi masalah potensial bagi saya, karena saya tidak ingin ditangkap karena melanggar hukum.

Saya bahkan tidak bisa menjelaskan kepada hakim apa motivasi saya, karena saya tidak tahu bahasa Jerman sama sekali. Karena itu, saya senang bahwa beberapa asosiasi orang berjuang melawan hukum ini.
Jika Anda masih memiliki pertanyaan, saya akan dengan senang hati menjawabnya di kamar 103, tepat di seberang aula. Terima kasih atas perhatian Anda!

Terima kasih telah tinggal bersama kami. Apakah Anda suka artikel kami? Ingin melihat materi yang lebih menarik? Dukung kami dengan melakukan pemesanan atau merekomendasikannya kepada teman-teman Anda,
diskon 30% untuk pengguna Habr pada analog unik dari server entry-level yang kami temukan untuk Anda: Seluruh kebenaran tentang VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps dari $ 20 atau bagaimana membagi server? (pilihan tersedia dengan RAID1 dan RAID10, hingga 24 core dan hingga 40GB DDR4).
VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps hingga Desember secara gratis ketika membayar untuk jangka waktu enam bulan, Anda dapat memesan di
sini .
Dell R730xd 2 kali lebih murah? Hanya kami yang memiliki
2 x Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 TV dari $ 249 di Belanda dan Amerika Serikat! Baca tentang
Cara Membangun Infrastruktur Bldg. kelas menggunakan server Dell R730xd E5-2650 v4 seharga 9.000 euro untuk satu sen?