Самый надежный способ поиска неэкспортируемых функций

Тема в разделе "WASM.WIN32", создана пользователем intel_x128, 9 апр 2011.

  1. intel_x128

    intel_x128 New Member

    Публикаций:
    0
    Регистрация:
    17 май 2009
    Сообщения:
    345
    Нужно найти LdrpInitializeProcess в ntdll.dll

    Варианта пока что у меня два
    1. Забить RVA функций и в зависимости от версии Windows брать нужную
    2. Забить сигнатуры на каждую версию и в зависимости от версии искать сигнатуру.

    Есть ли более надежные способы поиска неэкспортируемых переменных в общем случае и конкретно в данном?
     
  2. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    я помню Клерк предлагал искать как-то через отладочные сигнатуры, оставленные мелкомягкими... но я чет уже не помню, поищи по форуму...
     
  3. RET

    RET Well-Known Member

    Публикаций:
    17
    Регистрация:
    5 янв 2008
    Сообщения:
    789
    Адрес:
    Jabber: darksys@sj.ms
    взять исходники и написать свою
     
  4. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    как правило с обновлениями порядок функций меняется не кардинально
    имеет смысл искать по сигнатурам отталкиваясь от какого либо близ лежащего публичного символа
    проверяя пару заведомо правильных смещений
     
  5. ASMatic

    ASMatic New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2010
    Сообщения:
    233
    intel_x128
    1. Ставим VEH
    2. включаем ShowSnaps (погугли, есть инфа - мож даже на васме есть)
    3. ловим DBG_PRINTEXCEPTION_C
    4. Ищем строку(в сепшинах_принтовых) "LdrpInitializeProcess" например... или "Initializing process", да любую вообщем в той функе.
    5. Получили мы адресок, бектрейс (в контексте есть все) = получаем рет_аддр, 4 байт "выше" будет адрес искомой функи.
    про контекст и сепшины читаем внимательно http://wasm.ru/forum/viewtopic.php?id=32181

    Вариант 2
    строим графы, анализируем и получаем адрезз
    думаю есть есчо варианты, но вот два наглядных, о которых я есчо успел у Клерка разузнать)
     
  6. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    знаем откуда вызывается
    ищем колы
    смотрим сиги
    а так граф))
     
  7. Indy_Rnd_001

    Indy_Rnd_001 New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2011
    Сообщения:
    7
    ASMatic
    Аверы его не сгноили, скорее наоборот, просто у вас недостаток инфы ;)
    Кстате использование графов не требует включение механизма исключений. Это одна из проблем динамического сокрытия(детектор определяет Ip из информации об фолте, использование сервисов для такого чтения потребует криптование двух списков - цепочки стековых фреймов и цепочки сех-фреймов.

    В общем способов куча, все они завязаны на графы. Желающие смогут почитать матчасть скора(ага инде щас пишет книгу).
     
  8. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    привет кЛЕРКО
     
  9. Indy_Rnd_001

    Indy_Rnd_001 New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2011
    Сообщения:
    7
    punxer
    Здрасти. Нас двоих забанит злой одмин =)
     
  10. intel_x128

    intel_x128 New Member

    Публикаций:
    0
    Регистрация:
    17 май 2009
    Сообщения:
    345
    2Слерк
    Огромное спасибо за способ скрытия TLS через юзание LdrpAllocateTls :)
    Вас тут очень не хватает! Возвращайтесь
     
  11. ASMatic

    ASMatic New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2010
    Сообщения:
    233
    тут чот недопонял
    это к сепшинам, т.к. это "активный" метод, т.к. разок надо код заекзекутить = мне не нравиться такой подход, но он проще
    а тут ни слова о сепшинах.
    +
    Indy_Rnd_001
    здравствуйте
     
  12. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    бугогашечка)))
     
  13. ohne

    ohne New Member

    Публикаций:
    0
    Регистрация:
    28 фев 2009
    Сообщения:
    431
    руткит недопейсал, засел за мемуары
     
  14. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    Indy_Rnd_001
    зарег новы ник
    и приходи
    мы ждем тебя хотя и так сойдет))
     
  15. ASMatic

    ASMatic New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2010
    Сообщения:
    233
    Rel
    ohne
    <Самый надежный способ поиска неэкспортируемых функций>
    а вам бы пописдеть = варианты. а не паписдеть, друзья
    Добавлено:
    какбы, по делу есть чо?
     
  16. TrashGen

    TrashGen ТрещГен

    Публикаций:
    0
    Регистрация:
    15 мар 2011
    Сообщения:
    1.186
    Адрес:
    подполье
    Вы когда нибудь видели кого то такого же\круче, чем Indy_Rnd_001? Возвращайся и напеши техническую стотью- тебя все ждут!
     
  17. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    такого же - нет...
     
  18. TrashGen

    TrashGen ТрещГен

    Публикаций:
    0
    Регистрация:
    15 мар 2011
    Сообщения:
    1.186
    Адрес:
    подполье
    Наоборот(бэктрейс)
    Код (Text):
    1. стал авером->сгнил самостоятельно
     
  19. Indyz

    Indyz New Member

    Публикаций:
    0
    Регистрация:
    12 апр 2011
    Сообщения:
    7
    Rel
    А что смешного. Это инде ржёт читая васм.

    TrashGen
    Помните треш, инде писал в блоге про лдт - мол можно создавать ядерные дескрипторы через 2A гейт ?
    Для этого нужно удалить процедуру валидации из графа. Делается в несколько строк. Увы, но треш на этом выeбываться прекратил - удалить из графа ветвь для вас недоступная задача. Так что медитируйте.
     
  20. TrashGen

    TrashGen ТрещГен

    Публикаций:
    0
    Регистрация:
    15 мар 2011
    Сообщения:
    1.186
    Адрес:
    подполье
    Упомнишь тут кажного индеза. Тыщи их!
    Не помню ничего, пруфы довайте.