• XSS.stack #1 – первый литературный журнал от юзеров форума

rohitab API Monitor

kerberos?
из мануала kerberos
Почему программа вылетает/зависает ? С многопоточными приложениями шпион иногда ведет себя странно. Если у программы со шпионом появляются глюки, - самое лучшее это после закрытия программы просмотреть рапорт, ближе к концу и, скорее всего вы найдете там вызов какой-нибудь одной функции, но в ОЧЕНЬ большом количестве. Тогда просто закомментируйте её в базе и запускайте снова. Можно просто уменьшить количество функций в базе. Нашел еще один баг, который я не смог исправить - получилась фича. Есть такая распространенная функция DialogBoxParamA. Так вот при её вызове со шпионом происходит такое.... Почему то затираются все установленные хуки из библиотек. А после возвращения - хуки ОПЯТЬ восстанавливаются. Если знаете, как исправить, можете сообщить мне. Советы по работе со шпионом 1. Уменьшайте размер базы до минимальной, – меньше глюков, выше читабельность отчета и.т.п. 2. Шпион не показывает вызовы вложенных функций. Так если перехватили CreateFileA, а она в свою очередь обращается к CreateFileW, то в отчете будет только первая. Так что если отчет вдруг неожиданно остановился, например, на glutMainLoop, то просто закомментируйте её и всё.
после прочтения этого - охота тестить почти сразу отпала :D , но я все-таки я нашел в себе силы - опять же при запуске процесса, еще более менее воркало , то при инжекте в сущ. процесс - глюки приличные , и слеты были и файл лога - не могу открыть , пишет что занят процессом - даже после того как я этот kerberos прибил и explorer, больше нет желания юзать эту скверную поделку, а тем более юзать его в системном процессе. Есть подозрение, что юзается старый баянистый код msrema , где суспендятся все потоки кроме текущего и происходит восстановление API.
 
да csrss например,
ну ольга то понятно - хорошо что вот узнал про существование deattach плуга , там, впринципе, можно в лог писать - но опять же есть свои ньюансы, но на края прийдется ее юзать хотя уж лучше придется свою минитулзень писать, там я смогу точно быть уверенным , что все будет ок.
Я не понимаю, как еще юзают тот код msrema - баян баяном , начиная с xp sp1 у winapiшек начало функций начинается с mov edi,edi , сзади 5 нопов ,
вместо mov edi,edi короткий джамп на нопы , а туда вставляем длинный прыжок на обработчик - даже дизассемблера длины не нужно, тем более тех извратов, которые приходиться видеть
 
karabas-barabas
Размечтался, хватит рассматривать идеальные условия. А вдруг у тебя перехватчик уже есть, ты рассчитываешь на mov edi, edi, а там чей-то сплайс. И если у тебя нет проверки на mov edi, edi, то пипец, а если есть, то твой хук просто обламывается. Так что не надо забывать про дизассемблер.
 
Наверно не на проверку mov edi, edi,потому как не у всех функций начало пролога начинается с этих инструкций,а на проверку jmp,push-ret и далее.В случае обнаружения
таковых,мапить либу с диска и брать оригинальные байты.

Ps:Напиши свой перехватчик.
 
Размечтался, хватит рассматривать идеальные условия. А вдруг у тебя перехватчик уже есть, ты рассчитываешь на mov edi, edi, а там чей-то сплайс. И если у тебя нет проверки на mov edi, edi, то пипец, а если есть, то твой хук просто обламывается. Так что не надо забывать про дизассемблер.
если говориться про практическое применение в малвари , то полностью согласен, что без дисасма никуда , кроме своего зверька на тачке может быть еще зевс, спай и т.д. , тут уже нужно решать или затирать чужой сплайс или сплайсить его обработчик , например, последние версии спая - проверяют на целостность свои хуки и восстанавливают их в случае чего - но это уже совсем другая песня...
Тот метод, что я предложил я даже не юзал никогда - но, где-то читал , что сама ms сделала mov edi, edi для такой техники сплайса, однако как я и написал это для winapi , для native нужно по другому действовать - там есть свой интересный способ, но наверное в начало функции detect hooks + insert jmp + disasm + bridge будет универсальным способом для всех
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх