Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

вопрос по Assembler

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Прочее] >> вопрос по Assembler
Имя
Сообщение << Старые топики   Новые топики >>
вопрос по Assembler - 2009-12-04 21:02:43.846666   
torloh

Сообщений: 3
Оценки: 0
Присоединился: 2009-12-03 23:31:30.710000
Как осуществить запуск exe-шной программы из проги написанной на Assembler?
Post #: 1
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).

Для удобства, файл командной строки, компоновщик и компилятор можно переместить в отдельную папку, чтобы не искать среди лишнего.



Post #: 2
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 Просьба закрыть тему
Post #: 3
RE: вопрос по Assembler - 2009-12-05 01:42:31.403333   
_ruzmaz_

Сообщений: 105
Оценки: 0
Присоединился: 2009-08-22 18:26:07.173333
там под DOS
под Win32 можно CreateProcess использовать
Post #: 4
RE: вопрос по Assembler - 2009-12-05 14:43:15.800000   
Sunzer

Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
ShellExecuteA
Post #: 5
RE: вопрос по Assembler - 2010-03-04 12:44:37.130000   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Народ&nbsp;можно ли при помощи DOS (то есть *.com)&nbsp; приложения сделать какие то изменения в реестре? Например прописать автозагрузку? Если можно напишите пример.
Post #: 6
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
Post #: 7
RE: вопрос по Assembler - 2010-03-05 08:50:14.930000   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
То есть ты хочешь сказать что через *.com можно только запустить *.exe приложение которое и изменит реестр? А можно ли в самом файле file.com прописать чтобы он сам прописал себя в автозапуск через реестр? Я использую ассемблер.
Post #: 8
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 прописать чтобы он сам прописал себя в автозапуск через реестр? Я использую ассемблер.


нет
Post #: 9
RE: вопрос по Assembler - 2010-03-05 15:16:03.623333   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
OK. Спасибо!
Post #: 10
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 ?

Post #: 11
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
Post #: 12
RE: вопрос по Assembler - 2010-03-13 17:11:20.376666   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Допустим я написал примитивный вирус. Он заражает себя и жертвы повторно. Кто знает как можно проверить жертву *.com  (и себя) на заражённость?

Можно пример.
Post #: 13
RE: вопрос по Assembler - 2010-03-15 14:23:31.406666   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Подскажите кто-нибудь.
Post #: 14
RE: вопрос по Assembler - 2010-03-15 14:26:35.603333   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
Оставить где-нибудь метку и проверять ее всякий раз.
Post #: 15
RE: вопрос по Assembler - 2010-03-15 15:42:57.760000   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
quote:

ORIGINAL: Flint_ta

Оставить где-нибудь метку и проверять ее всякий раз.


Я понимаю что нужно поставить метку. Но каким образом это сделать?
Вот это я и спрашиваю.
Post #: 16
RE: вопрос по Assembler - 2010-03-15 16:26:47.343333   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
quote:



Я понимаю что нужно поставить метку. Но каким образом это сделать?
Вот это я и спрашиваю.


Учите матчасть, мне кажется писать вирусы вам еще рано, поскольку задаете вопросы ответ на которые очевиден.
Post #: 17
RE: вопрос по Assembler - 2010-03-15 19:59:07.506666   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
quote:

ORIGINAL: Flint_ta

quote:



Я понимаю что нужно поставить метку. Но каким образом это сделать?
Вот это я и спрашиваю.


Учите матчасть, мне кажется писать вирусы вам еще рано, поскольку задаете вопросы ответ на которые очевиден.


Игнорируй эту тему так как ты не помогаешь, а критикуешь мои вопросы.
Мне нужен кусок кода для примера.
Post #: 18
RE: вопрос по Assembler - 2010-03-15 21:05:15.896666   
Sunzer

Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666

quote:

Игнорируй эту тему так как ты не помогаешь, а критикуешь мои вопросы.
Мне нужен кусок кода для примера.



А готовый сорс вируса тебе не нужен? 
Post #: 19
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.
Post #: 20
RE: вопрос по Assembler - 2010-03-17 11:23:20.223333   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
quote:

ORIGINAL: Sunzer

quote:

Игнорируй эту тему так как ты не помогаешь, а критикуешь мои вопросы.
Мне нужен кусок кода для примера.



А готовый сорс вируса тебе не нужен?




Хотелось бы часть этого кода, так как исходников у меня куча.(никак не могу реализовать)
Напишите кому не трудно!
Post #: 21
RE: вопрос по Assembler - 2010-03-19 07:38:04.040000   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Допустим я написал примитивный вирус. Он заражает себя и жертвы повторно. Кто знает как можно проверить жертву *.com  (и себя) на заражённость?

Можно пример.
Post #: 22
RE: вопрос по Assembler - 2010-03-19 11:06:56.470000   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
Держи примитивный  пример для проверки метки в PE файле

&nbsp; .686 &nbsp; .model flat, stdcall &nbsp; option casemap :none &nbsp; include \MASM32\INCLUDE\kernel32.inc &nbsp; include \MASM32\INCLUDE\user32.inc &nbsp; &nbsp; includelib \MASM32\LIB\kernel32.lib &nbsp; includelib \MASM32\LIB\user32.lib &nbsp; assume fs:nothing .data s1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; db "Заражено", 0; Метка зараженности должна располагатся в конце PE заголовка tit &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; db "Сообщение", 0 mess1 &nbsp;&nbsp;&nbsp; db "Файл уже заражен",0 mess2 &nbsp;&nbsp;&nbsp; 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
Наглядная картинка с расположением метки, где видно зараженный и не зараженный файл

Post #: 23
RE: вопрос по Assembler - 2010-03-19 11:20:22.740000   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Вот то что нужно! Спасибо!
Хотя я уже начал думать что не дождусь.)
Post #: 24
RE: вопрос по Assembler - 2010-03-25 15:46:05.033333   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Подскажите кто-нибудь. Какая API функция (если она вообще есть) может определить, находится ли определённый файл, по определённому пути?
Post #: 25
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
Post #: 26
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, если вернет ошибку значит файла нету.
Post #: 27
RE: вопрос по Assembler - 2010-03-29 00:35:19.306666   
Genyok

Сообщений: 13
Оценки: 0
Присоединился: 2010-03-04 12:33:08.266666
Спасибо
Post #: 28
Страниц:  [1]
Все форумы >> [Прочее] >> вопрос по Assembler







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.