
HyperDBG Debugger adalah sumber terbuka, berbasis komunitas, berbantuan hypervisor, mode pengguna, dan debugger mode kernel dengan fokus menggunakan teknologi perangkat keras modern. Ini adalah debugger yang dirancang untuk menganalisis, fuzzing, dan membalikkan.
Anda dapat mengikuti HyperDBG di Twitter atau Mastodon untuk mendapat pemberitahuan tentang rilis baru, atau bergabung dengan salah satu grup HyperDBG, di mana Anda dapat meminta pengembang dan penggemar open-source untuk membantu mengatur dan menggunakan HyperDBG.
HyperDBG dirancang dengan fokus pada penggunaan teknologi perangkat keras modern untuk memberikan fitur baru untuk dunia debugger. Ini beroperasi di atas Windows dengan virtualisasi sistem yang sudah berjalan menggunakan Intel VT-X dan EPT. Debugger ini bertujuan untuk tidak menggunakan API dan mekanisme debugging perangkat lunak apa pun, tetapi sebaliknya, ia menggunakan tabel halaman lapisan kedua (alias tabel halaman diperluas atau EPT) secara luas untuk memantau kernel dan eksekusi pengguna.
Menggunakan pemisahan TLB, dan memiliki fitur seperti mengukur cakupan kode dan memantau semua MOV ke/dari memori oleh suatu fungsi, menjadikan HyperDBG debugger yang unik.
Meskipun memiliki fitur baru, HyperDBG mencoba untuk diam -diam. Itu tidak menggunakan API debugging untuk men-debug windows atau aplikasi apa pun, sehingga metode anti-debugging klasik tidak akan mendeteksinya. Juga, ia menolak eksploitasi metode delta waktu (misalnya, RDTSC/RDTSCP) untuk mendeteksi keberadaan hypervisor, oleh karena itu membuatnya lebih sulit untuk aplikasi, pengepakan, pelindung, malware, mesin anti-pemecah, dll. Untuk menemukan debugger.
Anda dapat mengunduh file biner terbaru yang dikompilasi dari rilis ; Jika tidak, jika Anda ingin membangun HyperDBG, Anda harus mengkloning hyperdbg dengan bendera --recursive .
git clone --recursive https://github.com/HyperDbg/HyperDbg.git
Silakan kunjungi Build & Instal dan Mulailah Cepat untuk Penjelasan Detail tentang Cara Memulai dengan HyperDBG . Anda juga dapat melihat FAQ untuk informasi lebih lanjut, atau jika Anda sebelumnya menggunakan debugger asli lainnya seperti GDB, LLDB, atau WindBG, Anda dapat melihat peta perintah.
Seri tutorial OpenSecurityTraining2 "Reversing with HyperDBG (DBG3301) , tersedia di situs web OST2 ( lebih disukai ) dan YouTube adalah cara yang disarankan untuk memulai dan mempelajari HyperDBG. Ini memandu Anda melalui langkah -langkah awal menggunakan HyperDBG, mencakup konsep -konsep penting, prinsip -prinsip, dan fungsi debugging, bersama dengan contoh -contoh praktis dan banyak metode rekayasa terbalik yang unik untuk HyperDBG.
Jika Anda tertarik untuk memahami desain internal dan arsitektur hypervisor dan hyperdBG, Anda dapat membaca tutorial hypervisor dari awal .
Jika Anda menggunakan salah satu komponen HyperDBG dalam pekerjaan Anda, harap pertimbangkan mengutip makalah kami.
1. HyperDBG: menciptakan kembali perangkat keras debugging (CCS'22) [arxiv]
@inproceedings{karvandi2022hyperdbg,
title={HyperDbg: Reinventing Hardware-Assisted Debugging},
author={Karvandi, Mohammad Sina and Gholamrezaei, MohammadHosein and Khalaj Monfared, Saleh and Meghdadizanjani, Soroush and Abbassi, Behrooz and Amini, Ali and Mortazavi, Reza and Gorgin, Saeid and Rahmati, Dara and Schwarz, Michael},
booktitle={Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security},
pages={1709--1723},
year={2022}
}
2. Mesin pembalik: merekonstruksi asumsi memori [arxiv]
@article{karvandi2024reversing,
title={The Reversing Machine: Reconstructing Memory Assumptions},
author={Karvandi, Mohammad Sina and Meghdadizanjani, Soroush and Arasteh, Sima and Monfared, Saleh Khalaj and Fallah, Mohammad K and Gorgin, Saeid and Lee, Jeong-A and van der Kouwe, Erik},
journal={arXiv preprint arXiv:2405.00298},
year={2024}
}
Anda juga dapat membaca artikel ini karena menggambarkan arsitektur keseluruhan, kesulitan teknis, keputusan desain, dan internal HyperDBG Debugger, artikel ini tentang upaya kami tentang transparansi EXIT VM, dan artikel ini tentang mengejar bug di dalam hypervisors. Lebih banyak artikel, posting, dan sumber daya tersedia di repo yang luar biasa , dan di samping itu, SLIDE REPO menyediakan slide presentasi untuk referensi lebih lanjut.
Anda dapat membaca tentang desain internal HyperDBG dan fitur -fiturnya dalam dokumentasi. Berikut diagram tingkat atas yang menunjukkan cara kerja HyperDBG:
Anda dapat menulis skrip Anda untuk mengotomatiskan perjalanan debugging Anda. HyperDBG memiliki mesin skrip yang kuat, cepat, dan seluruhnya di sisi kernel.
Berkontribusi pada HyperDBG sangat dihargai. Kami telah membuat daftar tugas potensial yang mungkin Anda minati.
Jika Anda ingin berkontribusi pada HyperDBG, silakan baca panduan kontribusi.
HyperDBG , dan semua submodul dan repo, kecuali jika lisensi ditentukan, dilisensikan berdasarkan lisensi GPLV3 .
Ketergantungan dilisensikan oleh mereka sendiri.