Reporting-Service betreiben?

d3p

Member
Hallo,
ich würde gerne eine Art "Reporting-Service" wie blocklist.de betreiben, bzw. für meinen Arbeitgeber nutzen um unser Netzwerk frei von offenen Resolver und ähnlichem zu halten. :)

SOLL:
Das Netzwerk wird mittels zmap auf verschiedenen Ports gescannt und der Output wird dann in eine entsprechende Datei geschrieben.
Anschließend wird z.B. bei Port 53 geprüft, ob der DNS-Server ein Openresolver ist, und falls ja, würde ich gerne die IP-Adresse sowie einen Output von "dig" an unsere Interne Mailadresse schicken, damit wir dies unserem Kunden weiterleiten können.

An die Abuse-Mail komme ich z.B. per whois -b ~IP~ ran. :)

Wie kann ich sowas am besten automatisieren?
Für Verbesserungsvorschläge bin ich immer offen! :)

Ich möchte hier keine fertige Lösungen präsentiert bekommen, eher Tipps/Denkanstöße. :)

Danke!
 
Last edited by a moderator:
Hi,

also falls ihr ein festes AS-Netzwerk habt, könnt ihr euch bei der ShadowServer-Foundation anmelden, die machen so was bereits:
http://shadowserver.org/wiki/

Ansonsten brauchst halt mehrere Module:
- Scanner-Modul, welches die IP prüft (Ports) und Por53 ob dns läuft
- Modul zum prüfen ob auf dem Port dann ein openResolver ist
- Modul, was die ganzen Werte usw. speichert, bzw. sagt welche IPs noch offen sind
- Whois-Parser (abusix.org, phpwhois -b, eigene db...)
- Modul welches die Mail versendet (Blacklist, nicht flooded....), an wen wurde die Mail gesendet und von wo kam die Adresse....

Viele Sachen gibt es in einigen Frameworks bereits fertig, ansonsten muss man den Output des Programms dann prüfen und verarbeiten.


Ich hab das meiste von blocklist.de in PHP geschrieben. Mit entsprechenden Objekten/OOP kann man den Code gut wieder verwenden und hat daher wenig Schreibarbeit.

Wenn du fertige Tools wie nmap usw. verwendest, musst halt über ein Skript den Output parsen und überprüfen und entsprechend dann speichern/weitergeben an das nächste Skript ;-)
 
Hallo,

Danke für deine Antwort. :)


also falls ihr ein festes AS-Netzwerk habt, könnt ihr euch bei der ShadowServer-Foundation anmelden, die machen so was bereits:
http://shadowserver.org/wiki/

Ich würd gern was eigenes entwickeln. ;)

- Scanner-Modul, welches die IP prüft (Ports) und Por53 ob dns läuft

Hierfür nutze ich zmap.

- Modul zum prüfen ob auf dem Port dann ein openResolver ist

-> Derzeit habe ich nur ein Script, welches eine entsprechende DNS-Abfrage an die IP sendet und dann entweder einfach "Nichts" zurück gibt, oder halt, dass der Server entsprechend auf die Anfrage antwortet und angreifbar ist.

- Modul, was die ganzen Werte usw. speichert, bzw. sagt welche IPs noch offen sind
- Whois-Parser (abusix.org, phpwhois -b, eigene db...)
- Modul welches die Mail versendet (Blacklist, nicht flooded....), an wen wurde die Mail gesendet und von wo kam die Adresse....

Okay, das fehlt mir noch. :)

Viele Sachen gibt es in einigen Frameworks bereits fertig, ansonsten muss man den Output des Programms dann prüfen und verarbeiten.

Hast du eventuell einen Namen von einem dieser Frameworks?
Ansonsten vielen Dank für deine Antwort! :)
 
Hi,

für die Whois-Query nutzen wir z.b. hauptsächlich phpwhois und haben das um ein eigenes Caching erweitert, ebenso das bei IPs von der ripe.net nur ein "-b" genutzt wird.

Zum generieren und versenden der Mails Mail_Mime, und phpmailer.

Der Rest ist alles selbst geschrieben ;-)
Aber wenn man halt mal eine Klasse für IP/Status/URL-Prüfung hat usw. kann man das wie pear immer wieder verwenden.
 
Back
Top