Langkau ke kandungan
Semua kupasan
KUPASAN PASUKANSongsang

LIGA CTF 2026

Phantom DLL

Menggunakan rampasan susunan carian DLL untuk melaksanakan kod dalam persekitaran detonasi Windows.

Diterbitkan
Kategori
Kejuruteraan Songsang

Phantom DLL menyediakan perkhidmatan detonasi Windows dan meminta satu fail output. Perkhidmatan itu menerima sebuah pustaka yang dimuat naik, meletakkannya dalam persekitaran mangsa, lalu melancarkan aplikasi yang mencari DLL multimedia Windows yang lazim digunakan.

Petunjuk utamanya ialah nama modul yang dimuatkan: fail yang dimuat naik dilayan sebagai winmm.dll. Ini menjadikan cabaran tersebut satu rampasan tertib carian DLL yang terkawal.

Bina untuk pemuat yang sebenar

Kami menghasilkan probe 32-bit dan 64-bit, mengeksport titik masuk yang lazim, dan sengaja memastikan laluan permulaan seringkas mungkin. Binaan 64-bit sepadan dengan proses detonasi.

BOOL WINAPI DllMain(HINSTANCE module, DWORD reason, LPVOID reserved) {
    if (reason == DLL_PROCESS_ATTACH) {
        DisableThreadLibraryCalls(module);
        run_probe();
    }
    return TRUE;
}

Kerja berat di dalam DllMain berisiko mencetuskan kebuntuan loader lock. Probe itu hanya melakukan semakan fail yang terbatas dan satu penulisan output, tanpa rangkaian, proses anak, atau penantian yang panjang.

Sahkan pelaksanaan sebelum mencari

Binaan pertama menulis konteks proses dan modul ke output yang diwajibkan. Ini mengesahkan tiga perkara:

  1. seni bina DLL adalah betul;
  2. DllMain dilaksanakan dalam proses sasaran;
  3. perkhidmatan memulangkan fail output yang dijana.

Hanya selepas itu kami menambah senarai ringkas lokasi bukti yang berkemungkinan. Probe yang dimuatkan menemui artifak cabaran dan menyalin kandungannya ke dalam fail hasil yang diperlukan.

Inti penyelesaian

Dalam cabaran detonasi, mulakan dengan kontrak pemuat. Bukti pelaksanaan yang minimum lebih bernilai daripada payload yang rumit: sahkan seni bina, nama modul, pelaksanaan titik masuk, dan pengendalian output sebelum menambah logik penemuan.

Halaman acara: LIGA CTF 2026.