· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.VIROLOGY —› ring0 под Win2003

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Ноя 1, 2003 22:30:31

Собственно, решил я заняться сабжем. Все просто -открываешь '\Device\PhysicalMemory', правишь GDT...
Но возник вопрос - как записать в память ядра? Хочу, например, пропатчить NtCreateFile. Но память read-only.
Это ведь кодовый сегмет, и значит, доступ стоит на чтение и выполнениею. Есть ли способ записать туда данные?

И еще маленький вопросик - как добавить секцию к PE, если в нем нет места для новой object entry? (место между заголовком и первой секцией занято директорией bound import) Просто кильнуть директорию? или есть варианты получше?...


Дата: Ноя 1, 2003 23:15:07 · Поправил: van

Grenader

Защита памяти в win2000 отключается через реестр:
HKLM\System\CurrentControlSet\Control\Session
Manager\MemoryManagement\

поменяй значение EnforceWriteProtection

или вручную так:
mov ebx,cr0
push ebx
and ebx,010000
mov сr0,ebx
;
;здесь делаем свои дела 
;
pop ebx
mov cr0,ebx


Данный способ совсем не нов.
Также можно попробовать изменить файло(скажем
KMD драйвер)на диске, затем перезапустить
винду(предварительно потребуется sync by Russinovich).


Дата: Ноя 2, 2003 00:16:49

Большое спасибо!


Дата: Ноя 10, 2003 17:05:46

Простите за нескромный вопрос,
но
and ebx,010000 чего?
(h),(b),или принять за десятичное?


Дата: Ноя 10, 2003 18:25:03 · Поправил: Four-F

Шестнадцатеричное
and ebx, not 010000h
Это "Write Protect (bit 16 of CR0)"

[поправлено] Извиняюсь за ошибку - память подвела.

16 бит нужно сбросить, чтобы из r0 во все юзерные страницы можно было писАть.

mov eax, cr0
push eax
and eax, not 10000h


pop eax
mov cr0, eax


Дата: Ноя 11, 2003 02:51:59

Four-F
Пасиб, я-то уже разобрался, и написал
btr	ebx, 16

Но сколько еще народу может повесить себе машины AND'ом?..


Дата: Дек 19, 2003 15:44:36

Не могли бы, по-подробнее, про "\Device\PhysicalMemory" и споспоб преобретения ring0. Или, если есть, линк подскажите.


Дата: Дек 19, 2003 17:54:21

Выполни поиск по форуму. Там будет и линк. Я давал.


Дата: Дек 19, 2003 21:31:18

Большое человеческое спасибо. Чтю


Дата: Янв 25, 2004 10:33:47

PING
Кароче, поправить тот битик, который запрещает запись в страницы, помеченные только для чтения в r3. Это всё хорошо описано в книжке господина Зубкова 'Ассемблер для дос, виндовс и юних'. Лучьше возьми второе издание.


Дата: Янв 25, 2004 12:23:13

Grenader
По поводу bound'a. не надо его килять. Сдвигай его нафик 8-) на сколько надо. Незабудь только потом выставить в directory table его новый оффсет.


Дата: Янв 25, 2004 13:25:44

intuit
а места все равно может не хватить - если программист паталогически наплодит секций...


Дата: Окт 20, 2004 09:46:56

а под ХР как?


Дата: Окт 20, 2004 13:32:44

http://www.phrack.org/archives/

Там читать статью в номере 59 "Playing with Windows /dev/(k)mem"


Дата: Окт 22, 2004 08:23:48

Forbidden

You don't have permission to access /archives/ on this server.

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.053