ich möchte mit Apache Mod_security den Proxy (x-forwarded) einer bestimmten Seite (wp-comments-post.php) mit IP blockieren.
meine aktuelle mod_security-Regel:
SecRule REQUEST_HEADERS_NAMES "^x-forwarded-for" "log,deny,id:48,status:403,t:lowercase,msg:'Don't use Proxy'"
Antwort1
Sie sollten in der Lage sein, etwas wie
<LocationMatch "wp-comments-post.php" >
SecRule &REQUEST_HEADERS:X-Forwarded-For "@gt 0" "log,deny,id:48,status:403,msg:'Don't use Proxy'"
</LocationMatch>
Ich habe keine Maschine zur Hand, auf der ich das testen könnte, aber es sollte den Zugriff auf den entsprechenden Standort verweigern, wenn >0 X-Forward-For-Anforderungsheader vorhanden sind. Viele Unternehmen verwenden Proxys, daher müssen Sie dies möglicherweise auf „@gt 1“ setzen, um Fehlalarme zu reduzieren. Der ApacheStandortUndStandortübereinstimmungDokumentation.
Antwort2
Ich glaube, Sie können dies tun, wenn Sie die Modsec-Regeln beispielsweise in eine Standortdirektive einschließen.
<Location /koko/lala/wp-comments-post.php >
SecRule ....
</Location>