Natas Web. Passage dari platform KKP bertujuan untuk mengeksploitasi kerentanan Web

gambar

Pada artikel ini, kita akan membahas operasi beberapa identitas WEB menggunakan wargame Natas sebagai contoh. Setiap level memiliki akses ke kata sandi level selanjutnya. Semua kata sandi juga disimpan di file / etc / natas_webpass /. Sebagai contoh, kata sandi untuk natas5 disimpan dalam file / etc / natas_webpass / natas5 dan hanya-baca untuk pengguna natas4 dan natas5.

Informasi Organisasi
Terutama bagi mereka yang ingin mempelajari sesuatu yang baru dan berkembang di bidang informasi dan keamanan komputer, saya akan menulis dan berbicara tentang kategori berikut:

  • PWN;
  • kriptografi (Crypto);
  • teknologi jaringan (Jaringan);
  • membalikkan (Reverse Engineering);
  • steganografi (Stegano);
  • pencarian dan eksploitasi kerentanan WEB.

Selain itu, saya akan membagikan pengalaman saya dalam forensik komputer, analisis malware dan firmware, serangan pada jaringan nirkabel dan jaringan area lokal, melakukan pentest dan menulis eksploitasi.

Agar Anda dapat mengetahui tentang artikel baru, perangkat lunak, dan informasi lainnya, saya membuat saluran di Telegram dan grup untuk membahas masalah apa pun di bidang ICD. Juga, saya pribadi akan mempertimbangkan permintaan pribadi Anda, pertanyaan, saran dan rekomendasi secara pribadi dan akan menjawab semua orang .

Semua informasi disediakan hanya untuk tujuan pendidikan. Penulis dokumen ini tidak bertanggung jawab atas kerusakan yang disebabkan seseorang sebagai akibat dari menggunakan pengetahuan dan metode yang diperoleh sebagai hasil dari mempelajari dokumen ini.

level 0


Kami melihat kode sumber halaman dan memeriksa komentar.

gambar

Kami menemukan kata sandi.
Sangat sering, ketika mengembangkan situs, pengembang mengomentari berbagai informasi tambahan untuk diri mereka sendiri, termasuk data otorisasi.

level 1


Kami melihat kode sumber halaman lagi, tetapi acara klik kanan mouse ditugaskan untuk acara javascript, yang mencegah menu konteks muncul.

gambar

Untuk melihat halaman, Anda dapat menggunakan tombol pintas peramban, maka acara menekan tombol kanan mouse tidak akan berfungsi.

gambar

Kami menemukan kata sandi.
Sebagai opsi (terkadang prioritas), Anda dapat mengunduh seluruh halaman dan melihat kode.
wget --http-user=natas1 --http-password=gtVrDuiDfck831PqWsLEZy5gyDz1clto http://natas1.natas.labs.overthewire.org 

gambar

level 2


Kami melihat kode sumber halaman lagi, perhatikan bahwa gambar memuat pada halaman.

gambar

Mari kita pergi ke direktori tempat gambar itu diunduh. Kami mengamati bahwa direktori ini tidak diindeks dan tersedia untuk pengguna.

gambar

Kami mengambil kata sandi.

gambar
Untuk menghindari melihat file dalam direktori, pengaturan server (dalam hal ini /etc/apche2/httpd.conf) harus memiliki larangan pengindeksan file. Atau dalam direktori ini harus berupa file index.html.

level 3


Kami melihat kode sumber halaman lagi, tidak ada yang menarik di sana. Item kedua setelah melihat kode sumber adalah memindai file dan direktori. Tentukan pengguna dan kata sandi untuk otentikasi http sebagai parameter utilitas dirb.

gambar

File robots.txt berisi daftar direktori dan file yang tidak boleh dilihat oleh robot mesin pencari (misalnya, google dan yandex).

gambar

Ayo pergi ke direktori tersembunyi di situs, cari file dan ambil kata sandinya.

gambar

gambar
Sebagai analog, Anda dapat menggunakan utilitas dirsearch, atau burpsuite.

level 4


Server menginformasikan dari mana mereka pergi dan mengatakan halaman mana yang harus dituju. Dia dapat memeriksa data ini hanya di header protokol HTTP.

gambar

Di browser, pilih bilah alat β†’ jaringan β†’ permintaan terakhir dan β€œubah dan kirim”. Anda harus mengubah bidang Perujuk - ini menunjukkan dengan tepat dari mana kita dapatkan.

gambar

Tetap mengambil kata sandi.

gambar
Tindakan ini burpsuite.

Penting untuk terus meninjau bidang HTTP mana yang dilihat oleh Server Web. Ini adalah data pengguna yang paling jarang difilter.

level 5


Layanan melaporkan bahwa kami belum masuk. Artinya, ia menyimpan data otorisasi kami. Satu-satunya tempat ini dapat ditransmisikan adalah sesi cookie.

gambar

Mari kita lihat cookie (untuk kenyamanan, sebaiknya instal ekstensi di browser), dan ubah nilai parameter login menjadi 1.

gambar

Muat ulang halaman dan kumpulkan kata sandi.

gambar
Kerentanan ini diklasifikasikan sebagai Otentikasi Rusak dan Manajemen Sesi.

level 6


Layanan ini memberi kami kode sumber untuk dianalisis.

gambar

Rahasia yang harus kita masukkan sudah termasuk (terhubung dari file).

gambar

Pergi ke alamat file ini di server dan dapatkan
sebuah rahasia. Karena file-file ini mengandung kode php, mereka
hanya ditampilkan jika Anda mengunduhnya.

gambar

Kirim rahasia, dapatkan kata sandi.

level 7


Dengan mengklik kedua tautan, kami perhatikan bagaimana tautannya. Nama file di server dilewatkan di halaman parameter GET.

gambar

Mari kita coba tentukan path ke file / etc / passwd sebagai parameter.

gambar

Dan mereka memberi tahu kami di mana mendapatkan kata sandi.

gambar
Kerentanan diklasifikasikan sebagai LFI.

level 8


Kode sumber layanan disediakan. String yang dikodekan dan metode pengkodean disimpan.

gambar

Hal ini diperlukan untuk memecahkan kode dalam urutan terbalik:

  1. mengkonversi dari tampilan hex ke representasi biner;
  2. balik garis;
  3. decode base64.

 <?php $secret = "3d3d516343746d4d6d6c315669563362"; echo base64_decode(strrev(hex2bin($secret)))."\n"; ?> 

gambar

Kirim rahasia dan dapatkan kata sandi.

gambar

level 9


Dari analisis kode sumber, menjadi jelas bahwa data pengguna ditransfer ke baris perintah untuk mencari data dalam file.

gambar

Karena data tidak disaring, Anda dapat mengumpulkan pipa dan menjalankan perintah OS lainnya. Jika Anda meneruskan string ke permintaan, misalnya: "|| ls # ", maka permintaan penuh akan menjadi" grep -i || ls # dictionary.txt. " Semuanya setelah || - akan dieksekusi dengan kesalahan, dan setelah # - itu akan dikomentari, yaitu, kita hanya mendapatkan output dari perintah ls.

gambar

Jadi, kami membaca file: β€œ|| cat /etc/natas_webpass / natas10 # ".

gambar
Kerentanan diklasifikasikan sebagai Injeksi Perintah OS.

level 10


Dari analisis kode sumber, menjadi jelas bahwa data pengguna ditransfer ke baris perintah untuk mencari data dalam file.

gambar

Tugasnya sama dengan di level 9, hanya sekarang ada filter. T.O. tanda-tanda akan hilang dari permintaan: ";", "|", "&". Anda dapat membaca file dengan sah! Misalkan kata sandi kita memiliki simbol "z": "z / etc / natas_webpass / natas11 #".

gambar

Untuk dilanjutkan. Anda dapat bergabung dengan kami di Telegram .

Source: https://habr.com/ru/post/id464111/


All Articles