Начнем с того что я прогуглил весь день, и прогуглил данный форум но ответов ненашел...
Перехват с помощю хуков неподходит, хотя этот метод и позволяет изменять пакеты. Пытаюсь сделать подобие прозрачного прокси под виндовс.
Разобрал вдоль и поперек вариант снифера использующего SIO_RCVALL и RAWSOCKET, это позволило сделать перехват пакетов. Но я так и непонял каким образом можно с помощю этого метода изменить пакет, т.е. изменить его содержимое или изменить порт с адресом...
Отсюда вопросы: 1. Как убить перехваченый пакет? — т.е. снифер получил пакет, проанализировал, и принял решение что этот пакет недолжен дойти до места назначения... 2. Как модифицироват перехваченый пакет? — т.е. снифер получил пакет, проанализировал, и модифицировал содержимое после чего пакет в модифицированном виде отправляется к месту назначения. Я предпологаю(незнаю и неутверждаю) что это реализуется так: снифер перехватывает пакет, убивает, модифицирует и самостоятельно отправляет дальше. Либо наверное читает его не удаляя со стека как обычный снифер, и потом прям в стеке модифицирует, после чего пакет продолжает свое движение... 3. Как перенаправить перехваченый пакет? — т.е. изменить например адрес назначения пакета. Предпологаю что реализуется как и модификация, но навсякий случай интересуюсь. 4. Каким образом Traffic Compressor может так лихо перехватывать пакеты? — т.е. посути является прозрачным прокси, и пропускает все пакеты через себя...