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

 WASM Phorum —› WASM.WIN32 —› NativeAPI

<< . 1 . 2 .

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


Дата: Сен 30, 2004 17:17:52

Сорри код забыл =)
.386
.model flat, stdcall
option casemap :none
.code
start:
 push 0 
; push 0FFFFFFFFh
 push -1
 push $+14
 mov  eax, 0101h
; int 2Eh
; mov  edx, 7ffe0300h
; call DWORD PTR ds:[edx]
 mov edx, esp
 dw  340Fh ; sysenter
; nop
end start


Дата: Сен 30, 2004 17:31:18

Знатоки асма не могли бы протестить плиз.
На моём WinXP SP2 всё работает.
А вот на других системах не знаю.
Если можно проверьте на WinXP, WinXP SP1, Win2k, Win2k SP4, WinNT 4.0, Win9X.
.386
.model flat, stdcall
option casemap :none
.code
start:
 push 0 
 push -1
 push 'WASM'
 push 'COOL'
 mov  eax, 0101h
 mov edx, esp
 dw  340Fh ; sysenter
end start


Дата: Сен 30, 2004 17:34:50 · Поправил: Four-F

Тот код, который я приводил у мя под XP sp0 работает. Твой тоже.


Дата: Сен 30, 2004 18:04:19 · Поправил: bogrus

Ниже XP можно и не пытаться , там sysenter - привелигированная инструкция . Да и циферки другие , могут вообще левые сервисы быть .


Дата: Сен 30, 2004 18:22:57

2 bogrus:
Мож тогда реализацию int 2Eh для Win2k показать - у меня под рукой дистра нет.


Дата: Сен 30, 2004 18:34:18


Дата: Сен 30, 2004 18:45:45

n0name > „Неа не прибивает =)
Просто в SP2 всё переиначили =( “


Гы, это "устранение уязвимостей" что ли :)
А я понять не мог, почему вызов вдруг косвенный. Даже адрес тот же.. я думал речь о SP1 идёт.


Дата: Сен 30, 2004 19:09:54

2 S_T_A_S_
Я тож в начале думал =)
idb от SP1 оставил - и смотрел по ней, пока OllyDbg не запустил.

2 bogrus:
Как я понял этот код распространяется на всю линейку Win2K? А на WinNT работает?


Дата: Сен 30, 2004 19:35:45

Блин да забудь об универсальности . MessageBeep на w2ksp4 это сервис 1139h , на NT4.0sp6 это 10FAh , я уже не говорю о конкретно том коде .


Дата: Окт 5, 2004 17:36:13

n0name
Посмотри внимательно этот модуль, под айсом его погоняй, а ты уверен, этот код в данном случае вообще исполняется, а не вызывется другой тип заглушки. В ХР всё зависит от фичей проца, и функции могут быть вызваны одним из 2х методов.


Дата: Окт 5, 2004 17:38:40

bogrus
sysenter - инструкция непривелегированная. Вызыватель должен обладть привелегией 3. Кроме того, в определённые регистры MSR должна быть загружена точка входа в диспетчер сервисов. Вот инструкция sysexit-требует 0.


Дата: Окт 5, 2004 17:56:46

Уверен почти на сто проц.
Прогонял и под айсом и под олли.
Cardinal можешь рассказать поподробнее про регистры MSR.


Дата: Окт 6, 2004 07:08:13

n0name
про регистры MSR тебе подробнее раскажут интелловские мануалы на их же сайте...

<< . 1 . 2 .


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