AntidBG adalah kumpulan teknik debugging Windows Anti. Teknik -teknik ini dikategorikan oleh metode yang mereka gunakan untuk menemukan debugger.
Ingin melihat hal ini beraksi? Lihat daftar putar di YouTube.
AntidBG ditulis dalam C dan hanya membutuhkan satu file sumber dan header. Hampir semua metode ini dirancang untuk tidak mengambil input dan tidak menghasilkan output. Mereka bertujuan untuk menjadi pemeriksaan debugger mandiri yang secara otomatis akan melepaskan debugger.
AntidBG dirancang agar dapat dibaca sehingga pengguna dapat belajar tentang tekniknya. Jika Anda memilih untuk menggunakan metode ini dalam proyek Anda sendiri, Anda akan mendapat manfaat besar dengan menambahkan kebingungan di atas metode ini. Kebingungan bukanlah tujuan dari proyek ini.
Gauntlet adalah aplikasi sederhana yang menjalankan setiap antidbg periksa satu demi satu. Tujuannya adalah untuk menguji kemampuan Anda untuk memotong metode anti-debugging dan berhasil sampai ke ujung tantangan sambil berjalan di bawah debugger.
Ingin membuat tantangan lebih sulit ? Undefine show_debug_messages (ditentukan secara default di antidbg.cpp). Opsi ini menghasilkan kotak pesan ketika Anda tertangkap dengan informasi tentang cek yang membuat Anda.
Membantu! Metode X sepertinya tidak berhasil.
Banyak pemeriksaan anti-debugging fokus pada kasus tepi aneh. Beberapa mengharuskan Anda untuk lewat satu langkah, beberapa memerlukan debugger tertentu untuk digunakan, beberapa mengharuskan Anda untuk meneruskan pengecualian kepada debugger, dll.
Semua metode dalam antidbg telah diuji dalam kondisi yang mereka rancang bekerja pada Windows 10 64-bit. Sebagian besar (jika tidak semua) harus mengerjakan semua versi Windows lainnya juga.
Membantu! Hal ini tidak akan dikompilasi!
AntidBG dikembangkan dan diuji menggunakan Microsoft Visual Studio 2019. Selama Anda menggunakan 2019, silakan kirimkan masalah dengan detail dan saya akan dengan senang hati membantu.
Mengapa x86 Assembly inline sementara varian x64 berada dalam file .asm?
Microsoft berpikir itu akan menjadi ide bagus untuk berhenti mengizinkan pengembang menulis perakitan inline untuk x64. Saya tidak tahu mengapa, tetapi alasan umum yang saya lihat dikutip di internet adalah bahwa pengembang mengisap perakitan menulis dan kompiler jauh lebih baik. Meskipun saya tidak setuju dengan ini, saya ragu itu alasan sebenarnya. Apa pun alasannya, kita sekarang harus melompati lingkaran untuk melakukan sesuatu yang bahkan mirip. Terima kasih banyak kepada Lallouslab dan Onipot karena telah membimbing saya melalui ladang ranjau ini.
Saya memiliki lebih banyak pertanyaan.
Saya akan dengan senang hati menjawabnya! Harap kirimkan masalah github dengan pertanyaan Anda dan saya akan mencoba yang terbaik untuk membantu sesegera mungkin.
Terima kasih kepada para kontributor dan semua orang yang telah memberikan umpan balik di masa lalu di proyek ini.