Перехват трафика в текущем процессе

Куда ведут функции WSASend, WSASendto, sendto и т. д.? В интернете пишут, что WSASend — это обертка над функцией send, но когда я перехватываю send, ничего не происходит. Я уверен, что есть одна скрытая функция, которая вызывается при вызове этих функций. Как его найти и есть ли он там? Что-то вроде

      internal_send
  _________|_________
 |                   |
WSASend             send

Ответы (1 шт):

Автор решения: arrowd

Обсуждения на программистских форумах, аж 2005 годом повеяло.

WSASend действительно не обертка, скорее всего эти функции просто разделяют часть кода под капотом. Да и тогда уж это send должен был быть оберткой над WSASend, т.к. эта функция - частный случай более сложной функции.

Если хотите нащупать этот internal_send, я бы вооружился отладчиком вроде x64dbg, брякнулся на каждой из этих функций и сгенерировал бы трассу до переключения в ядро. Если наше предположение верно, то трасса должна оканчиваться одинаковой последовательностью инструкций, начиная с какого-то call. Это и будет искомая internal_send.

→ Ссылка