Passwort in Durchlauf eingeben

1358
Dhruv Chandhok

Das Szenario ist wie eine Liste von Root-Passwörtern. Aber ich möchte nicht manuell weiter versuchen. Also schrieb ich das Shell-Skript:

für ich in

tun

su - >> Ergebnis

erledigt

und mein ganzes Passwort steht in einer Datei "try.txt".

Jetzt an der Eingabeaufforderung tippe ich den Befehl:

bash p2.sh <Versuch.txt

Aber es zeigt Fehler: " Standard in muss tty sein"

Gibt es eine Möglichkeit, diese Kennwörter durch einige Codes oder Befehle einzugeben, ohne jeden von ihnen manuell einzugeben? Bitte geben Sie einen Kommandozeilenansatz anstelle einiger fortschrittlicher Hilfsprogramme an. Ich bin zum Lernen dabei. Vielen Dank :)

0

1 Antwort auf die Frage

1
MariusMatutiae

Die korrekte Syntax lautet:

 while read my_pass do  echo $my_pass | sudo -S command done < file_name 

Drei Kommentare: Sie können su nicht in einer Skriptdatei verwenden. Sie müssen Sudo mit der Option -S verwenden.

Die Option -S (stdin) bewirkt, dass sudo das Kennwort von der Standardeingabe anstelle des Endgeräts liest.

Zweitens: Wenn Sie den Dateinamen nicht in das Skript schreiben möchten, verwenden Sie eines der $ n-Argumente, z. B. $ 1, wenn dies der einzige übergebene Parameter ist.

Drittens: Sind Sie sicher, dass das Sammeln aller Passwörter in einer einzigen, unverschlüsselten Datei eine gute Idee ist?

Nein, definitiv keine gute Idee. In meinem College Campus Lab gibt es Computer mit unterschiedlichen Passwörtern, und wir werden aufgefordert, sie nicht zu ändern. Nun, da es 12-14 verschiedene Kennwörter gibt, möchte ich nicht manuell nacheinander versuchen. Also möchte ich, dass ich das funktionierende mit einem Skript testen kann. Idealerweise sollten sie kein Passwort behalten oder uns nur eine Liste der Computernummern geben. und das entsprechende Passwort, aber sie tun es nicht. Dhruv Chandhok vor 10 Jahren 0
Hoffe das klappt, ich werde es morgen in meinem Labor testen :) Dhruv Chandhok vor 10 Jahren 0
Ich konnte es heute nicht schaffen, aber ich habe das Gefühl, dass es funktionieren wird. Vielen Dank :) Dhruv Chandhok vor 10 Jahren 0