staging.inyokaproject.org

bash mit nmap Parameter Übergabe erstellen

Status: Ungelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

mikeeyy

Anmeldungsdatum:
9. Oktober 2017

Beiträge: Zähle...

Guten Morgen zusammen,

ich benötige bitte etwas Unterstützung bei der Erstellung eines Scriptes, welches folgendes realisieren sollte:

  • Start von nmap mit Übergabe des Subnetzes aus welchem die aktuell DHCP Adresse vom Interface eth0 bezogen wurde

  • Im Anschluss Start von nmap und mit der Übergabe des Subnetzes vom DHCP Servers

  • 2 * Beep für erfolgreiche Umsetzung der vorgenannten Punkte

  • 10 * Beep für Fehler

  • Start eines weiteren Prozesses nach Abarbeiten der vorgenannten Schritte

Idealerweise kann das ganze in der init.d als Autostart realisiert werden. Meine Probleme fangen bereits beim Auslesen der IP Adressen und daraus abgeleiteten Subnetze an, gehen dann über die Zuweisung in die entsprechenden Variablen und damit einer Nutzung durch weitere Anwendungen.

Vielen Dank im Voraus für eure Unterstützung und einen guten, sonnigen Start in die neue Woche!

Beste Grüße, M.

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13242

Was willst Du eigentlich erreichen? Was ist der Zweck?

mikeeyy

(Themenstarter)

Anmeldungsdatum:
9. Oktober 2017

Beiträge: Zähle...

Wir haben an verschiedenen Außenstandorten das Problem, dass es wiederholt zu Störungen im Netzbetrieb kommt. Mutmaßlich verursacht durch die Nutzung von Fremdsystemen. Um selbige identifizieren zu können, ist der Einsatz einer einfachen Client Lösung geplant, welche ohne größere Fachkenntnis durch einen benannten Fachanwender vor Ort in Betrieb genommen werden kann und einen Scan durchführt und hierbei eine Gesamtübersicht erstellt. Diese soll im Anschluss mit den bekannten Standortdaten abgeglichen werden. In diesem Zusammenhang soll auch eine Manipulation von Logdaten vermieden werden, da kein Zugriff auf das System vorgesehen ist. Die Logdateien (welche einen individuellen Syntax, z.B. Zeitstempel oder Netznamen besitzen müssten) sollen im Nachgang zentral aufbereitet und ausgewertet werden.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 9837

Wenn Ihr „Maulwürfe“ und andere Schädlinge im internen Netz habt, benötigt Ihr die Hilfe von Sicherheitsexperten. Diese lassen sich ihr Wissen und Können berechtigterweise bezahlen. Irgendwelche ad-hoc Skripte werden Euch nicht helfen, zumal offenbar sogar die Grundkenntnisse für ein Verständnis derselben nicht verfügbar sind.

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13242

mikeeyy schrieb:

Wir haben an verschiedenen Außenstandorten das Problem, dass es wiederholt zu Störungen im Netzbetrieb kommt. Mutmaßlich verursacht durch die Nutzung von Fremdsystemen. Um selbige identifizieren zu können, ist der Einsatz einer einfachen Client Lösung geplant, welche ohne größere Fachkenntnis durch einen benannten Fachanwender vor Ort in Betrieb genommen werden kann und einen Scan durchführt und hierbei eine Gesamtübersicht erstellt. Diese soll im Anschluss mit den bekannten Standortdaten abgeglichen werden.

Also, wenn ich das mit meinen Worten formuliere: Du willst einen Netzwerkscan machen um Systeme im Netz zu erkennen, die nicht zu Eurer Infrastruktur gehören (als, z.B. irgendwelche fremden Laptops oder Smartphones). Ein paar Punkte:

  • Warum per Autostart? Dann läuft das ja nur ein Mal beim Systemstart. Wäre das nicht eher etwas für einen Cronjob, der regelmäßig prüft, oder einen Scan, den man manuell startet? Der Text oben klingt eher nach manuell gestartet.

  • Auf einem Linux-System müsstest Du eigentlich gar nichts übergeben, weil die Informationen über den DHCP-Server, der die IP vergeben hat, verfügbar sein müssten.

  • Generell kannst Du mit nmap zwar ermitteln, was da so in Deinem Netzwerk unterwegs ist, aber für die Fehlersuche bei den genannten "Störungen im Netzbetrieb" braucht es mehr.

may24x

Anmeldungsdatum:
26. April 2016

Beiträge: 116

Nun, ich denke mal das https://www.snort.org/ hier die bessere Alternative für Network-Intrusion-Detection ist. Und das gibt's auch in einer freien Version ...

mikeeyy

(Themenstarter)

Anmeldungsdatum:
9. Oktober 2017

Beiträge: 5

Also.. zuerst einmal vielen Dank für die zahlreichen Rückmeldungen.. aber... 😉.. ein wirklich konstruktiver und die Fragestellung betreffender Input war bislang (leider) nicht dabei.

Snort als IDS ist uninteressant, da es als passive Komponente eben nur aktive Scans und "Angriffe" identifiziert. Jetzt muss nicht jedes Fremdgerät = einen Angriff initiieren und gehört dennoch nicht ins Netz. Insofern wird Snort mir hier nichts bringen. Die Implementierung einer zertifikatsbasierten Port Policy befindet sich ebenfalls in Planung. Insofern wird auch das zukünftig idealerweise die Problematik einschränken. Das alles hilft mir aber nichts beim IST Zustand und warten halte ich jetzt doch für die schlechteste aller Varianten.

Ich verstehe durchaus das Interesse an den hier gestellten Rückfragen. Welcher Lösungsansatz im Sinne meiner Anfrage lässt sich daraus ableiten??????

Die Informationen im DHCP werden schon ausgewertet. So das Zielsystem einen Namen zurückgibt. Wenn da nix kommt, ist der Erkenntnisgewinn = zero Die Analyse von Fehlerursachen / Störungen im Netz setzt ja mindestens voraus, dass ein valider Zustand vorliegt. Sprich elementare Fehlerquellen und Fremdgeräte schließe ich hier jetzt doch mal mit ein, ausgeschlossen werden können.

Insofern freue ich mich weiterhin auf konstruktive und damit hilfreiche Rückinfos. Eine Grundsatzdebatte über was wäre wenn und wie ging es noch würde ich allerdings nicht weiterverfolgen wollen.

Vielen Dank im Voraus und beste Grüße!

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13242

mikeeyy schrieb:

Die Informationen im DHCP werden schon ausgewertet. So das Zielsystem einen Namen zurückgibt. Wenn da nix kommt, ist der Erkenntnisgewinn = zero Die Analyse von Fehlerursachen / Störungen im Netz setzt ja mindestens voraus, dass ein valider Zustand vorliegt. Sprich elementare Fehlerquellen und Fremdgeräte schließe ich hier jetzt doch mal mit ein, ausgeschlossen werden können.

Ich verstehe nicht, was Du hier sagen willst - insbesondere der letzte Satz gibt mir Rätsel auf.

mikeeyy

(Themenstarter)

Anmeldungsdatum:
9. Oktober 2017

Beiträge: 5

um das ganze fachlich voranzutreiben...

folgendes funktioniert bislang

1
2
3
4
5
varip=$(ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1  -d'/')
echo $varip

vardhcp=$(grep dhcp-server-identifier /var/lib/dhcp/dhclient.eth0.leases | grep 'dhcp-server-identifier ' -A2 | tail -n1 | awk '{print $3}' | cut -f1  -d';')
echo $vardhcp

wie kann die letzte Ziffer der Rückgabe durch 0/24 ersetzt werden, um das Netz zu benennen?

mikeeyy

(Themenstarter)

Anmeldungsdatum:
9. Oktober 2017

Beiträge: 5

Die Lösung

ip addr | grep 'state UP' -A2 | awk '{print $2}' | sed '$!d;s/\.[0-9]*\//\.0\//'

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13242

mikeeyy schrieb:

ip addr | grep 'state UP' -A2 | awk '{print $2}' | sed '$!d;s/\.[0-9]*\//\.0\//'

Diese ganze Kombination von grep, awk und sed kann man wunderbar durch ein einziges awk-Skript ersetzen:

1
2
$ ip addr | awk '{if ((cnt-=1)==0) {sub(/[0-9]+\//, "0/", $2); print $2}} /state UP/ {cnt=2}'
192.168.173.0/24

☺

Hans9876543210

Anmeldungsdatum:
2. Januar 2011

Beiträge: 3741

Und sowas wie

1
sudo arp-scan -RN --localnet

ist nichts für dich?

Antworten |