WinDbg

Тема в разделе "WASM.BEGINNERS", создана пользователем sato_xxx, 22 ноя 2020.

  1. sato_xxx

    sato_xxx New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2020
    Сообщения:
    5
    Физически нет возможности проверить.
    WinDbg может вести отладку по сети ПК на котором он запущен обращаясь к другому ПК ?
     
  2. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.252
  3. sato_xxx

    sato_xxx New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2020
    Сообщения:
    5
    Я не об этом.
    Допустим на моём пк установлен windbg и он шлёт по сети серверу команды ,которые сервер возвращает моему пк и тем самым через сервер я веду отладку моего же пк.
     
  4. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.549
    Адрес:
    Russia
    Зачем тогда сервер ?
    Идея сервера в том, чтоб отлаживать другую машину. Это часто бывает нужно для отладки ядра, когда нет возможности подключиться другими протоколами.
    Если вы хотите, вы можете конечно настроить ваш пк как на ремоте так и быть "таргетом" . Никаких проблем нет (пока вы не начнете отлаживать ядро). Но это тогда не имеет смысла
     
  5. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    ну, прикола как с софтайсом виндебаг вам не даст.
     
  6. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    Виндбг работает как пользовательское приложение Windows, хуже того - COM приложение. При отладке ядра ОС "замораживается" - происходит останов выполнения всего кроме отладочной подсистемы в ядре. Никакие приложения работать в реальном времени не будут, т.к. им не передастся управление, пока отладчик не "отпустит" исполнение.
    Если даже удастся запустить отладку через сеть ядра той же машины, все зависнет в момент начального брейкпойнта, отладчик будет висеть вместе с системой и некому будет отдать команду продолжать исполнение.
    Тот же самый эффект можно словить при отладке некоторых сервисов и антивирусов.

    Если же вопрос ТС о возможности отладки через сеть обычного приложения на том же ПК - можно, никаких проблем.
     
  7. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    виндбг ващето тут ни при чём, работает KD. в ЕдРе. но без всяких мироновых.
     
  8. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    WinDbg и KD работают поверх COM-сервера, который debugging engine, так-то. Один гуи, другой консоль, вот и все различие.
     
  9. sato_xxx

    sato_xxx New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2020
    Сообщения:
    5
    А если отладчик пошлёт серию команд?
    К тому же ПО на сервере может "разморозить" ядро самостоятельно.
     
  10. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    Не думаю, что виндбг так умеет, но вы можете попробовать разобрать протокол и послать серию команд, может и сработает.
    Но в чем принципиальный смысл сего действа?
    Есть LiveKD и вроде он даже из коробки идет теперь.
    Есть какой-то духовный наследник сайса, Syser64 или что-то вроде того. Может они больше подойдут.
     
  11. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    да! вот как раз понадобилось заресолвить символ(его rva). кстати не завалялось ли у вас кодеса типа MS DIA,
    а то чтото не могу понять почему всё в FAILED уходит (CoInitialize ессна запилено)
    Код (Text):
    1.  
    2.  HRESULT hr = CoCreateInstance( CLSID_DiaSource,
    3.  NULL,
    4.  CLSCTX_INPROC_SERVER,
    5.  __uuidof( IDiaDataSource ),
    6.  (void **) &pSource);
    7.  
    8.  if (FAILED(hr)) {
    9.  
    10.  MessageBoxA(0, "COM FAIL", 0, 0);
    11.  } else {
    12.  
    13.  MessageBoxA(0, "COM OK", 0, 0);
    14.  
    15.  wchar_t wszFilename[ _MAX_PATH ];
    16.  mbstowcs( wszFilename, "d:\\123123.dll", sizeof( wszFilename )/sizeof( wszFilename[0] ) );
    17.  if ( FAILED( pSource->loadDataFromPdb( wszFilename ) ) )
    18.  {
    19.  if ( FAILED( pSource->loadDataForExe( wszFilename, NULL, NULL ) ) )
    20. ...
    21.  
     
  12. sato_xxx

    sato_xxx New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2020
    Сообщения:
    5
    Дело не в отладке.
    Это такой способ взаимодействия с сервером.
    Клиент получает доступ к серверу и другим клиентам взамен на это клиенты и сервер получают к нему доступ.
     
  13. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    о да, - дело было не в бабине
     
  14. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.252
    Ты p2p через протокол windbg хочешь реализовать, или что? Может уже напишешь нормально, что ты хочешь сделать, и для чего это нужно?
     
  15. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    861
    Конкретно какой HRESULT?
    Вообще лучше делать так, сразу смотреть hr:
    Код (C):
    1. if ( FAILED( hr = pSource->loadDataFromPdb( wszFilename ) ) )
    2. {
    3. if ( FAILED( hr = pSource->loadDataForExe( wszFilename, NULL, NULL ) ) )
     
    sn0w нравится это.
  16. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    sn0w,

    Ты спрашиваешь не первый раз за последнее время про дебаг символы, зачем тебе они, какая задача ?

    Если это не какой то парсер пе, то есть основная задача по выделению EP, тоесть покрытию образа. Что бы описать графом, на этом строится механизм защиты от OP-атак и наоборот, обход защиты. Тебе для каких целей нужно ?
     
  17. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    задача - спалить RVA метода CIISModule::OnSendResponse в iis модуле, который сжатием контента занимается. так чтобы это не было говнопоиском тру-хацкерским, по сигнатуре
    --- Сообщение объединено, 25 ноя 2020 ---
    о блять, я только что контору аверу спалил
     
    Последнее редактирование: 25 ноя 2020
  18. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
  19. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    Инде, я в этой теме не энтузиаст. и поставим на этом крест.
     
  20. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    sn0w,

    Зачем сразу так крест на всём, мне тоже интересно. Во первых откуда этот символ или класс сишный взялся. Для начала нужен модуль, для начала статик анализа. И что интересно, если модуль не системный то откуда дебаг инфа(если это в экспорте то и вопроса нет) ?

    В чём подвох ?