- Автор темы
- Добавить закладку
- #21
Пожалуйста, обратите внимание, что пользователь заблокирован
В общем то актуально, у кого какие идеи ещё есть?
Можно в принципе просто файл каким-либо сопособом скопировать в другую папку и работать уже с ним. Но что-то идей нетАваст внедряет в процессы свой перехватчик API функций. Смапь ntdll заново и твоя проблема будет решена.
Скрытое содержимое
Идея тухлая, большинство АВ начинают орать если ты трогаешь файл ntdll на диске, хоть вручную размапишь, хоть через MmapViewOfFile, лучше уж тогда дергать системные вызовы напрямую по номерам, но тут мы снова упираемся в проблему, допустим надо дернуть NtCreateFile, но она перехвачена, тогда в прологе мы не найдем нужный номер системного вызова, тут нужен простейший дизасм, определяем куда ведет перехват, заходим во все ответвления в перехвате и сканируем там память на наличие стандартного пролога (его части), это будет трамплин, так как сисколы короткие то скорее всего занесение номера будет именно в трамплине, а не в оригинальном продолжении функции, там будет mov eax, syscall_number и чуть ниже sysenter\syscallАваст внедряет в процессы свой перехватчик API функций. Смапь ntdll заново и твоя проблема будет решена.
Имхо, сложно закодить универсальное решение под все перехваты.тут нужен простейший дизасм, определяем куда ведет перехват
Сложно не значит нереализуемо, я не думаю что какой-то из АВ будет заморачиваться и делать какой-то сверхзапутанный\заморфленый переходник, обычно это либо push + ret, либо jmp[+5 байт от rip] и следующие байты = адрес, либо mov reg, addr + jmp reg, это 3 самых популярных, а так всего их штук 10 незамороченых, если их все охватить это дасть 100 % профит от перехватов со стороны АВ, а так конечно если учитывать всякие экзотические перехваты вроде аппаратных точек останова - это будет заморочено, но я уверен что ав их не использует, так как экзотические решения либо нестабильны, либо как в случае с HBP можно поставить всего 4 перехвата на каждый поток, а ав используют более стандартные решения, которые будут стабильныИмхо, сложно закодить универсальное решение под все перехваты.