Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 1061
от 15.09.2008, 18:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 302, Экспертов: 18
В номере:Вопросов: 1, Ответов: 2

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 143592: Вопрос по рассылке Калашникова №17(запись вируса в конец файла). Код в приложении. То что строка 1 заносит в стек число 1203h понятно, но почему offset Get_IP дает 203, а не 1203 неясно......

Вопрос № 143.592
Вопрос по рассылке Калашникова №17(запись вируса в конец файла). Код в приложении.
То что строка 1 заносит в стек число 1203h понятно, но почему offset Get_IP дает 203, а не 1203 неясно...

Приложение:

Отправлен: 10.09.2008, 18:25
Вопрос задал: Draft3 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Airyashov
У меня 0.
в стек число = offset Get_IP
может код всей программы посмотреть.

Ответ неверный.
код программы смотрите тут
--------
∙ Отредактировал: Зенченко Константин Николаевич, Профессор
∙ Дата редактирования: 11.09.2008, 13:13 (время московское)
Ответ отправил: Airyashov (статус: 7-ой класс)
Ответ отправлен: 11.09.2008, 09:06

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Draft3!

© Цитата:
Некоторые, возможно, скажут: "Все равно ничего не понял! Зачем мы это делаем?" Ничего страшного . Когда мы в следующем выпуске про вирус запишемся в хвост какого-нибудь файла, вы увидите, что к чему. Сейчас просто смотрите, как мы "играем" с адресами...


Такой прием называется "дельта" смещение. При загрузке в память программа не знает по какому адресу её загрузила система, а знать ей нужно. С помощью этого метода получается текущий адрес, а уже все остальные нужные для работы программы адреса будут расчитаны относительно текущего, к примеру 20-ю байтами ниже находится начало программы, а сотней байт выше находится её хвост.

Чтобы корректно получить нужное число, Вам нужно перед этим кодом поставить к примеру DB 1000h dup(90h); вместо какого-то файла этого размера. 90h - это код команды NOP ничего не делает, только место занимает, т.к. Вас просили представить.
© Цитата:
Теперь представим , что мы находимся в хвосте какого-то файла, размером 1000h байт (смотрите на смещения в скобках).


Удачи!
---------
Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор)
Украина, Киев
Тел.: +380979536619
Адрес: Украина г.Киев
----
Ответ отправлен: 11.09.2008, 13:10


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.3 RC 2 от 09.09.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное