Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Assembler: вызов API

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

crek

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
как вызвать функцию на асме (не макро)и передать ей данные?
конкретно: VirtuaProtect().

Всего записей: 53 | Зарегистр. 08-01-2005 | Отправлено: 15:54 12-04-2005
JustAMaaan

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
4 раза push и один раз call VirtualProtect
Или invoke VirtualProtect,<параметры через запятую>, если речь про MASM

Всего записей: 221 | Зарегистр. 17-09-2004 | Отправлено: 09:06 13-04-2005
crek

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нет , не masm,без макро команд , считай 16-ричными кодами.
как будет?

Всего записей: 53 | Зарегистр. 08-01-2005 | Отправлено: 11:30 13-04-2005
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
если без макрокомманд, то тебе прийдётся узнать адрес функции VirtualProtect. Для это нужно пройтись по таблице импорта и найти её по ординалу. Но не понятно, как ты и что пишеш. В общем случае приложение может не импортировать нужную функцию. Поиск нужной функции достаточно объёмная задачка.  
Предупрежу вопрос: А если один раз узнать, а потом подставлять? Неполучиться, так как таблица импорта корректируется загрузчиком. Никто не может гарантировать что её адрес останеться постоянным.
Зачем тебе надо это. Насколько мне известно, это может применятся в двух случаях
а) Злосный препод - тогда нужно обяснить ему вышесказаное.
б) вирус (шелл код) - ну тогда читать маны. например www.wasm.ru.  Учитывая
Цитата:
 считай 16-ричными кодами.
мне кажеться что этот вариант правдоподобен


----------
Press any key to continue or any other key to exit
Пишите так, чтобы не было стыдно за нобелевскую премию.

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 11:50 13-04-2005
OldGopher



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Скомпилировать "С" код в Visual C++ и посмотреть ассемблерный файл. Есть там и 16-тирички...

Всего записей: 3802 | Зарегистр. 25-10-2001 | Отправлено: 12:45 13-04-2005
crek

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OdesitVadim
да,ты прав , это вирус.
ее в таблице импорта нет,wasm.ru уже читаю, но ты не мог бы дать ссылку на конкретную статью на wasm.ru , а то их там так много?

Всего записей: 53 | Зарегистр. 08-01-2005 | Отправлено: 18:13 13-04-2005
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
crek
Зачем вирусы писать, тебя что обидели, чтоли. Вообщето об этом в журнале Хакер писали. Зайди на сайт к ним, поищи. Способствовать написанию вирусняка не буду.

----------
Press any key to continue or any other key to exit
Пишите так, чтобы не было стыдно за нобелевскую премию.

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 19:28 13-04-2005
crek

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OdesitVadim
никто меня не обижал!
я делаю ето ради интереса, и использовать его в неблагонамеренных целях не собираюсь.
и если не секрет в каком номере ][ это писали; В спеце?

Всего записей: 53 | Зарегистр. 08-01-2005 | Отправлено: 23:39 13-04-2005
eugrus



UNIX-like Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
crek

Цитата:
и если не секрет в каком номере ][ это писали; В спеце?

вероятно речь о http://www.xakep.ru/magazine/xs/035/
 
но там по поднятой проблеме ни чего нет

----------
IT-Recht Blog

Всего записей: 5471 | Зарегистр. 17-06-2004 | Отправлено: 16:44 01-05-2005
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Assembler: вызов API


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru