Archiv pro měsíc: Březen 2014

DLL injection s využitím APC

Existuje poměrně velké množství způsobů, jak nainjektovat kód do cizího procesu. Kromě těch notoricky známých technik, jakými jsou využití API funkce SetWindowsHookEx, VirtualAllocEx/CreateRemoteThread, registr AppInit_DLLs nebo SuspendThread/SetThreadContext (viz některý z příštích článků) existují i techniky, o kterých se až tak moc nemluví. Jednou z těchto technik je injekce kódu pomocí APC. Využitelná je jak v user-modu, tak kernel-modu. Pro potřeby tohoto článku si tentokrát vystačíme s metodou user-modu (Ring3). Celý příspěvek

Vytvoření nové sekce PE souboru (Last Section Appender)

V předchozím článku jsem popsal způsob, jakým je možné rozšířit poslední sekci Portable Executable (dále jen PE) souboru. Kromě techniky rozšíření poslední sekce existuje i technika vytvoření nové poslední sekce. Tento článek popíše, jak takovou sekci vytvořit, jak do ní zkopírovat vlastní kód a jak zajistit jeho spuštění před tím, než dojde ke spuštění legitimní části kódu upravené aplikace. Teoreticky se přístup od toho minulého příliš neliší. Prakticky jsou zde slepá místa, jenž můžou člověku řádně znechutit práci na celém kódu, pokud o nich neví.
Celý příspěvek