PROBLEMRULE #1; SecRule REQUEST_URI "^/(|(.*)/)(lpt1|lpt2|lpt3|lpt4)(/|\.|\?|$)" "t:none,t:htmlEntityDecode,t:lowercase,t:removeWhitespace,block,msg:'X',id:'1000'"
PROBLEMRULE #2; SecRule REQUEST_URI "^(.*)//(.*)$" "t:none,t:removeWhitespace,block,msg:'X',id:'1001'"
// I also tried those, but no success.
SecRule REQUEST_URI "//"
SecRule REQUEST_URI "^/(.*)/(lpt1|lp...
Estas 2 cosas no funcionarán como se esperaba. Otras reglas funcionan bien. Quiero bloquear una solicitud algo como:
// (too many slash, NOT blocked)
/////////// (too many slash, NOT blocked)
/lpt1 (Apache returns 403, NOT from modsec. Error log: "Forbidden: (web-dir)/lpt1 doesn't point to a file or directory")
/lpt1/blah (Apache returns 403, NOT from modsec. "doesn't point to a file or directory")
/somedir/lpt4.txt (Same as above)
/somedir/lpt4 (Same as above)
/somedir/////// (* SUCCESSFULLY blocked)
Creo que estas expresiones son O.K., así que realmente quiero saber por qué mod_security2 no bloquea estas solicitudes. Quiero bloquear usando mod_sec2, no apache.
Ambiente: Servidor web de prueba de Windows | mod_sec2 | Apache 2.4
To moderators:
Sorry for creating another question,
because my email has been hacked and I lost my password.
Please delete http://security.stackexchange.com/questions/47000/why-these-2-regexp-wont-work-as-expected
I use THIS ONE to continue question.
A la pregunta anterior:
La variable REQUEST_URI no incluye el dominio o el protocolo. ¿Querías agregar más al final de esa URL?
Sí, lo sé. Quiero que mod_sec2 niegue "GET ////////" (se muestra en los ejemplos anteriores). Si golpeo un navegador hxxp: // algo.misitio.com////////// REQUEST_URI se convierte en "///////", por lo que se debe aplicar id: 1001. Estoy en lo correcto?
¿Se ha registrado el ID de la regla para la solicitud que se bloqueó con éxito por Mod Security?
Si la regla mod_security se aplicó con éxito, puedo ver el error mod_sec en mi el registro de errores de apache (incluido el número de ID de golpe, por supuesto)
"/ somedir / lpt4" y otra cosa, son el bloque por apache, no por mod_security. (No hay registros de mod_security)
LTP1?
enlace Quiero que mod_sec niegue estos comandos internos feos, así que creo una regla (id: 1000).
P.S. "RewriteRule" no es una opción para mí. Quiero usar mod_sec2 para hacer esto.