Mainboards, BIOS, Prozessoren, RAM 27.268 Themen, 123.676 Beiträge

BIOS-Passwort vergessen

mi~we / 8 Antworten / Flachansicht Nickles

Hallo Leute, bei meinem IBM T20 Notebook habe ich leider das Passwort verlegt und kann keine Änderungen mehr vornehmen. Wer weiß eine Möglichkeit das Passwort im BIOS zu umgehen bzw. zu löschen? Vielen Dank

"Es wäre dumm, sich über die Welt zu ärgern. Sie kümmert sich nicht darum." (Marc Aurel)
bei Antwort benachrichtigen
@Rika SecretGate
Rika SecretGate „@Rika“
Optionen

SO geht's z.B. in Pascal für Award-BIOSe.

program biospasswort;
var a :array[1..6]of byte;
b,c:longint;
procedure berechnung;
begin
a[1]:=trunc((b-10912)/1024);
b:=b-1024*a[1];
a[2]:=trunc((b-2720)/256);
b:=b-256*a[2];
a[3]:=trunc((b-672)/64);
b:=b-64*a[3];
a[4]:=trunc((b-160)/16);
b:=b-16*a[4];
a[5]:=trunc((b-32)/4);
a[6]:=b-4*a[5];
end;
procedure ausgabe;
begin
for b:=1to 6do
write('#',a[b]:2,' ');
writeln;
for b:=1to 6do
write(' ',chr(a[b]),' ');
writeln;
end;
begin
writeln ('Passwörter des AWARD-BIOS');
writeln('Ver. 4.51 - und evtl. andere');
writeln;
port[$70]:=28;
b:=port[$71];
port[$70]:=29;
c:=port[$71];
b:=b+256*c+65535;
writeln('Eingabe mit ALT+Wert');
berechnung;
writeln ('SUPERVISOR- Passwort:');
ausgabe;
port[$70]:=77;
b:=port[$71];
port[$70]:=78;
c:=port[$71];
b:=b+256*c+65535;
berechnung;
writeln ('USER -Passwort:');
ausgabe;
end.


Basiert einfach darauf, dass, wenn du direkten Zugriff auf die Ports 70h und 71h bekommst, du beliebig im CMOS lesen und schreiben kannst. Bei DOS geht das direkt, bei Windows muss man a bissl mehr rumhantieren, weil man da einen Device-Treiber dafür schreiben muss.

Sowohl beim Supervisor-Passwort als auch beim User-Passwort werden nur CRC32-Summen errechnet und an fest definierten Positionen im CMOS hinterlegt. Jeweilis unter AMI/Phoenix und Award in allen BIOS-Versionen immer an der gleichen Stelle, es sei denn, der Mainboardhersteller pfuscht etwas drin herum. Das ist nur bei ASUS und Notebooks generell der Fall.

Jetzt hat man also folgenden Möglichkeiten:
1. CMOS komplett löschen. - Man verliert alle Einstellungen, brauch aber nicht mal die Version des BIOSes zu kennen. Schließt aber auf jeden Fall 3. ein.
2. Passwort lesen und decodieren (CRC32 -> lächerlich). Nachteil: Man muss die BIOS-Version und den Hersteller kennen - aber da es in aller Regel nur 5 mögliche Positionen gibt, kann man also 5 Passwörter errechnen und eines davon wird mit Sicherheit funzen.
3. Die CRC32-Checksumme des Passwortes im CMOS auf 00000000h setzen. Entspricht einem leeren Passwort bzw. Passwort deaktiviert. Nachteil: Auch hier kann es dazu kommen, dass man statt des Passworts irgendwelche Einstellungen überschreibt.

Das CRC32 als Hash-Funktion nicht eindeutig dekodierbar ist, wirst du aber kaum das originale Passwort rausfinden können - sondern nur welche, die genau die gleiche CRC32-Summe erzeugen. Mit denen gibt sich das BIOS aber logischerweise auch zufrieden.

Aus dem Prinzip wird auch klar, warum die legendären Masterpasswörter realtiv wenig nützen - das sind einfach nur Passwörter, die, mit Hilfe eines solchen Programms erzeugt, genau die gleichen CRC32-Summen erzeugen wie die von Herstellern vordefintierten Passwörter, für den Fall, dass überhaupt eins vordefiniert ist. Es gibt Abermillionen solcher Codes, und die Masterpasswörter sind solche, die sich sehr einfach merken lassen. CRC32(AWARD_SW)=CRC32(lkwpeter) :-)

Wenn du also sleber ein Passwort definiert hast und es vergessen hast, werden dir die Masterpasswörter absolut nichts nützen.

bei Antwort benachrichtigen