Пожалуйста, обратите внимание, что пользователь заблокирован
как проводятся инжекты в тело ответа внутри браузера.
за любую инфу буду благодарен.
за любую инфу буду благодарен.
Хукают функции, которые отвечают за чтение ответа внутри браузера, в перехваченной фуннкции вызывают оригинальную, дописывают, что нужно в результирующий буффер и возвращают управление.как проводятся инжекты в тело ответа внутри браузера.
Маленько догоняю, но не вижу полной картиныХукают функции, которые отвечают за чтение ответа внутри браузера, в перехваченной фуннкции вызывают оригинальную, дописывают, что нужно в результирующий буффер и возвращают управление.
Это перехватчик системных событий, к перехвату функций он не относится.Я понимаю например SetWindowsHook - где первый параметр это тип хука, а второй вроде указатель на функцию, туда передаются аргументы и т.д.
Твой код находится внутри IE (как он туда попал это другой вопрос). Wininet уже подгружен в процесс IE, увеличивать ему счетчик загрузок вызовом LoadLibrary не имеет смысла. Получаешь его базовый адрес с помощью GetModuleHandle, находишь там нужную функцию и перехватываешь ее. В частности сплайсингом - в начало функции записываешь безусловный переход на свою функцию. У сплайсинга есть ряд проблем (потокобезопасность там, если на месте сплайсинга был условный или безусловный переход и тд), его сложно сделать нормально, но обычно никто этим и не запаривается.Вот возьмем wininet.dll ie граббер.
Вроде мы должны загрузить LoadLibrary и вызвать из него функции.
Теперь картина светлее.Твой код находится внутри IE (как он туда попал это другой вопрос). Wininet уже подгружен в процесс IE, увеличивать ему счетчик загрузок вызовом LoadLibrary не имеет смысла. Получаешь его базовый адрес с помощью GetModuleHandle, находишь там нужную функцию и перехватываешь ее. В частности сплайсингом - в начало функции записываешь безусловный переход на свою функцию. У сплайсинга есть ряд проблем (потокобезопасность там, если на месте сплайсинга был условный или безусловный переход и тд), его сложно сделать нормально, но обычно никто этим и не запаривается.
Насколько я понимаю - это инжект кода в процессТвой код находится внутри IE (как он туда попал это другой вопрос).
Со сплайсингом более менее знаком. Но хз, нужно сорцы посмотреть поизучать.В частности сплайсингом - в начало функции записываешь безусловный переход на свою функцию. У сплайсинга есть ряд проблем (потокобезопасность там, если на месте сплайсинга был условный или безусловный переход и тд), его сложно сделать нормально, но обычно никто этим и не запаривается.
Да, так или иначе тебе нужно будет свои обработчики перехваченных функций размещать в другом процессе. Проще проинжектить DLL или шелл-код и уже с его помощью проводить перехваты нужных функций.Насколько я понимаю - это инжект кода в процесс
++ сорец глаз режет, ну да ладно.Гляньте в TinyNuke код формграббера. IE нормально граббится, chromе, ff последних версий нет. Нужно обновлять.
Помню когда-то на экспе подымалась тема формграббера, и там сам автор говорил, что применял другую технику, которая отличается на рынкеТак же советую глянуть аверский обзор бота тихая ночь, там чуток по другому реализовано.
Я канеш не особо шарю во всяких блекушных штуках, но мне так то кроме перехвата функций ничего особо в голову не приходит. Что имеется ввиду конкретно?там сам автор говорил, что применял другую технику, которая отличается на рынке
да вродь тот же самый сплайсинг, прост подругому реализовано что ле. Но это была не его идея изначально, а идея какого-то другого чела. Лучше посмотри аверский обзор (пункт где инжекты)Я канеш не особо шарю во всяких блекушных штуках, но мне так то кроме перехвата функций ничего особо в голову не приходит. Что имеется ввиду конкретно?

я хз. Из вариантов только как ты сказал веб инжект. Детектится, палится жестко. Ебля с сертификатами. Постоянная поддержка. Хз, было бы время, написал бы из интереса. А что думаете об эффективности формграббера? Да, согласен, cc + cvv. Но фрод даст о себе знать. Лучше резидент стиллер, который чекает новое поступление данных и отправляет на гейт.Основная проблема это то, что в хромиум браузерах ф-ии SSL_Write/SSL_Read являються не экспортируемыми...
Приходиться в .text искать по сигнатурке
Это прям очень очень очень хайлевельное овервью того как я это раньше делал, найти и хукнуть - это самое меньшее из зол.
Дальше только интереснее - т.к данные не плейн-текстом передаються приходиться хендлить hpack/http2.0/компрессию....
Если просто чтобы сделать и забыть - можешь украсть куски сорсов из уже готовых ботов.
Но, такой вариант ?
Если надо могу найти сигнатуры для последней версии хрома/оперы/эджа на хромиуме если надо ?
З. Ы. Варик как сделано в ZLoader-e хороший - стильно, модно, молодёжно, свежо.
Но я х3 как оно в плане поддержки в долгосрочной перспективе (читай SDLC). Даже из описания понятно что задача не тривиальная с точки зрения поддержки этого всего гуано в будущем. По сравнению с классическим варантом поставил хук и там же начал реквест/респонс обрабатывать. Просто и тупо, никакой мозгоебли. Собственно таким вариантом я и решил задачу по веб-инжам.
Из вариантов только как ты сказал веб инжект.
Детектится, палится жестко.
О какой ебле речь. Генерить серт openssl умеет, дальше установить certutil-ом, офк если идешь по пути SilentNight.Ебля с сертификатами.
Как что-то плохое...Постоянная поддержка
Это не та задача которую ты напишешь за месяц-другой. Особенно без понимания как это работает под капотом.Хз, было бы время, написал бы из интереса.
Нет. Это как сравнивать палец с задницей - веб-инжы дают тебе невероятную флексабильность в том что ты можешь и хочешь получить с бота.Лучше резидент стиллер, который чекает новое поступление данных и отправляет на гейт.
Отчасти правда. Прост сейчас нету времени писать формграббер. + нужно разбиратся. А пока у меня не хватает знаний, сил и времени.веб-инжект - это уже сам инжект твоего скрипта в буфер респонса твоего реквеста.
Если ты протащишь на целевую систему свой лоадер, который в последствии подгрузит кор-компонент твоего бота (который скорее всего будет запущен от трастового процесса винды), который в свою очередь подгрузит модуль веб-инжей и заинжектиться в браузер. По большой части тебе стоит заботиться о рантайм детектах на первичном компоненте - лоадере.
О какой ебле речь. Генерить серт openssl умеет, дальше установить certutil-ом, офк если идешь по пути SilentNight.
Как что-то плохое...
Это не та задача которую ты напишешь за месяц-другой. Особенно без понимания как это работает под капотом.
Нет. Это как сравнивать палец с задницей - веб-инжы дают тебе невероятную флексабильность в том что ты можешь и хочешь получить с бота.