Dalam artikel ini kami akan menyelesaikan tugas ke-25 dari tapak
maklumat organisasiTerutama bagi mereka yang ingin mempelajari sesuatu yang baru dan berkembang dalam mana-mana bidang maklumat dan keselamatan komputer, saya akan menulis dan bercakap mengenai kategori berikut:
- PWN;
- kriptografi (Crypto);
- teknologi rangkaian (Rangkaian);
- terbalik (Reverse Engineering);
- steganografi (Stegano);
- carian dan eksploitasi kelemahan WEB.
Di samping itu, saya akan berkongsi pengalaman saya dalam forensik komputer, perisian hasad dan analisis perisian tegar, serangan ke atas rangkaian wayarles dan rangkaian kawasan setempat, menjalankan pentest dan eksploitasi penulisan.
Supaya anda boleh mengetahui tentang artikel baru, perisian dan maklumat lain, saya buat
Semua maklumat disediakan untuk tujuan pendidikan sahaja. Pengarang dokumen ini tidak bertanggungjawab ke atas sebarang kerosakan yang dialami oleh sesiapa akibat menggunakan pengetahuan dan kaedah yang diperoleh hasil daripada kajian dokumen ini.
Menyelesaikan tugas otp
Mari kita teruskan dengan bahagian kedua. Saya akan katakan dengan segera bahawa ia lebih rumit daripada yang pertama, tetapi kali ini mereka tidak memberikan kod sumber program. Jangan lupa tentang perbincangan di sini (https://t.me/RalfHackerPublicChat) dan di sini (https://t.me/RalfHackerChannel). Mari kita mulakan.
Klik pada ikon dengan tandatangan otp. Kami diberi alamat dan pelabuhan untuk disambungkan.
Kami menyambung dan melihat sekeliling pelayan.
Bendera yang tidak dapat kita baca, program dan kod sumbernya. Mari kita lihat sumbernya.
Mari kita selesaikan. Program ini mengambil kata laluan sebagai hujah.
Seterusnya, rawak 16 bait disimpan dalam pembolehubah otp.
Fail dengan nama rawak dicipta dalam folder tmp (8 bait pertama ialah otp) dan 8 bait rawak ditulis kepadanya (8 bait kedua ialah otp).
Atas sebab tertentu, nilai fail yang dibuat dibaca dan dibandingkan dengan kata laluan yang dimasukkan.
Di sinilah kelemahan datang. Ia terdiri daripada menyimpan secara pertengahan nombor yang dijana ke fail. Kita boleh mengehadkan saiz fail, contohnya, kepada 0, kemudian apabila menulis dan membaca, 0 akan dibandingkan dengan kata laluan. Ini boleh dilakukan seperti ini.
# ulimit -f 0
Sekarang mari kita jalankan program.
Kami mendapat ralat. Tidak mengapa, ia boleh diproses menggunakan ular sawa yang sama.
python -c "import os, signal; signal.signal(signal.SIGXFSZ, signal.SIG_IGN); os.system('./otp 0')"
Kami mendapat bendera dan 100 mata mudah kami. Dan kami teruskan: dalam artikel seterusnya kami akan menyentuh di Web. Anda boleh sertai kami di
Sumber: www.habr.com