вопрос по Assembler
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
вопрос по Assembler - 2009-12-04 21:02:43.846666
|
|
|
torloh
Сообщений: 3
Оценки: 0
Присоединился: 2009-12-03 23:31:30.710000
|
Как осуществить запуск exe-шной программы из проги написанной на Assembler?
|
|
|
RE: вопрос по Assembler - 2009-12-04 21:42:42.766666
|
|
|
_$_ProCodeMaker_$_
Сообщений: 89
Оценки: 0
Присоединился: 2009-12-04 20:59:39.970000
|
Cоздаешь файл проекта с исходным кодом, н-р Project, с расширением asm (Project.asm). Ищешь папку Windows, из нее копирешь файл cmd.exe в каталог ассемблера */Masm/BIN + кидаешь исходник. Запускаешь cmd. Фишка заключается в том, что при запуске сразу формируется строка с указанием на каталог, в котором находится твой созданный проект, линковщик и компилятор. Запускаешь cmd, набираешь команду Ml.exe /c /coff Project.asm Создается выходной файл Project.obj. Набираешь далее Link.exe /SUBSYSTEM:WINDOWS Project.obj и создается готовый exe-файл (Project.exe). Для удобства, файл командной строки, компоновщик и компилятор можно переместить в отдельную папку, чтобы не искать среди лишнего.
|
|
|
RE: вопрос по Assembler - 2009-12-04 22:02:37.573333
|
|
|
torloh
Сообщений: 3
Оценки: 0
Присоединился: 2009-12-03 23:31:30.710000
|
Вопрос был не в этом, а в запуске exe программы(другой) из моей мрограммы(написанной мной) Ответ найден http://frolov-lib.ru/books/bsp/v18/ch3_4.html Просьба закрыть тему
|
|
|
RE: вопрос по Assembler - 2009-12-05 01:42:31.403333
|
|
|
_ruzmaz_
Сообщений: 105
Оценки: 0
Присоединился: 2009-08-22 18:26:07.173333
|
там под DOS под Win32 можно CreateProcess использовать
|
|
|
RE: вопрос по Assembler - 2009-12-05 14:43:15.800000
|
|
|
Sunzer
Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
|
ShellExecuteA
|
|
|
RE: вопрос по Assembler - 2010-03-04 12:44:37.130000
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Народ можно ли при помощи DOS (то есть *.com) приложения сделать какие то изменения в реестре? Например прописать автозагрузку? Если можно напишите пример.
|
|
|
RE: вопрос по Assembler - 2010-03-04 23:26:04.980000
|
|
|
_ruzmaz_
Сообщений: 105
Оценки: 0
Присоединился: 2009-08-22 18:26:07.173333
|
можно запускай reg.exe из своей проги (функция 4Bh прерывания 21h) http://kalashnikoff.ru/Assembler/issues/029.htm http://kalashnikoff.ru/Assembler/issues/encl/029/4BH(2).asm.htm чтоб работало: - путь до command.com исправь (File db 'c:\…), хотя можно и напрямую пускать - значение Comm_file исправь на 'c:\windows\system32\reg.exe' (это для xp) - в Comm_param запиши ключи и параметры, с которыми вызываешь reg.exe - посчитай и измени длину командной строки (см. статью и каменты) про использование reg.exe http://forum.xakep.ru/m_1639359/mpage_1/key_/tm.htm http://forum.xakep.ru/m_1699846/mpage_1/key_/tm.htm
|
|
|
RE: вопрос по Assembler - 2010-03-05 08:50:14.930000
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
То есть ты хочешь сказать что через *.com можно только запустить *.exe приложение которое и изменит реестр? А можно ли в самом файле file.com прописать чтобы он сам прописал себя в автозапуск через реестр? Я использую ассемблер.
|
|
|
RE: вопрос по Assembler - 2010-03-05 12:43:50.120000
|
|
|
Sunzer
Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
|
quote:
ORIGINAL: Genyok То есть ты хочешь сказать что через *.com можно только запустить *.exe приложение которое и изменит реестр? А можно ли в самом файле file.com прописать чтобы он сам прописал себя в автозапуск через реестр? Я использую ассемблер. нет
|
|
|
RE: вопрос по Assembler - 2010-03-05 15:16:03.623333
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
OK. Спасибо!
|
|
|
RE: вопрос по Assembler - 2010-03-07 14:07:41.006666
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Я тут придумал кое что. Как в батнике прописать добавление файла в реестр, вот сюда: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run ?
|
|
|
RE: вопрос по Assembler - 2010-03-07 14:38:57.560000
|
|
|
_ruzmaz_
Сообщений: 105
Оценки: 0
Присоединился: 2009-08-22 18:26:07.173333
|
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v YourProgram /t REG_SZ /d C:\YourPath\YourExe.exe
|
|
|
RE: вопрос по Assembler - 2010-03-13 17:11:20.376666
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Допустим я написал примитивный вирус. Он заражает себя и жертвы повторно. Кто знает как можно проверить жертву *.com (и себя) на заражённость? Можно пример.
|
|
|
RE: вопрос по Assembler - 2010-03-15 14:23:31.406666
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Подскажите кто-нибудь.
|
|
|
RE: вопрос по Assembler - 2010-03-15 14:26:35.603333
|
|
|
Flint_ta
Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
|
Оставить где-нибудь метку и проверять ее всякий раз.
|
|
|
RE: вопрос по Assembler - 2010-03-15 15:42:57.760000
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
quote:
ORIGINAL: Flint_ta Оставить где-нибудь метку и проверять ее всякий раз. Я понимаю что нужно поставить метку. Но каким образом это сделать? Вот это я и спрашиваю.
|
|
|
RE: вопрос по Assembler - 2010-03-15 16:26:47.343333
|
|
|
Flint_ta
Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
|
quote:
Я понимаю что нужно поставить метку. Но каким образом это сделать? Вот это я и спрашиваю. Учите матчасть, мне кажется писать вирусы вам еще рано, поскольку задаете вопросы ответ на которые очевиден.
|
|
|
RE: вопрос по Assembler - 2010-03-15 19:59:07.506666
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
quote:
ORIGINAL: Flint_ta quote:
Я понимаю что нужно поставить метку. Но каким образом это сделать? Вот это я и спрашиваю. Учите матчасть, мне кажется писать вирусы вам еще рано, поскольку задаете вопросы ответ на которые очевиден. Игнорируй эту тему так как ты не помогаешь, а критикуешь мои вопросы. Мне нужен кусок кода для примера.
|
|
|
RE: вопрос по Assembler - 2010-03-15 21:05:15.896666
|
|
|
Sunzer
Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
|
quote:
Игнорируй эту тему так как ты не помогаешь, а критикуешь мои вопросы. Мне нужен кусок кода для примера. А готовый сорс вируса тебе не нужен?
|
|
|
RE: вопрос по Assembler - 2010-03-16 10:14:13.556666
|
|
|
Bukvoed
Сообщений: 1
Оценки: 0
Присоединился: 2010-03-16 09:41:35.373333
|
Помогите разобраться с описанием структур на языке ассемблера. Вопрос вызвани изучением файла kern.inc из книги Пирогова (Ассемблер для Windows 3-е изд). В этом файле встречаются определения структу, наподобие следующих: Первый вариант: pvoid typedef ptr my_struc STRUCT fwType word IO_TYPE_DEVICE a pvoid ? - трансляции проходит нормально b dw 0 my_struc ENDS Как я понимаю c помощью директивы typedef вводится синоним pvoid для оператора ptr. В то же время если записать эту структуру следующим образом: Второй вариант: my_struc STRUCT fwType word IO_TYPE_DEVICE a ptr ? - здесь получаю сообщение об ошибке b dw 0 my_struc ENDS Насколько я понимаю сообщение об ошибке с точки зрения синтаксиса языка во втором варианте было получено правильно. Вопрос заключается в том, почему тогда в первом варианте трансялция проходит нормально? Т.е. почему в первом варианте вместо конструкции a ptr ? создается конструкция a dd ? Транслировал в MASM и TASM.
|
|
|
RE: вопрос по Assembler - 2010-03-17 11:23:20.223333
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
quote:
ORIGINAL: Sunzer quote:
Игнорируй эту тему так как ты не помогаешь, а критикуешь мои вопросы. Мне нужен кусок кода для примера. А готовый сорс вируса тебе не нужен? Хотелось бы часть этого кода, так как исходников у меня куча.(никак не могу реализовать) Напишите кому не трудно!
|
|
|
RE: вопрос по Assembler - 2010-03-19 07:38:04.040000
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Допустим я написал примитивный вирус. Он заражает себя и жертвы повторно. Кто знает как можно проверить жертву *.com (и себя) на заражённость? Можно пример.
|
|
|
RE: вопрос по Assembler - 2010-03-19 11:06:56.470000
|
|
|
Flint_ta
Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
|
Держи примитивный пример для проверки метки в PE файле
.686
.model flat, stdcall
option casemap :none
include \MASM32\INCLUDE\kernel32.inc
include \MASM32\INCLUDE\user32.inc
includelib \MASM32\LIB\kernel32.lib
includelib \MASM32\LIB\user32.lib
assume fs:nothing
.data
s1 db "Заражено", 0; Метка зараженности должна располагатся в конце PE заголовка
tit db "Сообщение", 0
mess1 db "Файл уже заражен",0
mess2 db "Файл не заражен",0
.code
start:
push 0
Call GetModuleHandleA
mov ecx, eax
add eax, 3ch
mov eax, dword ptr ds:[eax]
add eax, ecx
mov ebx, eax
add eax, 6
xor ecx, ecx
db 066h, 00Fh, 0B7h, 008h; MOVZX CX,WORD PTR DS:[EAX]
mov eax, ecx
mov ecx, 28h
mul cx
add eax, ebx
add eax, 0f8h
push eax
push offset s1
call lstrcmpA
cmp eax, 0
jnz z
push 0
push offset tit
push offset mess1
push 0
Call MessageBoxA
jmp ex
z:
push 0
push offset tit
push offset mess2
push 0
Call MessageBoxA
ex:
push 0
call ExitProcess
end start
Наглядная картинка с расположением метки, где видно зараженный и не зараженный файл
|
|
|
RE: вопрос по Assembler - 2010-03-19 11:20:22.740000
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Вот то что нужно! Спасибо! Хотя я уже начал думать что не дождусь.)
|
|
|
RE: вопрос по Assembler - 2010-03-25 15:46:05.033333
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Подскажите кто-нибудь. Какая API функция (если она вообще есть) может определить, находится ли определённый файл, по определённому пути?
|
|
|
RE: вопрос по Assembler - 2010-03-25 15:57:58.890000
|
|
|
Zmaster
Сообщений: 930
Оценки: 0
Присоединился: 2007-02-09 19:02:43.500000
|
http://asm-book.ru/faq/0053.php
|
|
|
RE: вопрос по Assembler - 2010-03-25 16:17:09.306666
|
|
|
Flint_ta
Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
|
quote:
ORIGINAL: Genyok Подскажите кто-нибудь. Какая API функция (если она вообще есть) может определить, находится ли определённый файл, по определённому пути? CreateFileA с параметром OPEN_EXISTING, если вернет ошибку значит файла нету.
|
|
|
RE: вопрос по Assembler - 2010-03-29 00:35:19.306666
|
|
|
Genyok
Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
|
Спасибо
|
|
|
|
|