Portscanner mit der Shell: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „=Kurzcheck: /dev/tcp in Sub-Shell= * '''bash -c ">/dev/tcp/$ZIEL/$I"''' — öffnet eine TCP-Verbindung zum Zielport. **Wahr** * Die Umleitung '''>/dev/tcp/...…“) |
|||
| Zeile 1: | Zeile 1: | ||
| − | = | + | |
| + | =Schnell & exakt: /dev/tcp in Sub-Shell= | ||
* '''bash -c ">/dev/tcp/$ZIEL/$I"''' — öffnet eine TCP-Verbindung zum Zielport. **Wahr** | * '''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** | * 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** | * 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** | * '''>/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)= | =Aufgabe (knapp)= | ||
Version vom 6. November 2025, 19:38 Uhr
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.)