Salin folder DriverBuddyReloaded dan DriverBuddyReloaded.py file skrip ke folder IDA Plugins, misalnya:
%APPDATA%Hex-RaysIDA PropluginsC:Program FilesIDA Pro 7.6plugins~/.idapro/plugins/ Jika Anda menggunakan Python v. 3.x, jalankan biner idapyswitch.exe (terletak di folder Ida) dari prompt perintah admin.
Catatan: IDA SDK> V.7.5 diperlukan agar skrip ini dapat dijalankan.
Untuk menggunakan fitur analisis otomatis:
Edit -> Plugins -> Driver Buddy Reloaded atau tekan CTRL+ALT+A untuk memulai analisis otomatis.<DRIVER_NAME>.sys-YYYY-MM-DD-TIME_STAMP-DriverBuddyReloaded_autoanalysis.txt file yang berisi hasil analisis, akan ditulis di bawah direktori DB IDA.Untuk memecahkan kode ioctl:
Driver Buddy Reloaded -> Decode IOCTL ; Atau, tekan pintasan CTRL+ALT+D .Untuk mendekode semua ioctl dalam suatu fungsi:
DispatchDeviceControl , DispatchInternalDeviceControl , Possible_DispatchDeviceControl_# )Driver Buddy Reloaded -> Decode ALL IOCTLs in Function ; Atau, tekan pintasan CTRL+ALT+F .DriverName.sys-2021-12-10-TIME_STAMP-IOCTLs.txt / DriverName.sys-2021-12-10-TIME_STAMP-IOCTLs.txt_dumb.txt file, berisi semua IOCTL yang diterjemahkan hingga saat itu, akan ditulis di bawah Direkori DB IDA. Direktori rentan_function_lists berisi daftar fungsi yang berpotensi berbahaya/bermasalah, API Windows dan opcode; Deskripsi singkat tentang mengapa fungsi/API tertentu telah terdaftar disediakan. Anda dapat mengedit daftar custom termasuk fungsi spesifik driver.
Catatan : winapi_function_prefixes akan mencocokkan sebagian untuk memulai nama fungsi (misalnya Zw akan cocok dengan ZwClose , ZwCommitComplete dan sebagainya) sementara winapi_functions hanya akan melakukan pertandingan yang tepat.
Di find_opcodes.py, opsi find_opcode_data akan mencegah pemuda pengemudi dimuat ulang untuk menemukan opcodes di bagian data. Menggantinya ke True akan mencetak sesuatu di sepanjang baris ini: Found jnz short loc_15862 in sub_15820 at 0x00015852 biasanya, pergi pada alamat yang ditunjukkan dan mendefinisikan ulang seleksi karena kode akan membawa kembali opcode yang dicari.
Watch out : Menggantinya menjadi True , akan menghasilkan lebih banyak positif palsu!
Driver Buddy Reloaded adalah plugin Ida Pro Python yang membantu mengotomatisasi beberapa tugas pembalap reverse windows windows. Ini memiliki sejumlah fitur praktis, seperti:
DispatchDeviceControl / DispatchInternalDeviceControlWDF dan WDMIRP dan IO_STACK_LOCATIONWDF yang biasanya tidak berlabelDeviceNamePooltags 
Alat ini dapat secara otomatis menemukan dan mengidentifikasi rutinitas DispatchDeviceControl . Fungsi ini digunakan untuk merutekan semua kode DeviceIoControl yang masuk ke fungsi driver spesifik yang terkait dengan kode itu. Secara otomatis mengidentifikasi fungsi ini membuat menemukan kode DeviceIoControl yang valid untuk setiap driver lebih cepat. Selain itu, ketika menyelidiki kemungkinan kerentanan dalam pengemudi karena kecelakaan, mengetahui lokasi fungsi ini membantu mempersempit fokus pada panggilan fungsi spesifik yang terkait dengan kode DeviceIoControl yang mogok.
Ketika analisis berhasil beberapa subs akan diganti namanya sebagai berikut:
DriverEntry : Rutinitas yang disediakan driver pertama yang dipanggil setelah pengemudi dimuat. Ini bertanggung jawab untuk menginisialisasi pengemudi.Real_Driver_Entry : Biasanya fungsi di mana eksekusi dari DriverEntry telah ditransfer ke. Biasanya di mana DeviceName diinisialisasi.DispatchDeviceControl / DispatchInternalDeviceControl : Jika alat tersebut dapat memulihkan fungsi pada beberapa offset spesifik, fungsi tersebut kemudian akan diganti namanya dengan nama yang sesuai.Possible_DispatchDeviceControl_# : Jika alat ini tidak dapat memulihkan DispatchDeviceControl atau DispatchInternalDeviceControl , ia menggunakan pencarian eksperimental, mengikuti aliran eksekusi, dan memeriksa kasus -kasus di mana fungsi memuat IO_STACK_LOCATION & IRP alamat yang diketahui; menunjukkan bahwa fungsi bisa berupa dispatchdeviceControl. Karena didasarkan pada heuristik, itu bisa mengembalikan lebih dari satu hasil, dan rentan terhadap positif palsu. 
Beberapa struktur pengemudi dibagi di antara semua driver WDM / WDF . Alat ini dapat mengidentifikasi struktur ini secara otomatis, seperti struktur IO_STACK_LOCATION , IRP , dan DeviceObject dan dapat membantu menghemat waktu selama proses rekayasa terbalik dan memberikan konteks ke area driver di mana fungsi -fungsi ini digunakan.

Sementara membalikkan driver, adalah umum untuk menemukan kode IOCTL sebagai bagian dari analisis. Kode -kode ini, ketika diterjemahkan, mengungkapkan informasi yang berguna dan dapat menarik fokus ke bagian -bagian tertentu dari pengemudi di mana kerentanan lebih mungkin ada.
Dengan mengklik kanan pada kode IOCTL potensial, opsi menu konteks disajikan (sebagai alternatif menggunakan pintasan Ctrl+Alt+D ketika kursor berada di jalur yang berisi kode IOCTL yang diduga) dan dapat digunakan untuk memecahkan kode nilainya. Ini akan mencetak tabel dengan semua kode IOCTL yang diterjemahkan. Dengan mengklik kanan pada kode IOCTL yang diterjemahkan, dalam tampilan pembongkaran, dimungkinkan untuk menandainya sebagai tidak valid; Ini akan meninggalkan komentar non-octl utuh.
Jika Anda mengklik kanan, sebagai alternatif menggunakan pintasan Ctrl+Alt+F , pada instruksi pertama dari fungsi yang Anda yakini sebagai Dispatcher IOCTL ( DispatchDeviceControl , DispatchInternalDeviceControl , Possible_DispatchDeviceControl_# untuk menilai semua ini . Ini agak hacky tetapi sebagian besar waktu dapat mempercepat segalanya.
DriverName.sys-2021-12-10-TIME_STAMP-IOCTLs.txt / DriverName.sys-2021-12-10-TIME_STAMP-IOCTLs.txt_dumb.txt file, berisi semua IOCTL yang diterjemahkan hingga saat itu, akan ditulis di bawah Direkori DB IDA. 

Reloaded Buddy Driver memiliki daftar fungsi C/C ++, Opcode dan Windows API (didefinisikan dalam direktori rentan_function_lists) yang umumnya rentan atau yang dapat memfasilitasi kondisi overflow buffer. Semua contoh yang ditemukan dilaporkan kembali selama analisis otomatis dan dapat membantu sambil mencari kemungkinan jalur kode yang dikendalikan pengguna mencapai fungsi sensitif.

Alat ini secara otomatis mencoba menemukan jalur perangkat yang terdaftar driver ( DeviceName ), jika tidak ada jalur yang dapat ditemukan dengan melihat string unicode di dalam biner, maka analis dapat secara manual mencoba menggunakan benang Madiant dalam upaya untuk menemukan jalur yang dikecam.

Selama analisis otomatis, alat ini juga membuang Pooltags yang digunakan oleh biner dalam format yang berfungsi dengan pooltags.txt . Output kemudian dapat disalin di akhir file dan kemudian diambil oleh WindBG.
DriverName.sys-2021-12-10-TIME_STAMP-pooltags.txt , yang berisi semua pooltag yang dibuang, akan ditulis di bawah direktori DB IDA. 
0x10000 yang secara otomatis didekodekan, sehingga untuk mencegah sejumlah positif positif palsu. Edisi #15DispatchDeviceControl hanya berfungsi untuk driver x64find_opcode_data akan mencegah pemuda pengemudi dimuat ulang untuk menemukan opcodes di bagian data. Menggantinya ke True akan mencetak sesuatu di sepanjang baris ini: Found jnz short loc_15862 in sub_15820 at 0x00015852 biasanya, pergi pada alamat yang ditunjukkan dan mendefinisikan ulang seleksi karena kode akan membawa kembali opcode yang dicari. Watch out : Ini rentan terhadap positif palsu!