Sintactic, acest lucru pare corect, dar abordarea dumneavoastră nu este potrivită pentru acest scop. The petic de sfoară se potrivește cu un șir oriunde în pachet:
- Arunci orice pachet care are
ceas
sau .ceas
oriunde. Acest lucru este probabil să provoace fals pozitive și chiar să introducă un nou vector pentru atacurile de denial of service.
- Nu poate gestiona traficul criptat. Nu se poate bloca majoritatea traficului web.
- Deși aveți opțiuni relativ bune pentru algoritmul de potrivire (
bm
BoyerâMoore & kmp
KnuthâPrattâMorris), utilizarea filtrului de șiruri poate fi încă intensivă în calcul.
Documentația avertizează în mod explicit și împotriva acestui lucru:
Vă rugăm să utilizați această potrivire cu prudență. Mulți oameni doresc să folosească
acest meci pentru a opri viermii, împreună cu ținta DROP. Acesta este un major
greşeală. Ar fi învins prin orice metodă de evaziune IDS.
Într-o manieră similară, mulți oameni au folosit acest meci ca a
înseamnă a opri anumite funcții în HTTP, cum ar fi POST sau GET, prin eliminarea
orice pachet HTTP care conține șirul POST. Vă rog să înțelegeți asta
această lucrare este mai bine făcută de un proxy de filtrare. În plus, orice HTML
conținutul cu cuvântul POST ar fi eliminat cu metoda anterioară.
Această potrivire a fost concepută pentru a putea fi pusă în coadă la userland
pachete interesante pentru o analiză mai bună, asta-i tot. Aruncarea pachetului
pe baza acestui lucru ar fi învins prin orice metodă de evaziune IDS.
Există alternative mai bune pentru ceea ce încercați să realizați:
- Filtrare bazată pe DNS. Orice server DNS poate face asta. De exemplu., Dnsmasq este un forwarder DNS ușor obișnuit: puteți doar să adăugați
adresa=/watch/0.0.0.0
la configurația sa.
- Filtrare bazată pe proxy web.