Допустим есть код который инжектируется в в процесс. Я поступаю так: готовлю структуру, записываю в нее все команды, затем заполняю структуру реальными значениями опкодов и адресов (которые получаю с помощью fasm+ida) и наконец копирую полученную структуру в необходимое мест. Пример структуры: Code (Text): struct { BYTE pusha_opcode; DWORD call_add; DWORD call_opcode; ... Для короткого инжекта такой метод вполне комфортен. Для чего-то более менее длинного - слишком муторно. Есть ли какая нибудь альтернатива?
можно код вынести в отдельную dll(так даже не обязательно на асме писать) а в процес внедрить только код загрузки этой dll и переход на нужный участок кода.
Я просто пишу шеллкод в асме как есть, компелирую, открываю WinHex'ом или Olly и тупо копирую бинарные данные. Последний шеллкодес что-то около 1.5 килобайта, неудобств не ощущаю...
в фасме пишеш use32 <свой код> и компилиш и получаеш .bin файл с этим кодом а еще есть тема http://wasm.ru/forum/viewtopic.php?id=28723