Forum Replies Created
-
AuthorPosts
-
September 12, 2024 at 9:43 pm in reply to: Filtering packets by a process, in the WinpkFilter #13889
Thank You for response. And I was thinking about the same. User mode is good for me because I’m not that good in kernel programming, even simply things are not simply in this kind of programming. Also two drivers in one application does not sound good for me 🙂 And installing a driver for only getting process connects information is a bit overhead I think.. So if for the user-mode there is nothing better than using Api, GetExtendedTcpTable – then I will build my logic on this approach.
Thanks for help.
- This reply was modified 2 months, 1 week ago by BrianC.
Finally got back to the project after some rl issues. And yes, seems like I was trying to do silly things with these proxy servers… Just tried NdisApiDotNet example and it works basically the way I want not like I wanted before. So actually this example is nice, but the only one thing I’m gonna ensure:
Example code: https://github.com/wiresock/ndisapi.net/blob/master/NdisApiDemo/Program.cs
There are two methods that run in a Task each. But when I debug it, or want to put some latency simulation for a few seconds it seems like adapter “stucks” and the traffic on the adapter literally stops unless I stop debug and delay timer ends. So is there any way to capture packets in some kind of order that can handle packets whatever time I want and in same time receive new packets, or there is no such build-in option and the only way to do this functionality is to build my own order? Like if I want to filter some packets one by one I should add new packets to my own queue when I receive it from the driver “filter.ReadPackets” and in the driver just block every packet and then, after filtering\editing the packet just manually send it through the driver? Also should I also recalculate checksums after I edit some bytes in the packets?
- This reply was modified 3 months, 1 week ago by BrianC.
I assume you are talking about this part in the tcp_local_redirect.h
bool process_client_to_server_packet(INTERMEDIATE_BUFFER& packet, uint16_t port = 0)
And yes I already found the way how to get all headers and payload from the Ethernet packet
But I’m not sure how to pass this packet to the internal ProxiFyre local proxy, still inspecting the code.
If I got it correctly I need to pass this packet from this redirect function to internal proxy that is connected to my Socks5 server as client and send this packet as TCP\UDP payload, or you meant I have to create my own extra TCP\UDP clients to connect my to Socks5 server directly?
-
AuthorPosts