Honeypot IP Tables Konfiguration - Server Support Forum
Server Support Forum
Anzeige:
Honeypot IP Tables Konfiguration

Zurück   Server Support Forum > >

Anzeige:

Antwort
 
Themen-Optionen Thema bewerten
  #1  
Alt 04.04.2009, 15:57
Benutzerbild von Firewire2002
Firewire2002 Firewire2002 ist offline
Registered User
 
Registriert seit: 02.2006
Ort: Hürth
Beiträge: 4.448
Cool Honeypot IP Tables Konfiguration

Als Statistik-Liebhaber hab ich mich mal durch Huschi's Artikel (Portscan-Honeypot mit iptables - huschi.net) inspirieren lassen.

Honeypot auf Port 22,23,135 mit einer Sperre für 8 Stunden und einer Erhöhung der ip_list_tot auf 1000 (Anzahl der Einträge in der Liste für das recent Modul)
Im Anhang ist der derzeitige Stand. Unter Munin :: Eisscholle.net :: Snowball.Eisscholle.net :: IPTables dürfen die aktuellen Statistiken bewundert werden.

Ich schätze das Limit von 1000 (Standard ist 100) wird noch nicht reichen.
Wer hält dagegen?
Miniaturansicht angehängter Grafiken
Honeypot IP Tables Konfiguration-honeypot.png  
Mit Zitat antworten
Anzeige:

  #2  
Alt 05.04.2009, 22:56
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.460
Zitat:
Zitat von Firewire2002 Beitrag anzeigen
Ich schätze das Limit von 1000 (Standard ist 100) wird noch nicht reichen.
Wenn ich mir deine LiveStats so anschaue: Du hast Recht.

Ich baus auch gerade mal ein
Mit Zitat antworten
  #3  
Alt 05.04.2009, 23:04
Benutzerbild von Firewire2002
Firewire2002 Firewire2002 ist offline
Registered User
 
Registriert seit: 02.2006
Ort: Hürth
Beiträge: 4.448
Habe das Limit ip_list_tot mal auf 100.000 Einträge erhöht.
Dürfte auch interessant werden, wie sich CPU und Ram dazu verhält.

Theorie aus Linux Büchern ist mir zu langweilig. Ich mach lieber Experimente.

@djrick:
Falls du deine Statistiken mit meinen vergleichen willst, bedenke das bei mir 34 IPs hochgefahren sind.
Das könnte sich etwas auf die Statistiken auswirken.

Geändert von Firewire2002 (05.04.2009 um 23:07 Uhr)
Mit Zitat antworten
  #4  
Alt 05.04.2009, 23:20
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.460
Du könntest mir aber mal das Munin Plugin posten

An der Menge der öffentlichen IPs könnte ich mithaten, jedoch werden von meinen 64 möglichen IPs 61 von der Firewall direkt geblockt (wüsste auch nicht wozu ein Terminal Client o.Ä. vom Internet aus erreichbar sein sollte )

Geändert von djrick (05.04.2009 um 23:23 Uhr)
Mit Zitat antworten
  #5  
Alt 05.04.2009, 23:28
Benutzerbild von Firewire2002
Firewire2002 Firewire2002 ist offline
Registered User
 
Registriert seit: 02.2006
Ort: Hürth
Beiträge: 4.448
Hmm ich weiß nicht. Dafür sollte man sich eigentlich schämen.
Aber na gut:

Code:
#!/bin/bash

if [ "$1" = "autoconf" ]; then
	echo yes 
	exit 0
fi

if [ "$1" = "config" ]; then
	echo 'graph_title Number of IPTables on System'
	echo 'graph_args --base 1000 -l 0 '
	echo 'graph_vlabel number of rules'
	echo 'graph_category Network'
	echo 'graph_order iptrulesnumstatic iptrulesnumdrop iptrulesnumpscan'
	echo 'graph_info This graph shows the number of Iptables Rules on System.'
	echo 'iptrulesnumstatic.label Static Rules'
	echo 'iptrulesnumstatic.draw AREA'
	echo 'iptrulesnumdrop.label Drop Rules'
	echo 'iptrulesnumdrop.draw STACK'
	echo 'iptrulesnumpscan.label Port Scans'
	echo 'iptrulesnumpscan.draw STACK'	
	exit 0
fi

pscan=$(cat /proc/net/ipt_recent/portscan | wc -l)
drop=`iptables -L -n | grep -e "^DROP.*" | wc -l`
static=`iptables -L -n | grep -v Chain | grep -v -e "target.*prot.*opt.*source.*destination" | grep -v -e "^$" | wc -l`
static=`echo "${static}-${drop}" | bc`

echo "iptrulesnumstatic.value ${static}"
echo "iptrulesnumdrop.value ${drop}"
echo "iptrulesnumpscan.value ${pscan}"
Mit Zitat antworten
  #6  
Alt 06.04.2009, 00:05
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.460
OK eine dumme Frage, nach der Anleitung von Huschi: Portscan-Honeypot mit iptables - huschi.net wird ja nur ein Port überwacht...jetzt will ich aber noch weitere Ports überwachen, also hab ich das Script so abgewandelt...:

Code:
#!/bin/sh

HP_IPT='/sbin/iptables'
HP_Time=3600

$HP_IPT -N honeypot
$HP_IPT -A INPUT -s ! 127.0.0.1 -j honeypot
$HP_IPT -A honeypot -m recent --update --seconds $HP_Time --name portscan -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 21 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 21 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 21 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 22 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 22 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 22 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 80 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 80 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 80 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 443 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 443 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 443 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -j RETURN
Ist das so richtig?
Mit Zitat antworten
  #7  
Alt 06.04.2009, 15:18
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.460
Zitat:
Zitat von djrick Beitrag anzeigen
Ist das so richtig?
Anscheinend nicht, denn jedesmal wenn ich die zweite Regel erstellen will (also Port 22) sperr ich mich immer von meinem Webserver aus
Mit Zitat antworten
  #8  
Alt 06.04.2009, 16:56
Benutzerbild von Huschi
Huschi Huschi ist offline
Moderator
 
Registriert seit: 09.2003
Ort: Nürnberg
Beiträge: 15.408
Blog-Einträge: 5
Meine alte Lieblingsfrage:
Was schreibt er ins Log?

huschi
__________________
huschi.net - Linux-Server-Admin FAQ
Consult-N.de - kommerzieller Linux-Support
Mit Zitat antworten
  #9  
Alt 06.04.2009, 17:02
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.460
Tja....nichts?!
Ausser meinem Reboot (denn was anderes funktioniert nicht mehr) steht dort nichts.

Was klappt:
Code:
#!/bin/sh

HP_IPT='/sbin/iptables'
HP_Time=3600

$HP_IPT -N honeypot
$HP_IPT -A INPUT -s ! 127.0.0.1 -j honeypot
$HP_IPT -A honeypot -m recent --update --seconds $HP_Time --name portscan -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 21 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 21 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 21 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -j RETURN
Erweitere ich es aber so:
Code:
#!/bin/sh

HP_IPT='/sbin/iptables'
HP_Time=3600

$HP_IPT -N honeypot
$HP_IPT -A INPUT -s ! 127.0.0.1 -j honeypot
$HP_IPT -A honeypot -m recent --update --seconds $HP_Time --name portscan -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 21 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 21 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 21 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 22 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 22 " --log-level 6 --log-ip-options

HIER

$HP_IPT -A honeypot -p tcp -m tcp --dport 22 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 80 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 80 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 80 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -p tcp -m tcp --dport 443 -m recent --name portscan --set -j LOG --log-prefix "IPTABLES -- HONEYPOT -- P 443 " --log-level 6 --log-ip-options
$HP_IPT -A honeypot -p tcp -m tcp --dport 443 -m recent --name portscan --set -j DROP

$HP_IPT -A honeypot -j RETURN
Bricht bei "hier" der Server zusammen.

Also der Server läuft weiter bloss sperrt mich das iptables script dann aus:
Code:
IPTABLES -- HONEYPOT -- P 22IN=eth0 OUT= MAC=00:xxxxxxxxxxxx SRC=MEIN_PC_IP DST=SERVERIP LEN=40 TOS=0x00 PREC=0x00 TTL$=3954 DPT=22 WINDOW=64279 RES=0x00 ACK URGP=0

Geändert von djrick (06.04.2009 um 17:06 Uhr)
Mit Zitat antworten
  #10  
Alt 06.04.2009, 19:55
Whistler Whistler ist offline
Support Guru
 
Registriert seit: 10.2008
Beiträge: 2.626
Sehe ich das richtig?
Jemand, der bei einer beliebigigen IP Deines Servers (einzige Ausnahme: 127.0.0.1) eine SSH-Verbindung versucht wird blockiert?.
Und das Ganze gibst Du über ssh ein?
Mit Zitat antworten
  #11  
Alt 06.04.2009, 20:13
blupp1
Gast
 
Beiträge: n/a
Wer sagt denn, dass sein SSH Port nicht verlegt ist?
Mit Zitat antworten
  #12  
Alt 06.04.2009, 20:22
Whistler Whistler ist offline
Support Guru
 
Registriert seit: 10.2008
Beiträge: 2.626
Der Log-Auszug (SRC=MEIN_PC_IP DST=SERVERIP DPT=22).
Mit Zitat antworten
  #13  
Alt 06.04.2009, 20:36
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.460
....Whistler sieht das schon richtig, ich glaube ich hab vercheckt was Honypot genau macht.....

Hmm dann mal anders gefragt: Welche Ports sollte man sinnvollerweise damit blocken?
Mit Zitat antworten
  #14  
Alt 06.04.2009, 21:02
Whistler Whistler ist offline
Support Guru
 
Registriert seit: 10.2008
Beiträge: 2.626
Zunächst mal die, welche man nicht braucht

In Huschis Beispiel ist das Telnet, weil man auf einem Server ja wohl kaum einen Telnet-Port öffnen wird.
Ein Angreifer scannt aber erstmal und hofft vielleicht doch auf einen Telnet-Zugang - das verrät ihn.

Wenn man mehrere IPs hat, kann man das noch weiter treiben. SSH und (z.B.) SMTP sind nur auf eine IP gebunden, Verbindungsversuche auf andere IPs führen zum Sperren der Quell-IP.
Lediglich Port 80, 443 oder was auch immer der Grund für die verschienenen IPs ist, bleibt offen.

Ein potientieller Spammer scannt Port 25 in einer ganzen IP-Range - und landet damit im Honeypot.

Eine weitere Steigerung gestattet das Port-Knocking. Hier wird die (temporäre) Regel, weche SSH gestattet, erst nach dem Anklopfen erzeugt - ein direkter Verbindungsversuch prallt an der Firewall ab.
Mit Zitat antworten
  #15  
Alt 06.04.2009, 21:15
Benutzerbild von Firewire2002
Firewire2002 Firewire2002 ist offline
Registered User
 
Registriert seit: 02.2006
Ort: Hürth
Beiträge: 4.448
Hehe. Hätte ich wohl vorher mal erwähnen sollen, dass ich mein SSH Port verlegt hab?
Mit Zitat antworten
Antwort

Lesezeichen

Anzeige:

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
hamachi netzwerk Trinexx Smalltalk 5195 19.09.2016 12:07
MySQL Performance Tuning mit Tuning-Primer.sh Script noto SQL 256 28.10.2013 22:31
Konfiguration von Webmin/Virtualmin ForrestFunk Webmin 6 07.07.2007 09:20
Kontrolle / Verbesserung der Konfiguration bei einen Strato HighEnd-Server LR2 (v4.5) RedPoint Suche 2 28.02.2007 16:58
mySQL Konfiguration für vServer Thorsten Virtuelle Server 3 20.09.2003 11:41


Honeypot IP Tables Konfiguration
Honeypot IP Tables Konfiguration
Honeypot IP Tables Konfiguration Honeypot IP Tables Konfiguration
Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.