Packet Filter API Problem...
-
Hi,
Ich hab ein "kleines" Problem mit der Packet Filter API...
Ich hab alles nach meinem besten wissen so eingestellt das eigentlich alles geblockt werden muss...jegeliche Protocolle , jede IP und auf jeden Port...
wenn ich das PRogramm gestartet habe kann ich auch mit dem IExplorer auch zu keiner Seite mehr connecten....soweit klapp es ja auch alles aber ich kann die site noch an pingen was eigentlich nicht mehr möglich sein sollte...vielcht wisst ihr was ich falsch gemacht habe....#include <stdio.h> #include <Windows.h> #include <conio.h> #include "Iphlpapi.h" #include "Fltdefs.h" #pragma comment( lib, "Iphlpapi.lib" ) // Laden der libs... #pragma comment( lib, "WS2_32.lib" ) int main() { BYTE localIp[] = {127,0,0,1}; INTERFACE_HANDLE ppInterface; if(PfCreateInterface(NULL,PF_ACTION_FORWARD,PF_ACTION_FORWARD,false,true,&ppInterface)==NO_ERROR) { printf("PfCreateInterface..OK\n"); } else { printf("PfCreateInterface..FAILED\n"); } if(PfBindInterfaceToIPAddress(ppInterface,PF_IPV4,localIp)==NO_ERROR) { printf("PfBindInterfaceToIPAddress..OK\n"); } else { printf("PfBindInterfaceToIPAddress..FAILED\n"); } FILTER_HANDLE fHandle; BYTE Scrmask[] = {0,0,0,0}; // 212.185.47.88 BYTE Scraddr[] = {0,0,0,0}; BYTE Dstaddr[] = {0,0,0,0}; BYTE Dstmask[] = {0,0,0,0}; PF_FILTER_DESCRIPTOR Filter; Filter.DstAddr = Dstaddr; Filter.DstMask = Dstmask; Filter.dwFilterFlags = FD_FLAGS_NOSYN; Filter.dwProtocol = FILTER_PROTO_ANY; Filter.dwRule = 0; Filter.pfatType = PF_IPV4; Filter.SrcAddr = Scraddr; Filter.SrcMask = Scrmask; Filter.wDstPort = FILTER_TCPUDP_PORT_ANY; Filter.wDstPortHighRange= FILTER_TCPUDP_PORT_ANY; Filter.wSrcPort = FILTER_TCPUDP_PORT_ANY; Filter.wSrcPortHighRange= FILTER_TCPUDP_PORT_ANY; Filter.fLateBound = LB_SRC_ADDR_USE_SRCADDR_FLAG|LB_SRC_ADDR_USE_DSTADDR_FLAG|LB_DST_ADDR_USE_SRCADDR_FLAG|LB_DST_ADDR_USE_DSTADDR_FLAG; if(PfAddFiltersToInterface(ppInterface, 1, &Filter, 0, NULL, &fHandle)==NO_ERROR) { printf("PfAddFiltersToInterface..OK\n"); } else { printf("PfAddFiltersToInterface..FAILED\n"); } getch(); PfRemoveFilterHandles(ppInterface, 1, &fHandle); PfUnBindInterface(ppInterface); PfDeleteInterface(ppInterface); return 0; }MFG NetZwerg
-
hi,
ping nutzt weder tcp noch udp. ping setzt nicht in der transportschicht im osi-modell auf sondern in der vermittlerschicht (icmp).
gruss
msp
-
HI,
liegt den das an den Ports, die einentlich durch FILTER_TCPUDP_PORT_ANY ja nur auf 0 gesetzt werden...? Denn eigentlich ist es ja eingestellt das der Filter jegliches Protokoll filtern soll...
Oder auf welche andere weise kann man Ping(und ähnliches) stoppen??MFG NetZwerg