WINDOWS BUG


[ Комментарии ] [ Добавить комментарий ] [ Доска объявлений HackZone ]

Отправитель: MYT, October 07, 1998, 13:47:04:

В ответ на: WINDOWS BAG (отправитель: Владислав, October 05, 1998, 16:02:07):

Кстати на CPL0 можно пролезть немного по другому:
создаём в LDT дескриптор кода и данных как у нашей проги
(просто копируем в пустые элементы)
ставим с созданных дескрипторах DPL=0
потом делаем так:
mov ax,ourCPL0selector
push ax
push offset Done
push parameters ;параметры для VXD-CALL
mov ax,3Dh ;селектор шлюза
push ax
push dword 210h
iretd ;make VXD-CALL
Done:
тут мы уже на CPL0
к сожалению точный код написать не могу (дома он,а точно я его не помню)
но работает.
я использовал вызов DPMI функции "копировать селектор"
прикол в том, что при возврате из функции не проверяется, на какой уровень
привилегий (CPL-current privilege level) передаётся управление
если проблемы с прочтением или пониманием кода, по отдельной просьбе могу заслать рабочий пример(+исходник).

Кстати тут есть проблема: на CPL0 прога пролазит, но при переходе обратно на CPL3
возникает GP#0. Я не стал мудиться с этой проблемой - когда надо будет,займусь.
(пушим старый селектор кода, делаем всё также, но по старому селектору нихера не переходит.)
если кто знает как эту проблему кильнуть - напишите (если не лень)
bye


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


Цитировать сообщение


[ Комментарии ] [ Доска объявлений HackZone ]