Portscanner mit der Shell: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 1: | Zeile 1: | ||
| + | =/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= | |
| − | + | * Erstelle 'portscanner.sh' mit Aufruf: | |
| − | + | ** ./portscanner.sh <ZIEL> <START_PORT> [END_PORT] | |
| − | |||
| − | |||
| − | |||
| − | =Aufgabe | ||
| − | * Erstelle | ||
| − | ** ./portscanner.sh | ||
* Anforderungen: | * Anforderungen: | ||
** Wenn nur zwei Argumente übergeben werden, prüfe nur START_PORT. | ** Wenn nur zwei Argumente übergeben werden, prüfe nur START_PORT. | ||
| − | ** Nutze die Bash-/dev/tcp-Technik in einer Sub-Shell, z. B. | + | ** 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: | ** Ausgabe nur für offene Ports, exakt diese Zeile: | ||
| − | *** Auf dem Ziel: | + | *** Auf dem Ziel: <ZIEL> ist der Port: <PORT> offen |
| − | ** Script muss klein, lesbar und ohne externe Tools sein | + | ** Script muss klein, lesbar und ohne externe Tools sein (optional: 'timeout' gegen Hänger). |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
Version vom 6. November 2025, 19:40 Uhr
/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
- 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).