Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Дебаг и крэш-дамп

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Взлом программ] >> Дебаг и крэш-дамп
Имя
Сообщение << Старые топики   Новые топики >>
Дебаг и крэш-дамп - 2009-07-31 10:39:28.986666   
pod_edge

Сообщений: 26
Оценки: 0
Присоединился: 2009-06-25 16:47:08.883333
Я обнаружил баг с зацикленным (а)синхронным XMLHttp в разных браузерах. Если создать страницу с таким кодом:
&lt;html&gt; &lt;head&gt; &lt;script&gt; function getXmlHttp(){ var xmlhttp; try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } &lt;/script&gt; &lt;script&gt; function getXmlHttpHACK(){ var xmlhttp = getXmlHttp() xmlhttp.open('GET', 'drupal', false); xmlhttp.send(null); if(xmlhttp.status == 404) { getXmlHttpHACK(); } } &lt;/script&gt; &lt;script&gt; var xmlhttp = getXmlHttp() xmlhttp.open('GET', 'drupal', true); xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4) { if(xmlhttp.status == 404) { getXmlHttpHACK(); } } }; xmlhttp.send(null); &lt;/script&gt; &lt;/head&gt; &lt;/html&gt; и открыть ее, то:
- Internet Explorer 7/8 через несколько секунд покажет сообщение "Stack overflow at line:23" и прекратит обработку страниы
- Firefox 3.5 и Chrome нормально справляются
- Opera 10 вылетает с крэшем
- Apple Safari виснет

Вопрос состоит в следующем:
поскольку это переполнение стека, то надо определить насколько реально выполнение шелла. На sla.ckers.org мне посоветовали поставить WinDbg + расширение к нему !exploitable и, сделав дамп крэша, проанализировать его. Когда я пытаюсь начать дебаг программы, то она "виснет", т.е. ее невозможно контролировать => я не могу загрузить страницу в браузер. Как можно с помощью WinDbg сделать дебаг или дамп крэша "неуправляемой" программы? Как сказать ей, что делать?
Post #: 1
RE: Дебаг и крэш-дамп - 2009-07-31 12:33:05.793333   
furiousangel

Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
Я проверил на 7 осле, опера 9.63, safari 4.0.2
Везде никаких намеков на глюки.
Крешдампы насколько я знаю генерируются при БСОДах и находядтся в дире %Systemroot%\Minidump
Само приложение (насколько мне известно) не сбрасывает кору, если в нем это не заложено (читай если в нем нет своего обработчика исключений).

ЗЫ. Если не прав поправте.
Post #: 2
RE: Дебаг и крэш-дамп - 2009-07-31 19:34:47.046666   
pod_edge

Сообщений: 26
Оценки: 0
Присоединился: 2009-06-25 16:47:08.883333
quote:

Я проверил на 7 осле, опера 9.63, safari 4.0.2
Везде никаких намеков на глюки.

забавно)
интересно как ты проверял?
у меня все браузеры начинают неимоверно жрать ресурсы ЦП и памяти, а опера (10) даже в конце крэш-лог прилагает

quote:

Крешдампы насколько я знаю генерируются при БСОДах и находядтся в дире %Systemroot%\Minidump

насколько я понимаю, это дампы ядра

quote:

Само приложение (насколько мне известно) не сбрасывает кору, если в нем это не заложено (читай если в нем нет своего обработчика исключений).

поэтому то и нужен дебаггер
в WinDbg есть такая штука, просто я не могу понять, как приаттачиться к процессу и при это иметь возможность управлять им?
Post #: 3
RE: Дебаг и крэш-дамп - 2009-08-01 13:07:41.590000   
furiousangel

Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
Как проверял? создал хтмл файл с указанным содержанием. открыл в каждом браузере (по очереди). подождал. проверил не повис ли комп или браузер. все в порядке.
Ты спросил про крешдампы вот я тебе и ответил прокрешдампы. Кстати есть возможность скидывать не только память ядра. Win+Break->дополнительно-> загрузка и восстановление->Параметры->Запись отладочной информации. Там есть варианты малый дамп памяти(64 кб), память ядра, полный дамп памяти.
На прикладном уровне все же советую ollydbg. Но если переолнение ниже идет, то ясно нужен уже ядерный отладчик.
Post #: 4
RE: Дебаг и крэш-дамп - 2009-08-01 20:12:47.303333   
pod_edge

Сообщений: 26
Оценки: 0
Присоединился: 2009-06-25 16:47:08.883333
чтобы эта штука сработала, надо запускать на виртуальном хосте. попробуй создать хост в денвере (если у тебя винда) или на чем-нибудь типа XAMPP (если *nix). просто html не прокатит, п.ч. там идут внутридоменные запросы
а как в OllyDbg сделать дамп?
Post #: 5
RE: Дебаг и крэш-дамп - 2009-08-03 12:07:15.446666   
furiousangel

Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
Дамп в ольке? Оч просто. Качаешь плагин ollydump. Запускаешь процесс и в меню плагинов выбираешь ollydump и дампишь.
Вот только тебе нужен дамп именно во время обрушения. Там по идее должно выскочить исключение типа access violation. Вот тогда и надо дампить.(хотя может и не при первом).
Post #: 6
RE: Дебаг и крэш-дамп - 2009-08-03 13:39:15.180000   
pod_edge

Сообщений: 26
Оценки: 0
Присоединился: 2009-06-25 16:47:08.883333
спасибо, разобрался (правда с WinDbg)
сделал дамп, проанализировал его
для Opera этот бага - probably exploitable
Post #: 7
RE: Дебаг и крэш-дамп - 2009-08-06 14:40:24.556666   
furiousangel

Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
Странно. Попробывал из-под апача. (у меня своя связка).
Все те же браузеры и ноль реакции. Только сорец вываливается и все.
Какие модули у тебя апач грузит?
Post #: 8
RE: Дебаг и крэш-дамп - 2009-08-17 01:14:54.610000   
FriLL

Сообщений: 2539
Оценки: 335
Присоединился: 2007-08-11 17:14:26.703333
брррр
Уважаемы а вы первый раз слышите о том что этот форум коверкает теги, заменяя некоторые английские буквы на русские
Так что переписываем ручками)))
Post #: 9
Страниц:  [1]
Все форумы >> [Взлом программ] >> Дебаг и крэш-дамп







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.