Forums Neueste Beiträge
 

800.loginfail -- bug or feature?

26/01/2008 - 19:38 von Michael Grimm | Report spam
[Superseded]

Moin, moin -

Kürzlich habe ich einen Upgrade von 6.2-RELEASE nach 6.3-RELEASE
vorgenommen.

Seit diesem Zeitpunkt erhielt ich nur noch eine Untermenge der
üblicherweise gefundenen abgewiesenen Login-Versuche.

Gefunden ("... [xxx.xxx.xxx.xxx]" von mir):
#v+
Jan 26 16:09:32 troi sshd[76566]: reverse mapping ... [xxx.xxx.xxx.xxx] failed - POSSIBLE BREAK-IN ATTEMPT!
#v-

Nicht gefunden ("xx.xx.xxx.xx" von mir):
#v+
Jan 26 08:10:30 troi sshd[68360]: Invalid user gary from xx.xx.xxx.xx
#v-

Der Unterschied zwischen dem 6.2- und 6.3-800.loginfail-Script lautet:
#v+
< # $FreeBSD: src/etc/periodic/security/800.loginfail,v 1.5.12.2 2006/03/16 12:22:00 matteo Exp $


# $FreeBSD: src/etc/periodic/security/800.loginfail,v 1.5.12.3 2007/03/06 18:29:19 remko Exp $


62c62
< n=$(catmsgs | egrep -ia "^$yesterday.*(fail|invalid|bad|illegal)" |


n=$(catmsgs | egrep -ia "^$yesterday.*: .* (fail|invalid|bad|illegal)" |


#v-

Mein Wissen bezüglich RegEx ist beschrànkt, trotzdem hoffe ich
verstanden zu haben, weshalb das neue 800.loginfail nur einen Teil der
Log-Eintràge findet ($yesterday lautet bspw. "Jan 26 ", Gànsefüßchen
von mir):

|^$yesterday.*: .* (fail|invalid|...
^^^^
findet alles bis:
|Jan 26 16:09:32 troi sshd[76566]: <-

|^$yesterday.*: .* (fail|invalid|...
^^^ ^^^^
findet alles von:
|->reverse mapping ...
bis:
|-> fail<-ed ...

beginnt der text nach "sshd[68360]: " mit einem "Invalid" (ohne führenes
Blank), dann greift die RegEx nicht. Ist das korrekt? Oder habe ich die
RegEx doch nicht richtig verstanden?

Gruß,
Michael
Heute im Angebot der ATK: Wild Fart - Die Blüte der Erleichterung
 

Lesen sie die antworten

#1 Hilko Meyer
27/01/2008 - 19:36 | Warnen spam
Michael Grimm schrieb:
Der Unterschied zwischen dem 6.2- und 6.3-800.loginfail-Script lautet:

< # $FreeBSD: src/etc/periodic/security/800.loginfail,v 1.5.12.2 2006/03/16 12:22:00 matteo Exp $

# $FreeBSD: src/etc/periodic/security/800.loginfail,v 1.5.12.3 2007/03/06 18:29:19 remko Exp $


62c62
< n=$(catmsgs | egrep -ia "^$yesterday.*(fail|invalid|bad|illegal)" |

n=$(catmsgs | egrep -ia "^$yesterday.*: .* (fail|invalid|bad|illegal)" |




[...]
beginnt der text nach "sshd[68360]: " mit einem "Invalid" (ohne führenes
Blank), dann greift die RegEx nicht.



Anders formuliert ist es klarer.
Zwischen ":" und "(fail|invalid|bad|illegal)" müssen sich mindestens
zwei Leerzeichen befinden. Weiterhin dürfen sich noch beliebige Zeichen
zwischen den beiden Leerzeichen befinden.

Da sich bei
|Jan 26 08:10:30 troi sshd[68360]: Invalid user gary from xx.xx.xxx.xx
nur ein Leerzeichen zwischen ":" und "Invalid" befindet, schlàgt die
Regex da nicht an. Das Space zwischen ":" und Klammer ist zuviel

Ist das korrekt? Oder habe ich die RegEx doch nicht richtig verstanden?



Du hast den regulàren Ausdruck schon richtig verstanden.

Reichst du einen neuen PR ein bzw. ergànzt du
http://www.freebsd.org/cgi/query-pr.cgi?pr7560 oder soll ich das
machen?

Hilko

Ähnliche fragen