Defensive research / Threat analysis

Membedah "Daerah SD" (Bagian 5): Akarnya di 2021 — Trio Leluhur di Balik Keluarga Buka–Ngopi

10 Oktober 2026Windows / Static Analysis / Threat Intel / Anti-Cheat
Catatan editorial: Seluruh nama individu, brand, dan merk dagang dalam tulisan ini disamarkan sesuai kebijakan editorial Dolenthis. Merek-merek cheat dirujuk dengan julukan peran (merek tuan rumah, merek hantu, dan seterusnya); paket leluhur yang menjadi subjek bagian ini dirujuk sebagai "trio 2021". Nama pembangun yang terbaca pada artefak tidak dicetak — ia dirujuk sebagai "satu nama pembangun yang sama". Identifier teknis (nama file, hash, path, teknik MITRE ATT&CK) ditulis apa adanya karena merupakan indikator deteksi.

Ringkasan Eksekutif

Empat bagian pertama seri ini memetakan ekosistem "Daerah SD" sebagaimana ia beroperasi hari ini: etalase, kurir bersama, kasir lisensi, dan spesifikasi sidik jari mesin yang dipakai lintas merek. Bagian 5 mundur lima tahun ke belakang — ke titik awal yang selama ini hanya berupa dugaan.

Di sebuah repositori publik tersimpan sebuah paket cheat bertanggal November 2021: tiga file kecil — BUKA.exe (27.648 byte), Ngopi.exe (29.696 byte), dan Teh.dll (46.592 byte) — ditemani enam DLL runtime stok. Analisis statis sampai level dekompilasi membuktikan paket ini bukan sekadar cheat tua yang kebetulan mirip. Ia adalah leluhur langsung keluarga Buka–Ngopi yang menjadi tulang punggung ekosistem tuan rumah dan merek hantu di 2025–2026. Buktinya bukan satu, melainkan empat lapis yang saling mengunci: jalur proyek pengembang yang sama persis, konstanta obfuskasi yang nyaris identik, idiom penyiapan file yang sama langkah demi langkah, dan pola peran-berdasarkan-nama yang bertahan lintas generasi.

Dua temuan pendamping membuat paket ini semakin berharga. Pertama, "source code" yang dipajang bersama paket itu ternyata umpan — pseudo-code yang mustahil ter-compile dan tidak cocok dengan perilaku binary-nya. Kedua, generasi 2021 ini sepenuhnya luring: belum ada lisensi, belum ada sidik jari mesin, belum ada panel member. Seluruh lapisan komersial yang dibedah Bagian 2 dan Bagian 4 ternyata tambahan belakangan di atas fondasi yang sudah jadi sejak 2021. Analisis tetap murni statis — tidak satu pun file dijalankan; logika dipulihkan lewat dekompilasi offline (125–141 fungsi per file).

1. Paket Tua di Repositori Publik

Paket ini ditemukan tersimpan apa adanya di sebuah repositori publik yang dibuat akhir November 2021, lengkap dengan enam DLL pendamping runtime kompilator era itu (msvcp/msvcr seri 90 dan 100). Tidak ada protektor komersial, tidak ada virtualisasi, tidak ada obfuskasi .NET — ketiga file intinya adalah binary natif polos hasil kompilator era 2010, tanpa tanda tangan digital. Dibandingkan sampel-sampel generasi sekarang yang berlapis-lapis, trio ini praktis transparan: seluruh logikanya terbaca dari dekompilasi.

Satu pemeriksaan awal sudah memberi petunjuk arah. Keenam DLL runtime pendampingnya byte-identik dengan salinan yang beredar di paket-paket ekosistem tuan rumah — runtime stok yang sama, dibawa dari paket ke paket lintas tahun. Bukan bukti kepemilikan, tetapi pola kebiasaan yang sama: jangan bawa yang baru bila yang lama masih bekerja.

Pembagian kerja di dalam trio ini tegas, dan — seperti akan terlihat — familier:

2. Sang Pembuka: BUKA.exe

BUKA.exe tidak menyentuh game secara langsung. Tugasnya menyiapkan panggung, membunuh penjaga, lalu memanggil pemeran berikutnya. Alur terkonfirmasi dari dekompilasinya:

  1. Bersihkan dan buat ulang folder penyiapan di jalur tetap C:\Windows\qwwqteqwt\ — folder tersembunyi di dalam direktori sistem, nama acak yang tidak berarti apa-apa.
  2. Bunuh dua proses: proses game dan CB.exe — modul anti-cheat bawaan game — lewat enumerasi proses Toolhelp yang diakhiri TerminateProcess. Anti-cheat-nya dimatikan sebelum sempat bekerja, bukan dilawan saat bekerja.
  3. Salin muatan ke folder penyiapan: Teh.dll, Ngopi.exe, dan keenam DLL runtime.
  4. Samarkan dan acak: salinan injector diganti nama menjadi DukungSoket.mentah, salinan modul menjadi Soket.mentah — ekstensi .mentah yang tidak dikenal Windows. Kedua file lalu dibuka dan di-append data sampah hasil rand() dari charset kustom. Indikasi terkuatnya: pengacakan hash per-run — file yang sama tidak pernah tiba di game dengan sidik jari yang sama dua kali.
  5. Kembalikan nama asli dan luncurkan Ngopi.exe lewat ShellExecuteA, lalu selesai.

Tidak ada API injeksi dan tidak ada jaringan di file ini. Ia murni tukang sihir logistik: panggung, pembunuhan penjaga, penyamaran, peluncuran. Pembaca Bagian 4 akan mengenali idiom ini — ia persis pola penyiapan yang dipakai rantai loader ekosistem ini bertahun-tahun kemudian.

3. Sang Pengantar: Ngopi.exe

Ngopi.exe adalah pemeran teknis utama trio ini, dan pekerjaannya dua: menjinakkan anti-cheat dari dalam, lalu menyelundupkan modul cheat melewati pintu yang sudah ia amankan.

Ia mulai dengan menunggu: loop FindWindowA sampai jendela game muncul, lalu membuka prosesnya dengan hak akses penuh (PROCESS_ALL_ACCESS). Langkah pertamanya di dalam bukan injeksi — melainkan unhooking. Modul anti-cheat bawaan game memasang hook pada enam API; Ngopi.exe menulis ulang keenamnya di memori proses game dengan prolog bersih 8B FF 55 8B EC lewat VirtualProtectEx + WriteProcessMemory:

Dengan kata lain: sebelum menyelundupkan apa pun, ia mencopot dulu alarm yang dipasang penjaga pada pintu-pintu tertentu — memilih API yang berkaitan dengan pemuatan resource dan string, jalur yang lazim diawasi untuk memburu modul asing.

Injeksikan sendiri dilakukan dengan teknik LoadLibrary klasik yang dibungkus kerahasiaan berlapis. Nama pustaka dan fungsi dimuat dalam keadaan ter-XOR dengan kunci menaik — kernel32.dll tersembunyi di balik kunci 0x25, LoadLibraryExA di balik kunci 7 — dan didekode manual saat runtime. Sebuah stub 17 byte disusun (dorong argumen, muat alamat LoadLibraryExA, panggil, kembali), lalu thread jarak jauh dibuat lewat API ntdll yang di-resolve berdasarkan hash dengan pola 12 argumen — indikasi kuat NtCreateThreadEx, dipilih justru karena ia bukan API yang biasa diawasi.

Selesai injeksi, ia membersihkan jejaknya sendiri: stub dan jalur DLL di memori game ditimpa 0x00, mencetak "Sukses", membunuh satu proses bernama CHI-Inject.exe (nama yang juga terdekode dari string ter-XOR, kunci 0x2A), lalu keluar. Anti-forensik sederhana, tetapi sadar dan disengaja — di tahun 2021, dari pengembang cheat game, itu bukan tingkat kehati-hatian yang umum.

4. Isi Cangkirnya: Teh.dll

Teh.dll adalah muatan akhirnya: modul cheat yang hidup di dalam proses game. Ia tidak mengekspor satu fungsi pun — 0 ekspor — karena ia tidak pernah dimaksudkan dipanggil; ia dimuat murni demi efek DllMain-nya, yang saat modul menempel ke proses langsung men-spawn thread pekerja.

Dari thread itu, terkonfirmasi:

Fitur-fiturnya terbaca dari string menu yang disusun kodenya, dan daftarnya adalah daftar standar yang sampai hari ini masih dijual: ESP (Bone, HP, Name, Dist, Line, Box, Team, plus Crosshair), Aim_Hack (Accuracy, No Recoil 80%), dan Player_Hack (No AFK, Hide Nick, Quick Change, Quick Reload) — menu yang dibuka-tutup dengan tombol DELETE.

Dan satu ketiadaan yang justru paling bercerita: Teh.dll tidak memiliki jaringan sama sekali. Tidak ada alamat server, tidak ada pemeriksaan lisensi, tidak ada pengumpulan sidik jari mesin. Cheat ini tidak menelepon rumah — karena pada 2021, rumahnya belum dibangun.

5. "Source Code" yang Ternyata Umpan

Paket repositori ini menyertakan folder source — sekilas tampak seperti transparansi. Pemeriksaan dekat membuktikan sebaliknya: source itu bukan source. Ia pseudo-code yang tidak mungkin ter-compile menjadi binary apa pun, apalagi menjadi trio di sebelahnya. Buktinya bertumpuk:

Kesimpulannya tegas: binary trio ini bukan build dari source yang dipublikasikan. Source itu dekorasi etalase — memberi kesan terbuka sambil memastikan tidak ada yang bisa membangun ulang, memverifikasi, atau belajar dari aslinya. Pelajarannya berlaku umum jauh melampaui paket ini: source yang dipajang di samping binary tertutup tidak membuktikan apa-apa tentang binary tersebut. Yang berbicara tetap artefaknya.

6. DNA yang Diwariskan

Sejauh ini trio 2021 ini bisa saja berdiri sendiri sebagai cheat tua yang rapi. Yang mengubah statusnya menjadi leluhur adalah empat jembatan menuju ekosistem yang dibedah empat bagian sebelumnya — dan tidak satu pun berupa kemiripan samar.

Pertama, jalur proyek yang sama persis. Ketiga file trio ini membocorkan jalur berkas proyek (PDB) dari mesin pembangunnya: folder proyek kompilator era 2010 bernama "Free", berkas proyek bernama Token.pdb, di bawah direktori pengguna satu nama pembangun yang sama. Jalur direktori yang sama persis — nama pembangun yang sama, susunan folder yang sama — juga terbaca pada loader milik merek tuan rumah dan pada pemeriksa serial generasi lama ekosistem ini. Tiga artefak, dua era, satu meja kerja.

Kedua, konstanta obfuskasi yang nyaris identik. Di dalam trio ini tersimpan string-string sampah khas — potongan seperti 124891 91u 766:A maiofiw wqfqwfAdad dan 189371vasdbah!&^#812y8y1rhqw pdwq, plus satu charset kustom untuk generator sampahnya. String yang sama, dengan perbedaan satu-dua karakter yang wajar untuk penyalinan lintas tahun, adalah sidik jari yang sudah lama kami catat dari keluarga loader generasi kedua merek tuan rumah. Ini bukan pola yang ditemukan dua orang secara kebetulan — ini potongan teks yang diwariskan dari codebase ke codebase.

Ketiga, idiom penyiapan yang sama langkah demi langkah. Bersihkan folder penyiapan → salin file → buka dan append sampah pengacak hash → susun enam DLL runtime yang sama → luncurkan pemeran berikutnya dengan cara yang sama. Urutan kerja BUKA.exe di 2021 adalah urutan kerja yang sama yang kami pulihkan dari rantai loader generasi berikutnya di Bagian 1 dan Bagian 4 — termasuk penyamaran ekstensi .mentah yang sudah dipakai sejak 2021.

Keempat, peran mengikuti nama. Di 2021, "Buka" adalah sang orchestrator dan "Ngopi" adalah payload yang ia luncurkan. Di 2025–2026, pola yang sama persis muncul lagi: sebuah Buka.exe berperan sebagai orchestrator pada ekosistem merek hantu, dan sebuah Ngopi.dll berperan sebagai payload pada varian VIP merek tuan rumah. Nama-namanya bukan kebetulan tematik — mereka label pekerjaan yang dipertahankan lintas generasi.

Yang tidak diwariskan sama pentingnya. Trio 2021 ini tidak mewarisi infrastruktur apa pun ke generasi berikutnya karena ia tidak punya: tanpa server lisensi, tanpa HWID, tanpa panel, tanpa updater. Seluruh lapisan komersial dari Bagian 2 — kasir, gudang distribusi, spesifikasi sidik jari — adalah tambahan generasi berikutnya di atas fondasi teknis yang sudah selesai sejak 2021. Keluarga ini tidak mulai sebagai bisnis. Ia mulai sebagai keahlian; bisnisnya menyusul.

Dua keterbatasan atribusi perlu dinyatakan sejajar dengan kesimpulan ini: padanan nama "Teh" di ekosistem baru belum ditemukan — buktinya berhenti di tema penamaan; dan hubungan antara nama pembangun pada PDB dengan pemilik repositori tempat paket ini ditemukan tidak terbukti — yang terbukti adalah kesinambungan kode dan meja kerjanya, bukan identitas orangnya.

7. Apa Artinya bagi Deteksi

Sampel leluhur seperti ini adalah hadiah bagi pembela, untuk alasan yang berlawanan dengan sampel modern:

8. Pemetaan MITRE ATT&CK (ringkas)

9. Indikator Deteksi (IOC)

Hash di bawah adalah hash salinan persis sebagaimana paket ini disebarkan. Perlu diingat: mekanisme append sampah per-run berarti salinan yang sudah pernah dijalankan dapat memiliki hash berbeda — padankan dengan indikator perilaku di bawah tabel.

10. Rekomendasi

Untuk pengguna:

Untuk deteksi:

Keterbatasan

Seluruh analisis bersifat statis, dipadukan dengan dekompilasi offline; tidak ada file yang dijalankan, sehingga perilaku runtime tidak diverifikasi secara empiris. Identifikasi NtCreateThreadEx bersifat indikasi kuat dari pola resolusi API berdasarkan hash dan jumlah argumennya, bukan dari string plaintext. Keenam DLL runtime pendamping tidak dibedah mendalam karena terverifikasi runtime stok yang byte-identik dengan salinan sah. Kesimpulan "leluhur langsung" adalah penilaian analitis atas kumulasi bukti — jalur proyek yang sama, konstanta obfuskasi yang nyaris identik, idiom penyiapan yang sama, dan kontinuitas peran-berdasarkan-nama — bukan pengakuan dari pembangunnya; identitas orang di balik nama pembangun pada PDB, dan hubungannya dengan pemilik repositori tempat paket ditemukan, tidak dapat ditentukan dari artefak saja.

Lima tahun sebelum kasir, etalase, dan kurir bersama itu ada, fondasinya sudah selesai: satu pembuka, satu pengantar, satu cangkir — dan kebiasaan-kebiasaan yang tidak pernah diganti sampai hari ini. Seri ini akan terus memetakan ekosistem "Daerah SD" selama ia beroperasi; pelajaran terbarunya adalah bahwa untuk memahami sebuah operasi, kadang kita harus membaca bukan versi terbarunya, melainkan versi pertamanya.

Dolenthis adalah media riset independen. Analisis seperti inilah yang menjadi basis data indikator tool deteksi kami — karena deteksi yang baik selalu dimulai dari pemahaman yang jujur tentang cara kerja penyerang.

Indikator dari rangkaian analisa ini dipakai oleh PBGuard — pendeteksi cheat Point Blank by Dolenthis.

CONTACT
← Kembali ke Blog