Passive und aktive Verteidigung gegen Angriffe

Moien

Mir reichts: jeder Standardservice wie ssh oder http wird auf meinem privaten Server ständig gescannt, mit brute-force logins traktiert und mit invaliden, überlangen Datenpacketen (Bufferoverlfow ?) beschossen. Es ist also nur eine Frage der Zeit bis doch so ein bescheuerter wurm/script-kiddy durchkommt.

Wo finde ich Skripts/Deamons/Anleitungen für Linux (Debian Stable mit allen Sicherheitspatches) die:

  • Firewall (ipchain & Co) dynamisch einsetzen um angreifende IPs auszufiltern
  • Angreifer auf Honeypots umlenken*
  • beim erkennen eines Angriffs Skripte ausführen
  • die Serverversionen und das OS verschleieren
  • den Zugriff auf die Platten unter allen Umständen verhindern**

Normales Server hardening hab ich durch. Die Passwörter sind so wie sie sein sollten…

cu

*Hab hier einen Rechner der Linux von CD startet und keine beschreibbaren Medien enthält. Wenn der alle 2 Stunden neu startet kann er von mir aus ziwschendurch mal zerlegt werden. Nach aussen hat die IP eh keinen Zugriff, dafür sorgt der DSL-Router.

** Der Rechner hat ein selbstgebautes initrd: er lädt beim start squashfs-images in eine ramdisc und bootet dann davon. Die Platten werden im normalen Betrieb nicht benutzt, nur beim shutdown werden die veränderlichen Daten (/home, webroot, /etc …) zurücgeschrieben. Während dem Betrieb sollten die Platten also nicht verfügbar sein.

Hallo,

Wo finde ich Skripts/Deamons/Anleitungen für Linux (Debian
Stable mit allen Sicherheitspatches) die:

  • Firewall (ipchain & Co) dynamisch einsetzen um angreifende
    IPs auszufiltern

Für Apache gibt es da mod_evasive, sources wirst du wohl selbst kompilieren müssen:
http://www.nuclearelephant.com/projects/mod_evasive/

  • Angreifer auf Honeypots umlenken*
  • beim erkennen eines Angriffs Skripte ausführen
  • die Serverversionen und das OS verschleieren

Ich glaube nicht, dass das viel bringt…

  • den Zugriff auf die Platten unter allen Umständen
    verhindern**

Normales Server hardening hab ich durch. Die Passwörter sind
so wie sie sein sollten…

Vielleicht solltest du dir mal Selinux anschauen, soweit gibt es ein marillat-Paket für selinux, aber es ist wohl recht viel Aufwand, das ordentlich zum laufen zu bringen.

Grüße,
Moritz

Hi,

Mir reichts: jeder Standardservice wie ssh oder http wird auf
meinem privaten Server ständig gescannt, mit brute-force
logins traktiert und mit invaliden, überlangen Datenpacketen
(Bufferoverlfow ?) beschossen. Es ist also nur eine Frage der
Zeit bis doch so ein bescheuerter wurm/script-kiddy
durchkommt.

dieses Thema wurde unlängst auf de-bsd-questions diskutiert, vielleicht ist da ein hilfreicher Gedanke für Dich dabei: http://www.freebsd.de/archive/de-bsd-questions/de-bs…

Gruß,

Malte

Hallo Pumpkin,

Mir reichts: jeder Standardservice wie ssh oder http wird auf
meinem privaten Server ständig gescannt, mit brute-force
logins traktiert und mit invaliden, überlangen Datenpacketen
(Bufferoverlfow ?) beschossen. Es ist also nur eine Frage der
Zeit bis doch so ein bescheuerter wurm/script-kiddy
durchkommt.

Wo finde ich Skripts/Deamons/Anleitungen für Linux (Debian
Stable mit allen Sicherheitspatches) die:

  • Firewall (ipchain & Co) dynamisch einsetzen um angreifende
    IPs auszufiltern

Ich setze seit ca. 6 Monaten das (leicht modifizierte) Skript von
http://fail2ban.sourceforge.net/
ein. Damit wird nach x fehlgeschlagenen Logins innerhalb von y Minuten der ganze Traffic der entsprechenden IP fuer z Minuten rejected.

HTH,
Puersti

Danke, war einiges dabei. (owt)
.

Moien

  • Firewall (ipchain & Co) dynamisch einsetzen um angreifende
    IPs auszufiltern

Für Apache gibt es da mod_evasive, sources wirst du wohl
selbst kompilieren müssen:

Das kenn ich. Nur wirkt das leider nur auf http-Zugriffe und da auch nur auf apache. Ich suchte mehr nach einer Möglichkeit über pam zu gehen.

  • die Serverversionen und das OS verschleieren

Ich glaube nicht, dass das viel bringt…

Es hält zumindest alle Schnelltests mit nessus ab.

Vielleicht solltest du dir mal Selinux anschauen, soweit gibt
es ein marillat-Paket für selinux, aber es ist wohl recht viel
Aufwand, das ordentlich zum laufen zu bringen.

Ich kannte SElinux schon vorher. Nur ist der Aufwand/Nutzen nicht besonders hoch und der Aufwand enorm. Und so richtig kompilierbar ist es auf meinem Server auch nicht, selinux ist nämlich an ein paar Stellen nicht Endian-unabhängig. Der Server ist aber ein ARM…

cu

Danke, das war das richtige (fowt)
Moien

Ich setze seit ca. 6 Monaten das (leicht modifizierte) Skript
von
http://fail2ban.sourceforge.net/
ein.

Das sieht schonmal gut aus, wird heute abend getestet. Kann das mit /var/log/auth.log was anfangen ?

cu

Hi,

Ich setze seit ca. 6 Monaten das (leicht modifizierte) Skript
von
http://fail2ban.sourceforge.net/
ein.

Das sieht schonmal gut aus, wird heute abend getestet. Kann
das mit /var/log/auth.log was anfangen ?

Das ist mein Haupteinsatzgebiet.