Christian Bockermann
2010-11-14 22:23:08 UTC
Hi list,
I wonder if anyone was using ModSecurity's @rbl operator to block
requests based upon a realtime-blocklist.
I wasn't - due to lack of a convenient way to handle RBLs.
However, I recently started the implementation of a small and
dynamic RBL-server, which can be used as a central database of
black-listed IPs among ModSecurity several instances.
# Deny clients on the central block-list
#
SecRule REMOTE_ADDR "@rbl rbl.localnet" "phase:1,deny"
The big feature here is, that ModSecurity can add IPs to the
RBL as well, for example:
# this adds a client IP to the block list for 60 seconds
#
SecRule REMOTE_ADDR "@rbl block-600.rbl.localnet" "phase:1,deny"
To remove an IP from the RBL from within ModSecurity, you can
use a rule like:
# remove/unblock the IP of the current request:
#
SecRule REMOTE_ADDR "@rbl unblock.rbl.localnet" "phase:1,pass"
My 'jwall-rbld' is an tiny open-source Java implementation of a
DNS server which does provide this, though it is in an experimental
state, right now.
If anyone is interested, you can find a blog-post about it and
some documentation at
https://secure.jwall.org/blog/2010/11/14/1289761589498.html
@users of the AuditConsole:
The next release of the AuditConsole will include the RBL server
as built-in feature (optional, of course) as well as a web-interface
for manually inspecting/modifying the RBLs...
Best regards,
Chris
I wonder if anyone was using ModSecurity's @rbl operator to block
requests based upon a realtime-blocklist.
I wasn't - due to lack of a convenient way to handle RBLs.
However, I recently started the implementation of a small and
dynamic RBL-server, which can be used as a central database of
black-listed IPs among ModSecurity several instances.
# Deny clients on the central block-list
#
SecRule REMOTE_ADDR "@rbl rbl.localnet" "phase:1,deny"
The big feature here is, that ModSecurity can add IPs to the
RBL as well, for example:
# this adds a client IP to the block list for 60 seconds
#
SecRule REMOTE_ADDR "@rbl block-600.rbl.localnet" "phase:1,deny"
To remove an IP from the RBL from within ModSecurity, you can
use a rule like:
# remove/unblock the IP of the current request:
#
SecRule REMOTE_ADDR "@rbl unblock.rbl.localnet" "phase:1,pass"
My 'jwall-rbld' is an tiny open-source Java implementation of a
DNS server which does provide this, though it is in an experimental
state, right now.
If anyone is interested, you can find a blog-post about it and
some documentation at
https://secure.jwall.org/blog/2010/11/14/1289761589498.html
@users of the AuditConsole:
The next release of the AuditConsole will include the RBL server
as built-in feature (optional, of course) as well as a web-interface
for manually inspecting/modifying the RBLs...
Best regards,
Chris