Как мы прикалывались над учителями информатики или как повесить Windows


Внимание! Данная информация предоставлена только в ознакомительных целях. Автор не несёт ответственности за противоправные действия совершенные вами после прочтения этой статьи. К тому же Вы сейчас «днем с огнем» не найдете ПК с установленной Windows 95/98.

В далеком 2003 году, когда я ещё учился в техникуме, мы с другом изучали ассемблер, писали приложения для DOS и Win32.Тогда мы обнаружили одну интересную особенность операционных систем типа Windows 95/98. Дело в том, что 32-битный менеджер виртуальных машин VMM ничего не знает о задачах, он имеет информацию только о потоках. А также, можно было запускать 16-битные приложения MS-DOS, для которых создавалась новая задача(поток) в системе. Запускать можно было и com файлы. Это просто образ кода, без заголовка как у EXE.

Мы решили попробовать написать простейший код на ассемблере. Вот он:

start:   cli			; запретить все прерывания
	jmp start		; возврат на начало

Это код наглухо вешал в MS-DOS и Windows 95/98. Помогала только перезагрузка. В виде откомпилированного кода это выглядело так:


FA EB  FD	   

И соответствовало буквам «ълэ» в кодировке ANSI. Поняли, на что я намекаю.:)

Так вот, шалили мы вот так. Мы создавали к блокноте файл с текстом «ълэ», сохраняли как файл с расширением .COM. А затем закидывали его в папку «Автозагрузка». Так как преподы даже и подумать такого не могли, как правило, это всё заканчивало полной переустановкой системы. :))

Сейчас этот способ не будет работать, так как любая система на базе NT, тут же завершит программу аварийно и без последствий, как только встретит запрещенные инструкции. Есть способы и в современных системах на базе NT войти в защищенный режим процессора(Ring-0), а там выполнить эту инструкции. Но это уже большой и длинный код на WinAPI по работе с драйверами и т.п.

И напоследок, всё же не надо пакостить. Ни к чему хорошему это как правило не приводит. На этом всего хорошего! Пока!

Добавил: admin
Дата добавления: 19-02-2022

Комментарии: