Portscanner mit der Shell
Version vom 6. November 2025, 19:38 Uhr von Thomas.will (Diskussion | Beiträge) (→Kurzcheck: /dev/tcp in Sub-Shell)
Schnell & exakt: /dev/tcp in Sub-Shell
- bash -c ">/dev/tcp/$ZIEL/$I" — öffnet eine TCP-Verbindung zum Zielport. **Wahr**
- Die Umleitung >/dev/tcp/... wird in der aktuellen Shell ausgeführt. **Falsch**
- Mit bash -c ">/dev/tcp/$ZIEL/$I" > /dev/null 2>&1 siehst du keine "Connection refused"-Fehler in der äußeren Shell. **Wahr**
- >/dev/tcp/... ist POSIX-standard und in jeder Shell verfügbar. **Falsch**
Aufgabe (knapp)
- Erstelle portscanner.sh mit Aufruf:
- ./portscanner.sh <ZIEL> <START_PORT> [END_PORT]
- Anforderungen:
- Wenn nur zwei Argumente übergeben werden, prüfe nur START_PORT.
- Nutze die Bash-/dev/tcp-Technik in einer Sub-Shell, z. B. bash -c ">/dev/tcp/$ZIEL/$PORT" und unterdrücke Ausgabe/Fehler mit > /dev/null 2>&1.
- Ausgabe nur für offene Ports, exakt diese Zeile:
- Auf dem Ziel: <ZIEL> ist der Port: <PORT> offen
- Script muss klein, lesbar und ohne externe Tools sein. (Optional: timeout gegen Hänger.)
Aufgabe (knapp)
- Schreibe portscanner.sh mit Aufruf:
- ./portscanner.sh <ZIEL> <START_PORT> [END_PORT]
- Anforderungen:
- Wenn nur zwei Argumente, prüfe nur START_PORT.
- Nutze die Bash-/dev/tcp-Technik in einer Sub-Shell, z. B. bash -c ">/dev/tcp/$ZIEL/$PORT" und unterdrücke Ausgabe/Fehler mit > /dev/null 2>&1.
- Gib nur für offene Ports genau diese Zeile aus:
- Auf dem Ziel: <ZIEL> ist der Port: <PORT> offen
- Script muss klein, lesbar und ohne externe Tools sein. (Optional: timeout gegen Hänger.)