Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[ASM] Это не док-во !? 20.10.01 20:46 Число просмотров: 908
Автор: Chingachguk <Chingachguk> Статус: Member
|
Это не доказательство !
Я прочел ваши сообщения (z0 и :-)). Резюме получилось вроде такое(извиняйте, если не так понял):
- Если запускаем бут-стеллс (OneHalf (действительно, он стеллс - я сча исходник его глянул) или мой со стеллсом), то винда безусловно вызывает сначала вирь, а уже вирь - сам биос;
- Если проги грузить через autoexec.bat, то винда по-честному вызывает их, а потом они сами биос - как выше;
- :-) Грит, что его mbr-прога не видна в диск-едиторе(жаль, не знаком) - если тока не грузимся в SaveMode;
Для проверки я сначала отключил в своем вире стеллс (могу исходник кинуть) и увидел, что все прекрасно вызывается (в смысле, мой код. Ставил beep - и слышал его переодически из разных задач(виндовых тоже)). Как же объяснить тогда, что прога :-) не видна ? Если она ничем особо от моей не отличается ? Я думаю так: разница в сравнении(как мы определяем, что наш код винда все же зовет). У него ТОЖЕ винда использует вовсю MBR-код. Я смотрю в отладчике в дос окне трассировку int 13h и прекрасно свой код вижу - после всяких там убыстритилей попадаю в свой сегмент, откушенный из ds:[413h]. А диск - едитор, видимо, зовет совсем не Int 13h, а 25h (или 26h - я не силен в них). Видимо, их эмуляция зависит от загрузки ?!
Получается, стеллс тут не причем, любой бут будет участвовать во всем-всем из-под виндов ?!. Я еще немного дальше пошел. Ведь ежели заражаешь бутом винды, то первый разок (у меня 98) винда грит, что у вас, видимо, вирь ... Но это стандартным, который грузается первым и вместо mbr... Я написал кодец, правда нерезидент - тайма не хватило -котрый просто заменяет в Parti.Table номер головки и сектора настоящего бута системы. То есть mbr выполняется, а загружает меня. А я ее еще раз, уже исправленную. Так вот, на такое изменение mbr винда уже молчит...
Видимо:
- Винда все же читает винт без биос, но в особых случаях: когда определяет, заражен ли mbr, причем только код его, а part.table - нет.
- Если код (именно код!) через биос отличен от оригинала(через вин драйвер), то принимается решение использовать везде его, те вир.
- Ну а если в autoexec - то всегда.
|
- [ASM] - J 16.10.01 09:39 [811]
- [ASM] - finder 20.10.01 10:47 [959]
- [ASM] - Chingachguk 16.10.01 11:16 [925]
|
|
|