Compare commits
4
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
264e7813d9 | ||
|
|
684bf81557 | ||
|
|
1eb6f9d0aa | ||
|
|
9b85c6ec4e |
@@ -5,6 +5,12 @@
|
||||
# $Revision$
|
||||
#
|
||||
|
||||
[INCLUDES]
|
||||
|
||||
# Read common prefixes. If any customizations available -- read them from
|
||||
# common.local
|
||||
before = apache-common.conf
|
||||
|
||||
[Definition]
|
||||
|
||||
# Option: failregex
|
||||
@@ -14,9 +20,7 @@
|
||||
# (?:::f{4,6}:)?(?P<host>[\w\-.^_]+)
|
||||
# Values: TEXT
|
||||
#
|
||||
failregex = [[]client <HOST>[]] user .* authentication failure
|
||||
[[]client <HOST>[]] user .* not found
|
||||
[[]client <HOST>[]] user .* password mismatch
|
||||
failregex = ^%(_apache_error_client)s user .* (authentication failure|not found|password mismatch)\s*$
|
||||
|
||||
# Option: ignoreregex
|
||||
# Notes.: regex to ignore. If this regex matches, the line is ignored.
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# Generic configuration items (to be used as interpolations) in other
|
||||
# apache filters
|
||||
#
|
||||
# Author: Yaroslav Halchenko
|
||||
#
|
||||
#
|
||||
|
||||
[INCLUDES]
|
||||
|
||||
# Load customizations if any available
|
||||
after = apache-common.local
|
||||
|
||||
|
||||
[DEFAULT]
|
||||
|
||||
# Common prefix for [error] apache messages which also would include <HOST>
|
||||
_apache_error_client = \[[^]]+\] \[error\] \[client <HOST>\]
|
||||
@@ -5,6 +5,12 @@
|
||||
# $Revision$
|
||||
#
|
||||
|
||||
[INCLUDES]
|
||||
|
||||
# Read common prefixes. If any customizations available -- read them from
|
||||
# common.local
|
||||
before = apache-common.conf
|
||||
|
||||
[Definition]
|
||||
|
||||
# Option: failregex
|
||||
@@ -14,7 +20,7 @@
|
||||
# per-domain log files.
|
||||
# Values: TEXT
|
||||
#
|
||||
failregex = [[]client <HOST>[]] File does not exist: .*/~.*
|
||||
failregex = ^%(_apache_error_client)s File does not exist: .*/~.*
|
||||
|
||||
# Option: ignoreregex
|
||||
# Notes.: regex to ignore. If this regex matches, the line is ignored.
|
||||
|
||||
@@ -5,6 +5,12 @@
|
||||
# $Revision$
|
||||
#
|
||||
|
||||
[INCLUDES]
|
||||
|
||||
# Read common prefixes. If any customizations available -- read them from
|
||||
# common.local
|
||||
before = apache-common.conf
|
||||
|
||||
[Definition]
|
||||
|
||||
# Option: failregex
|
||||
@@ -14,8 +20,8 @@
|
||||
# (?:::f{4,6}:)?(?P<host>[\w\-.^_]+)
|
||||
# Values: TEXT
|
||||
#
|
||||
failregex = [[]client <HOST>[]] (File does not exist|script not found or unable to stat): /\S*(\.php|\.asp|\.exe|\.pl)
|
||||
[[]client <HOST>[]] script '/\S*(\.php|\.asp|\.exe|\.pl)\S*' not found or unable to stat *$
|
||||
failregex = ^%(_apache_error_client)s (File does not exist|script not found or unable to stat): /\S*(\.php|\.asp|\.exe|\.pl)\s*$
|
||||
^%(_apache_error_client)s script '/\S*(\.php|\.asp|\.exe|\.pl)\S*' not found or unable to stat\s*$
|
||||
|
||||
# Option: ignoreregex
|
||||
# Notes.: regex to ignore. If this regex matches, the line is ignored.
|
||||
|
||||
@@ -5,13 +5,19 @@
|
||||
# $Revision$
|
||||
#
|
||||
|
||||
[INCLUDES]
|
||||
|
||||
# Read common prefixes. If any customizations available -- read them from
|
||||
# common.local
|
||||
before = apache-common.conf
|
||||
|
||||
[Definition]
|
||||
|
||||
# Option: failregex
|
||||
# Notes.: Regexp to catch Apache overflow attempts.
|
||||
# Values: TEXT
|
||||
#
|
||||
failregex = [[]client <HOST>[]] (Invalid (method|URI) in request|request failed: URI too long|erroneous characters after protocol string)
|
||||
failregex = ^%(_apache_error_client)s (Invalid (method|URI) in request|request failed: URI too long|erroneous characters after protocol string)
|
||||
|
||||
# Option: ignoreregex
|
||||
# Notes.: regex to ignore. If this regex matches, the line is ignored.
|
||||
|
||||
Vendored
+17
@@ -1,3 +1,20 @@
|
||||
fail2ban (0.8.6-3wheezy2) wheezy-security; urgency=high
|
||||
|
||||
* Anchor apache- filters failregexes to avoid possible DoS on servers
|
||||
which enabled corresponding jails. Fix cherry-picked from upstream
|
||||
0.8.9-29-g6ccd578 . See http://seclists.org/fulldisclosure/2013/Jun/66
|
||||
|
||||
-- Yaroslav Halchenko <debian@onerussian.com> Wed, 12 Jun 2013 14:11:15 -0400
|
||||
|
||||
fail2ban (0.8.6-3wheezy1) unstable; urgency=high
|
||||
|
||||
* CVE-2012-5642: Escape the content of <matches> since its value could
|
||||
contain arbitrary symbols (Closes: #696184)
|
||||
* Since package source format remained 1.0, manpages patch
|
||||
(deb_manpages_reportbug) was not applied -- fold it into .diff.gz
|
||||
|
||||
-- Yaroslav Halchenko <debian@onerussian.com> Mon, 17 Dec 2012 13:19:32 -0500
|
||||
|
||||
fail2ban (0.8.6-3) unstable; urgency=low
|
||||
|
||||
* Added dovecot section to Debian's jail.conf. Thanks to Laurent
|
||||
|
||||
Vendored
+1
-1
@@ -2,7 +2,7 @@
|
||||
# the default branch for upstream sources:
|
||||
upstream-branch = upstream
|
||||
# the default branch for the debian patch:
|
||||
debian-branch = debian
|
||||
debian-branch = debian-releases/wheezy
|
||||
# use pristine-tar
|
||||
pristine-tar = True
|
||||
# the default tag formats used:
|
||||
|
||||
-28
@@ -1,28 +0,0 @@
|
||||
From: Yaroslav Halchenko <debian@onerussian.com>
|
||||
Date: Fri, 8 Feb 2008 00:40:57 -0500
|
||||
Subject: tune ups in upstream manpages to direct users to use reportbug
|
||||
|
||||
--- a/man/fail2ban-client.1
|
||||
+++ b/man/fail2ban-client.1
|
||||
@@ -251,7 +251,8 @@ action <ACT> for <JAIL>
|
||||
Written by Cyril Jaquier <cyril.jaquier@fail2ban.org>.
|
||||
Many contributions by Yaroslav O. Halchenko <debian@onerussian.com>.
|
||||
.SH "REPORTING BUGS"
|
||||
-Report bugs to <cyril.jaquier@fail2ban.org>
|
||||
+Please report bugs via Debian bug tracking system
|
||||
+http://www.debian.org/Bugs/.
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2004-2008 Cyril Jaquier
|
||||
.br
|
||||
--- a/man/fail2ban-server.1
|
||||
+++ b/man/fail2ban-server.1
|
||||
@@ -35,7 +35,8 @@ print the version
|
||||
Written by Cyril Jaquier <cyril.jaquier@fail2ban.org>.
|
||||
Many contributions by Yaroslav O. Halchenko <debian@onerussian.com>.
|
||||
.SH "REPORTING BUGS"
|
||||
-Report bugs to <cyril.jaquier@fail2ban.org>
|
||||
+Please report bugs via Debian bug tracking system
|
||||
+http://www.debian.org/Bugs/.
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2004-2008 Cyril Jaquier
|
||||
.br
|
||||
Vendored
-1
@@ -1 +0,0 @@
|
||||
deb_manpages_reportbug
|
||||
@@ -251,7 +251,8 @@ action <ACT> for <JAIL>
|
||||
Written by Cyril Jaquier <cyril.jaquier@fail2ban.org>.
|
||||
Many contributions by Yaroslav O. Halchenko <debian@onerussian.com>.
|
||||
.SH "REPORTING BUGS"
|
||||
Report bugs to <cyril.jaquier@fail2ban.org>
|
||||
Please report bugs via Debian bug tracking system
|
||||
http://www.debian.org/Bugs/.
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2004-2008 Cyril Jaquier
|
||||
.br
|
||||
|
||||
@@ -35,7 +35,8 @@ print the version
|
||||
Written by Cyril Jaquier <cyril.jaquier@fail2ban.org>.
|
||||
Many contributions by Yaroslav O. Halchenko <debian@onerussian.com>.
|
||||
.SH "REPORTING BUGS"
|
||||
Report bugs to <cyril.jaquier@fail2ban.org>
|
||||
Please report bugs via Debian bug tracking system
|
||||
http://www.debian.org/Bugs/.
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2004-2008 Cyril Jaquier
|
||||
.br
|
||||
|
||||
+15
-3
@@ -230,7 +230,14 @@ class Action:
|
||||
def execActionStop(self):
|
||||
stopCmd = Action.replaceTag(self.__actionStop, self.__cInfo)
|
||||
return Action.executeCmd(stopCmd)
|
||||
|
||||
|
||||
def escapeTag(tag):
|
||||
for c in '\\#&;`|*?~<>^()[]{}$\n':
|
||||
if c in tag:
|
||||
tag = tag.replace(c, '\\' + c)
|
||||
return tag
|
||||
escapeTag = staticmethod(escapeTag)
|
||||
|
||||
##
|
||||
# Replaces tags in query with property values in aInfo.
|
||||
#
|
||||
@@ -243,8 +250,13 @@ class Action:
|
||||
""" Replace tags in query
|
||||
"""
|
||||
string = query
|
||||
for tag in aInfo:
|
||||
string = string.replace('<' + tag + '>', str(aInfo[tag]))
|
||||
for tag, value in aInfo.iteritems():
|
||||
value = str(value) # assure string
|
||||
if tag == 'matches':
|
||||
# That one needs to be escaped since its content is
|
||||
# out of our control
|
||||
value = Action.escapeTag(value)
|
||||
string = string.replace('<' + tag + '>', value)
|
||||
# New line
|
||||
string = string.replace("<br>", '\n')
|
||||
return string
|
||||
|
||||
Reference in New Issue
Block a user