Чтение онлайн

ЖАНРЫ

Техника сетевых атак
Шрифт:

Рисунок 080

Наибольший интерес представляет значение регистра ESP, значение которого позволяет вычислить местоположение введенной строки в стеке. Значение регистра EBP, равного 0x5A5A5A5A говорит о том, что компилятор сгенерировал код, адресующий локальные переменные с помощью регистра EBP. Вполне возможно, что модификацией сохраненного значения EBP злоумышленнику удастся проникнуть на машину или, по крайне

мере, «завесить» ее.

В штатную поставку Windows 9x, Windows NT 4.x, Windows 2000 входит утилита «Dr. Watson», предназначенная для выявления причин ошибок. При возникновении аварийной ситуации она сохраняет текущее состояние некорректно работающего приложения в файл протокола, в который (в зависимости от настоек) могут входить: содержимое регистров и состояние стека, истории трассировки и т.д.

Один из примеров протокола приведен ниже [333]. Он получен после возникновения исключения в результате переполнения буфера программы buff.demo.exe:

· Состояние системы на 15.09.00 10:31:30.

·

· *--» Итог/Описание «--*

·

· Приложение или одна из ее DLL могла переполнить

· внутренний временный буфер

·

· Имя модуля: «нет данных»

·

· Название приложения: Buff.demo.exe

·

· ____________________

·

· *--» Сведения «--*

·

· Command line: F:\TPNA\SRC\BUFFDE~1.EXE

·

· Trap 0e 0000 - Недопустимая страница

· eax=00000000 ebx=00530000 ecx=00406050 edx=0063fdd8 esi=817d3fd4 edi=00000000

· eip= 5a5a5a5a esp= 0063fdf8 ebp=5a5a5a5a - - - nv up EI pl ZR na PE nc

· cs=015f ss=0167 ds=0167 es=0167 fs=41a7 gs=0000

·»015f:5a5a5a5a page not present

· sel type base lim/bot

· ____________________ -- ____________________ ____________________

· cs 015f r-x- 00000000 ffffffff

· ss 0167 rw-e 00000000 0000ffff

· ds 0167 rw-e 00000000 0000ffff

· es 0167 rw-e 00000000 0000ffff

· fs 41a7 rw- 817d23fc 00000037

· gs 0000 --

·

· stack base: 00540000

· TIB limits: 0063e000 - 00640000

·

· - exception record -

·

· Exception Code: c0000005 (нарушение доступа)

· Exception Address: 5a5a5a5a

· Exception Info: 00000000

· 5a5a5a5a

·

·»015f:5a5a5a5a page not present

·

·

· - stack summary -

·

· 0167:5a5a5a5a 015f:5a5a5a5a 015f:5a5a5a5a

·

· - stack trace -

·

· 0167:5a5a5a5a 015f:5a5a5a5a 015f:5a5a5a5a

·

· - stack dump -

·

· 0063fdf8 00005a5a

· 0063fdfc 00401262 = BUFF.DEMO.EXE:.text+0x262

·

· ____________________

· 015f:00401231 00a330694000 add byte ptr [ebx+00406930],ah

· 015f:00401237 e83f0e0000 call 0040207b = BUFF.DEMO.EXE:.text+0x107b

· 015f:0040123c e8810d0000 call 00401fc2 = BUFF.DEMO.EXE:.text+0xfc2

· 015f:00401241 e8f60a0000 call 00401d3c = BUFF.DEMO.EXE:.text+0xd3c

· 015f:00401246 a170694000 mov eax,dword ptr [00406970]

· 015f:0040124b a374694000 mov dword ptr [00406974],eax

· 015f:00401250 50 push eax

· 015f:00401251 ff3568694000 push dword ptr [00406968]

· 015f:00401257 ff3564694000 push dword ptr [00406964]

· 015f:0040125d e80afeffff call 0040106c = BUFF.DEMO.EXE:.text+0x6c

· BUFF.DEMO.EXE:.text+0x262:

· *015f:00401262 83c40c add esp,+0c

· 015f:00401265 8945e4 mov dword ptr [ebp-1c],eax

· 015f:00401268 50 push eax

· 015f:00401269 e8fb0a0000 call 00401d69 = BUFF.DEMO.EXE:.text+0xd69

· 015f:0040126e 8b45ec mov eax,dword ptr [ebp-14]

· 015f:00401271 8b08 mov ecx,dword ptr [eax]

· 015f:00401273 8b09 mov ecx,dword ptr [ecx]

· 015f:00401275 894de0 mov dword ptr [ebp-20],ecx

· 015f:00401278 50 push eax

· 015f:00401279 51 push ecx

· 015f:0040127a e8bf0b0000 call 00401e3e = BUFF.DEMO.EXE:.text+0xe3e

·

· ____________________

·

·

· 0063fe00 00000001

· 0063fe04 00760b70 -» 78 0b 76 00 00 00 00 00 46 3a 5c 54 50 4e 41 5c x.v…F:\TPNA\

· 0063fe08 00760b20 -» 00 0b 76 00 e0 0a 76 00 c0 0a 76 00 a0 0a 76 00…v…v…v…v.

· 0063fe0c 00000000

· 0063fe10 817d3fd4 -» 06 00 05 00 50 e9 52 c1 00 00 00 00 00 00 00 00…P.R…

Поделиться с друзьями: