Сейчас на форуме: ut2004, vsv1 (+8 невидимых)

 eXeL@B —› Вопросы новичков —› Как сохранить содержимое буфера SoftIce на диск?
Посл.ответ Сообщение

Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 ноября 2006 00:39
· Личное сообщение · #1

Всем привет!
Как можно сохранить содержимое буфера SoftIce на диск, например результат команды THREAD -x?
nmsym /logfile:<file>.log не подходит, т.к. в этот моент Windows находится в подвешенном состоянии.




Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 29 ноября 2006 09:50
· Личное сообщение · #2

Andreo
1. Запустить утилиту Symbol Loader.
2. В меню FILE выбрать пункт SAVE SOFTICE HISTORY AS...
3. С помощью диалога сохранения задать имя файла и каталог.

-----
the Power of Reversing team




Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 ноября 2006 12:22
· Личное сообщение · #3

DillerInc
1. Запустить утилиту Symbol Loader.
не могу запустить, т.к. в этот момент моя прога подвешивает всю систему. Вот и хочу с помощью сайса разобраться по какой причине, а для этого надо проанализировать лог.

Из si можно распечатать лог на принтер командой prn, на диск поидее тоже можно как-то сохранить.




Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 30 ноября 2006 03:42
· Личное сообщение · #4

Andreo
Тогда вопрос: "А почему бы не проанализировать этот лог в самом отладчике??"
В общем,опиши подробнее.

-----
the Power of Reversing team




Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 ноября 2006 05:47
· Личное сообщение · #5

DillerInc

Программа стартует из Winlogon и инжектится во все процессы. Я пишу подробную отладку в mylog.txt, особенно подробно критические места, все процедуры защищены seh, в случае исключения отражаю это в логе. И иногда при старте Windows останавливает свою работу. Смотрю в свой лог - обрывается на треде, который устанавливает перехват на очередные ф-ии. при этом не возникает ни каких исключений, процесс не завершается. И я не пойму почему это происходит, может кто-то завершает этот тред принудительно или суспендит его.
Вот я и хочу посмотреть в каком состоянии находятся нужные мне потоки. Если ввести команду thread –x – то это порядка 200кб и к тому же в этот момент я не знаю какой tid у нужных мне потоков – вся инфа в mylog.txt.

Поэтому я хочу сбросить на диск результат thread –x и открыть mylog.txt и проанализировать ситуацию. Проблема еще в том, что эта ошибка возникает после 20-30 перезагрузки – приходится долго ждать.



Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 ноября 2006 05:57
· Личное сообщение · #6

Версия ds
:ver
SoftICE (R) - DriverStudio (tm) 4.3.2 (Build 2485)
Windows NT Version 5.1 - Build 2600 (Free) SP 2


в icedump 6.026 and nticedump 1.14 не нашел патча под нее.



Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 04 декабря 2006 11:42
· Личное сообщение · #7

DillerInc
В общем,опиши подробнее.


Описал.
Гуру софт айса подскажите, пожалуйста, как сохранить хистору буфер не создавая новых процессов(SymbolLoader и nmsym).



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 05 декабря 2006 01:14 · Поправил: tundra37
· Личное сообщение · #8

Andreo пишет:
Программа стартует из Winlogon и инжектится во все процессы.

Такие вещи надо делать, либо на виртуальной машине, либо задействовать два компа и использовать remote debug. Тогда вся инфа у тебя будет на "независшей" Винде.
Andreo пишет:
И иногда при старте Windows останавливает свою работу.

Т.е. висит wellcome и все?! В винде есть какой-то контроль - у меня такое было после смены буквы системного диска. Скорее всего ты просто не успеваешь инжект завершить. А вообще на такие вопросы тебе вряд ли кто ответит, если только MsRem.



Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 05 декабря 2006 12:05 · Поправил: Andreo
· Личное сообщение · #9

на удаленной машине попробую.

Проблема частично прояснилась: зависание произошло немного позже обычного, к этому времени уже запустился DebugView(я его ставлю в автозагрузку) и в нем я смог посмотреть ID треда из за которого происходит зависание. Посмотрел стек - выяснилось, что тред не возвращается из OutputDebugStringA, которую я активно использую для отладки. Функция находится в точке OutputDebugStringA->WaitForSingleObject->....->KiUnexpectedInterupt.

почему это может происходить?



Ранг: 1.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 05 декабря 2006 12:09
· Личное сообщение · #10

tundra37
Скорее всего ты просто не успеваешь инжект завершить


Поясни, что ты имеешь в виду. не успеваю до какого момента?



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 05 декабря 2006 22:35
· Личное сообщение · #11

Andreo пишет:
что ты имеешь в виду

Это было только предположение.
Andreo пишет:
выяснилось, что тред не возвращается из OutputDebugStringA,

Вот здесь и рой. Скорее всего система не успевает эти запросы разгребать. Но это только предположение. Я думаю тут тебе никто из гуру не ответит, т.к. никто не хочет такого "зверя" в будущем поиметь к себе на машину


 eXeL@B —› Вопросы новичков —› Как сохранить содержимое буфера SoftIce на диск?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати