· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.VIROLOGY —› Пишем в запущенный exe

Посл.отвђт Сообщенiе


Дата: Дек 17, 2002 17:03:47

Как такое можно сделать
invoke CreateFile,
CreateMap
MapViewofFile
все с доступом read write, all access и т.д.
пишет в файл открытый notepad, в exe функции идут без ошибок
но не пишет


Дата: Дек 17, 2002 18:29:41

Аноним

И славо богу не должно!!!

Ответ: Юзайте функции WriteProcessMemory и так далее


Дата: Дек 17, 2002 22:59:04

Посмотри функцию FlushViewOfFile. Очень удобно ....


Дата: Дек 19, 2002 13:38:04

вот исходники все равно не пишит хотя все функции идут без ошибок

;////FlushView////////////////////////////////////////////
.data
er1 db 'createmap',0
er2 db 'mapview',0
er3 db 'noaccess',0

fname db 'b.exe',0
file dd ?
mapHndl dd ?
lpMap dd ?
buff db 'zzzzzzzzzzz',0
sztxt db '%-#lx',0
OldPrt dd ?

phand dd ?
bytes dd ?


.code
start:
invoke CreateFile, addr fname,GENERIC_READ or GENERIC_WRITE,FILE_SHARE_READ,0,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,0
.if eax == 0
invoke MessageBox, 0,addr buff,addr buff,MB_OK
invoke ExitProcess, NULL
.endif
mov file,eax

invoke CreateFileMapping,file,0,PAGE_READWRITE,0,20,0
.if eax == 0
invoke MessageBox, 0,addr er1,addr er1,MB_OK
invoke CloseHandle, file
invoke ExitProcess, NULL
.endif
mov mapHndl,eax

invoke MapViewOfFile, mapHndl,FILE_MAP_ALL_ACCESS,0,0,20
.if eax == 0
invoke MessageBox, 0,addr er2,addr er2,MB_OK
invoke CloseHandle, file
invoke ExitProcess, NULL
.endif
mov lpMap,eax

xor ecx,ecx
mov edx,offset buff
_write:
mov bl,[edx+ecx]
mov [eax+ecx],bl ; eax -> addr lpMap
inc ecx
cmp ecx,4
jne _write

invoke FlushViewOfFile, lpMap,4
.if eax == 0
invoke MessageBox, 0,addr er3,addr er3,MB_OK
.endif


invoke UnmapViewOfFile,lpMap
invoke CloseHandle, mapHndl
invoke CloseHandle, file
invoke CloseHandle, phand
invoke ExitProcess, NULL
end start
///////////////////////////////////////////////////////////

;/////////////WriteProcess//////////////////////////////////
.data
er1 db 'createmap',0
er2 db 'mapview',0
er3 db 'noaccess',0

fname db 'b.exe',0
file dd ?
mapHndl dd ?
lpMap dd ?
buff db 'zzzzzzzzzzz',0
sztxt db '%-#lx',0
OldPrt dd ?

phand dd ?
bytes dd ?


.code
start:
invoke CreateFile, addr fname,GENERIC_READ or GENERIC_WRITE,FILE_SHARE_READ,0,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,0
.if eax == 0
invoke MessageBox, 0,addr buff,addr buff,MB_OK
invoke ExitProcess, NULL
.endif
mov file,eax

invoke CreateFileMapping, file,0,PAGE_READWRITE,0,20,0
.if eax == 0
invoke MessageBox, 0,addr er1,addr er1,MB_OK
invoke CloseHandle, file
invoke ExitProcess, NULL
.endif
mov mapHndl,eax

invoke MapViewOfFile, mapHndl,FILE_MAP_ALL_ACCESS,0,0,20
.if eax == 0
invoke MessageBox, 0,addr er2,addr er2,MB_OK
invoke CloseHandle, file
invoke ExitProcess, NULL
.endif
mov lpMap,eax

;заранее определил processID
invoke OpenProcess, PROCESS_ALL_ACCESS,1,0fffec505h
.if eax == 0
invoke MessageBox, 0,addr er3,addr er3,MB_OK
.endif
mov phand,eax

invoke WriteProcessMemory, phand,lpMap,addr buff,4,addr bytes
.if eax == 0
invoke MessageBox, 0,addr er3,addr er3,MB_OK
.endif



invoke UnmapViewOfFile,lpMap
invoke CloseHandle, mapHndl
invoke CloseHandle, file
invoke CloseHandle, phand
invoke ExitProcess, NULL
end start


Дата: Дек 19, 2002 15:00:35

Попробуй добавит флаг FILE_SHARE_WRITE при вызове CreateFile.


Дата: Дек 19, 2002 15:22:47

[Аноним: ...хотя все функции идут без ошибок]

CreateFile отличается тем, что в случае облома возвращает INVALID_HANDLE_VALUE (-1).
Что в твоем случае и произойдет. Последующий вызов GetLastError даст код ошибки = 20h
"Процесс не может получить доступ к файлу, так как этот файл занят другим процессом."

[Аноним: вот исходники все равно не пишит...]

Не будет такое работать. И не пытайся.


Дата: Фев 26, 2003 11:14:14

Для особых извращенцев:
[url=]http://z0mbie.host.sk/w9xshare.html[/url]


Дата: Фев 26, 2003 17:18:03

c'est fou


Дата: Фев 27, 2003 10:52:24

was ist das?


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.036