Repo ini bermaksud untuk melayani dua tujuan. Pertama, ia menyediakan serangkaian perintah kesadaran situasional dasar yang diterapkan dalam Beacon Object File (BOF). Hal ini memungkinkan Anda melakukan beberapa pemeriksaan pada host sebelum Anda mulai menjalankan perintah yang mungkin lebih invasif.
Tujuan yang lebih besar adalah memberikan contoh kode dan alur kerja bagi orang lain untuk mulai membuat lebih banyak BOF. Ini adalah dokumen pendamping dari postingan blog yang dibuat di sini: https://www.trustedsec.com/blog/a-developers-introduction-to-beacon-object-files/
Jika Anda ingin menggunakan alur kerja yang sama dengan repositori ini, langkah dasarnya adalah sebagai berikut:
Secara realistis, ini dapat dikompresi menjadi skrip pembantu, namun langkah-langkah tersebut tidak diambil untuk upaya ini.
Perintah | Penggunaan | Catatan |
---|---|---|
adcs_enum | adcs_enum | Hitung CA dan templat di AD menggunakan fungsi Win32 |
adcs_enum_com | adcs_enum_com | Hitung CA dan templat di AD menggunakan objek COM ICertConfig |
adcs_enum_com2 | adcs_enum_com2 | Hitung CA dan templat di AD menggunakan objek COM IX509PolicyServerListManager |
adv_audit_policies | adv_audit_policies | Ambil kebijakan audit keamanan tingkat lanjut |
arp | arp | Daftar tabel ARP |
cacl | cacls [jalur file] | Cantumkan izin pengguna untuk file tertentu, wildcard didukung |
dir | dir [direktori] [/s] | Daftar file dalam direktori. Mendukung wildcard (misalnya "C:WindowsS*") tidak seperti perintah CobaltStrike ls |
driverigs | driverigs | Hitung layanan yang diinstal Imagepaths untuk memeriksa sertifikat penandatanganan terhadap vendor AV/EDR yang dikenal |
enum_filter_driver | enum_filter_driver [opt:komputer] | Hitung driver filter |
enumSesi Lokal | enumSesi Lokal | Hitung sesi pengguna yang saat ini terlampir baik lokal maupun melalui RDP |
env | env | Daftar variabel lingkungan proses |
temukanLoadedModule | findLoadedModule [bagian modul] [opt:procnamepart] | Temukan proses apa *modulepart* yang dimuat, secara opsional cari saja *procnamepart* |
dapatkan_kata sandi_kebijakan | get_password_policy [nama host] | Dapatkan kebijakan kata sandi dan penguncian yang dikonfigurasi pada server target atau domain |
ipconfig | ipconfig | Cantumkan alamat IPv4, nama host, dan server DNS |
pencarian ldap | ldapsearch [kueri] [opt: atribut] [opt: results_limit] [opt: nama host atau IP DC] [opt: Nama Khusus] | Jalankan pencarian LDAP (CATATAN: tentukan *,ntsecuritydescriptor sebagai parameter atribut jika Anda ingin semua atribut + ACL objek yang dikodekan base64, ini kemudian dapat diselesaikan menggunakan BOFHound. Mungkin dapat merusak pagination, meskipun semuanya tampak baik-baik saja selama pengujian.) |
daftardns | daftardns | Daftar entri cache DNS. Cobalah untuk menanyakan dan menyelesaikan masing-masing |
list_firewall_rules | list_firewall_rules | Daftar aturan firewall Windows |
listmods | listmods [memilih: pid] | Daftar modul proses (DLL). Targetkan proses saat ini jika PID kosong. Pelengkap driver untuk menentukan apakah proses kami disuntikkan oleh AV/EDR |
pipa daftar | pipa daftar | Daftar pipa bernama |
lokal | lokal | Daftar bahasa lokal sistem, ID lokal, tanggal, waktu, dan negara |
netGroupList | netGroupList [memilih: domain] | Daftar grup dari domain default atau yang ditentukan |
netGroupListMembers | netGroupListMembers [nama grup] [pilihan: domain] | Daftar anggota grup dari domain default atau yang ditentukan |
netLocalGroupList | netLocalGroupList [memilih: server] | Daftar grup lokal dari komputer lokal atau tertentu |
netLocalGroupListMembers | netLocalGroupListMembers [nama grup] [pilihan: server] | Daftar grup lokal dari komputer lokal atau tertentu |
netLocalGroupListMembers2 | netLocalGroupListMembers2 [memilih: nama grup] [memilih: server] | Versi modifikasi dari netLocalGroupListMembers yang mendukung BOFHound |
netlogedon | netlogedon [nama host] | Kembalikan pengguna yang login di komputer lokal atau jarak jauh |
netlogedon2 | netlogedon2 [pilih: nama host] | Versi modifikasi dari netloggedon yang mendukung BOFHound |
sesi jaringan | sesi jaringan [pilih: komputer] | Menghitung sesi di komputer lokal atau tertentu |
sesi jaringan2 | netsession2 [opt:komputer] [opt:metode resolusi] [opt:dns server] | Versi netsession yang dimodifikasi yang mendukung BOFHound |
saham bersih | sharenet [nama host] | Daftar share di komputer lokal atau jarak jauh |
status bersih | status bersih | Port daftar TCP dan UDP IPv4 |
waktu bersih | waktu bersih [nama host] | Menampilkan waktu di komputer jarak jauh |
waktu netup | waktu netup [nama host] | Mengembalikan informasi tentang waktu boot pada komputer lokal atau jarak jauh |
pengguna net | netuser [nama pengguna] [pilih: domain] | Dapatkan info tentang pengguna tertentu. Tarik dari domain jika nama domain ditentukan |
netuse_add | netuse_add [nama berbagi] [opt:nama pengguna] [opt:kata sandi] [opt:/DEVICE:nama perangkat] [opt:/PERSIST] [opt:/REQUIREPRIVACY] | Ikat koneksi baru ke komputer jarak jauh |
netuse_delete | netuse_delete [perangkat||namaberbagi] [pilihan:/PERSIST] [pilihan:/FORCE] | Hapus perangkat terikat / nama berbagi] |
netuse_list | netuse_list [memilih:target] | Cantumkan semua sumber daya berbagi terikat atau informasi tentang sumber daya lokal target |
tampilan bersih | tampilan bersih | Daftar komputer yang dapat dijangkau di domain saat ini |
nslookup | nslookup [nama host] [pilihan: server dns] [pilihan: jenis catatan] | Buat kueri DNS. Server DNS adalah server yang ingin Anda tanyakan (jangan tentukan atau 0 sebagai default) tipe rekamannya seperti A, AAAA, atau ANY. Beberapa situasi terbatas karena tabrakan yang diamati |
menguji | menyelidiki [tuan rumah] [pelabuhan] | Periksa apakah port tertentu terbuka |
regresi | registrasi [pilih: nama host] | Kembalikan SID pengguna yang masuk dengan menghitung HKEY_USERS. Kompatibel dengan BOFHound |
reg_query | [opt:nama host] [sarang] [jalur] [opt: nilai ke kueri] | Kueri nilai registri atau enumerasi satu kunci |
reg_query_rekursif | [memilih: nama host] [sarang] [jalur] | Menghitung kunci secara rekursif dimulai dari jalur |
sumber daya | sumber daya | Daftar penggunaan memori dan ruang disk yang tersedia pada hard drive utama |
cetak rute | cetak rute | Daftar rute IPv4 |
sc_enum | sc_enum [memilih:server] | Menghitung layanan untuk info qc, query, qfailure, dan qtriggers |
sc_qc | sc_qc [nama layanan] [opt:server] | sc qc implementasi di BOF |
sc_qdeskripsi | sc_qdescription [nama layanan] [pilihan: server] | sc qdescription implementasi di BOF |
sc_qfailure | sc_qfailure [nama layanan] [opt:server] | Kueri layanan untuk kondisi kegagalan |
sc_qtriggerinfo | sc_qtriggerinfo [nama layanan] [opt:server] | Kueri layanan untuk kondisi pemicu |
sc_query | sc_query [memilih: nama layanan] [memilih: server] | implementasi kueri sc di BOF |
schtasksenum | schtasksenum [memilih: server] | Menghitung tugas terjadwal di komputer lokal atau jarak jauh |
schtasksquery | schtasksquery [memilih: server] [jalur tugas] | Kueri tugas yang diberikan di komputer lokal atau jarak jauh |
daftar tugas | daftar tugas [pilih: server] | Daftar proses yang berjalan termasuk PID, PPID, dan ComandLine (menggunakan wmi) |
waktu aktif | waktu aktif | Daftar waktu boot sistem dan berapa lama sistem telah berjalan |
vssenum | vssenum [nama host] [pilih:namaberbagi] | Menghitung Salinan Bayangan di beberapa server Server 2012+ |
whoami | whoami | Daftar whoami /semua |
daftar jendela | daftar jendela [opt:all] | Daftar jendela yang terlihat di sesi pengguna saat ini |
wmi_query | permintaan wmi_query [pilihan: server] [pilihan: namespace] | Jalankan kueri wmi dan tampilkan hasilnya dalam format CSV |
Perhatikan alasan untuk menyertakan reg_query ketika CS memiliki perintah reg query(v) bawaan adalah karena perintah ini dapat menargetkan komputer jarak jauh dan memiliki kemampuan untuk menghitung seluruh kunci secara rekursif.
Kode fungsional untuk sebagian besar perintah ini diambil dari proyek reactos atau contoh kode yang dihosting di MSDN. Basis kode driverigs berasal dari https://Gist.github.com/jthuraisamy/4c4c751df09f83d3620013f5d370d3b9
Terima kasih kepada semua kontributor yang terdaftar di bawah kontributor. Anda masing-masing telah menyumbangkan sesuatu yang berarti pada repositori ini dan menangani saya serta proses peninjauan saya. Saya menghargai Anda semua yang telah mengajari saya dan membantu menjadikan repositori BOF ini sebaik mungkin!
BOF yang telah dikompilasi disediakan dalam proyek ini dan dikompilasi menggunakan versi terbaru Mingw-w64 yang biasanya diinstal dari Brew.
BOF ini ditulis dengan mempertimbangkan dukungan untuk Windows Vista+. Cabang baru bernama winxp_2003 telah dibuat jika Anda perlu menggunakan kumpulan utama BOF pada sistem lama tersebut. Cabang ini akan tetap berada dalam kondisi yang kurang didukung. Ini akan berfungsi, tetapi tidak diperbarui dengan setiap dorongan/fitur baru yang mungkin kami tambahkan.