Shellcode Loader

June 9, 2026 ยท View on GitHub

Overview

Eksekusi shellcode berdasarkan event tertentu.

Teknik event menunda atau memicu eksekusi shellcode melalui mekanisme penjadwalan Windows: APC (Asynchronous Procedure Call), timer, thread pool, atau wait pada handle sinkronisasi. Shellcode dijalankan sebagai callback/routine yang terpicu saat kondisi event terpenuhi โ€” bukan melalui pemanggilan langsung dari alur utama program.

Variasi dikelompokkan berdasarkan primitif pemicu: antrian APC, timer, thread pool, dan wait handle.

Catalog

APC (Asynchronous Procedure Call)

  • QueueUserAPC: antrikan shellcode sebagai user APC pada thread target; picu dengan NtTestAlert atau state alertable.
  • NtQueueApcThread: varian native NtQueueApcThread untuk mengantri APC ke thread.
  • NtQueueApcThreadEx: varian extended native APC dengan opsi USER_APC_OPTION.

Timer

  • SetTimer: timer berbasis HWND; callback TIMERPROC saat interval habis.
  • CreateTimerQueueTimer: timer queue legacy; callback WAITORTIMERCALLBACK pada antrian timer.
  • SetWaitableTimer: waitable timer dengan completion routine APC; thread harus alertable (SleepEx).
  • timeSetEvent: multimedia timer (obsolete); callback periodik via winmm.dll.

Thread pool

Wait handle