Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Si no podemos abrir el ordenador porque está embebido en una máquina más grande o
porque el acceso físico es complicado y no tenemos problemas en que se sepa que
estuvimos allí, podemos intentar reiniciar la memoria CMOS por software. Para ello
necesitaremos los privilegios suficientes en el Sistema Operativo que se esté ejecutando
en la máquina para poder acceder desde ahí a la BIOS y modificarla. En DOS y
sistemas operativos antiguos no había ninguna limitación de cara a escribir en los
puertos que hiciera falta y acceder directamente al hardware, por lo que se podían usar
técnicas como la típica de usar el debug.exe, un debugger en modo texto, y tratar de
escribir un byte en la memoria de la BIOS, con el objetivo de que en el siguiente
arranque dé un error de checksum y se reinicie a los valores por defecto. Si tenéis DOS
o Microsoft Windows 9x, podéis hacer la prueba ejecutando “debug.exe” y luego
escribiendo lo siguiente:
o 70 ff
o 71 17
q
o 70 2e
o 71 ff
q
C:\\BIOS\cmospwd-4.8\windows>ioperm.exe -i
C:\BIOS\cmospwd-4.8\windows>cmospwd_win.exe /h
http://www.cgsecurity.org/
Usage: cmospwd [/k[de|fr]] [/d]
cmospwd [/k[de|fr]] [/d] /[wlr] cmos_backup_file
write/load/res
tore
cmospwd /k kill cmos
cmospwd [/k[de|fr]] /m[01]* execute selected module
NB: For Award BIOS, passwords are differents than original, but work.
Después de cargar el driver, vemos con cmospwd /h las opciones que ofrece como
hacer un backup de la CMOS, volcarlo, borrar la memoria, etc. Si queremos quitar la
contraseña de la BIOS, deberemos elegir /k para borrar la memoria:
C:\BIOS\cmospwd-4.8\windows>cmospwd_win.exe /k
http://www.cgsecurity.org/
1 - Kill cmos
2 - Kill cmos (try to keep date and time)
0 - Abort
Choice : 1
Cmos killed!
C:\BIOS\cmospwd-4.8\windows>cmospwd_win.exe
http://www.cgsecurity.org/
Keyboard : US
Acer/IBM [ 7][!]
AMI BIOS []
AMI WinBIOS (12/15/93) []
AMI WinBIOS 2.5 [][][]
AMI ? [][7][][ ][]
Award 4.5x/6.0 [000100][000100][000100]
Award 4.5x/6.0 [000100][2000030][000100][000122]
Award Medallion 6.0 [000100][000100][000100][000100]
Award 6.0 [% ( "De][][password]
Compaq (1992) []
Compaq DeskPro [][?]
Compaq [][]
DTK [ % w][ % w ]
Phoenix A08, 1993 [][]
IBM (PS/2, Activa ...) [Q F][]
IBM Thinkpad boot pwd []
Thinkpad x20/570/t20 EEPROM [][]
Thinkpad 560x EEPROM [][ ]
Thinkpad 765/380z EEPROM [][ ]
IBM 300 GL [Q F]
Press a key to continue
Como suele ocurrir en estos casos, la mayoría de fabricantes de hardware hace sus
aplicaciones para DOS y/o MS Windows, por lo que los equivalentes en GNU/Linux
son escasos. De todas maneras, supongo que ejecutando como root o vía LKM unas
cuantas ioctl() podríamos hacer una herramienta similar a cmospwd. Su programación
queda como ejercicio para el lector O:-D
Hay otro fabricante, desarrollador de bios como Award, que tiene una master password,
la cual, es SY_MB
cmospwd [/d]
cmospwd [/d] /[rlw] cmos_backup_file restura/carga/escribe
cmospwd /k borra la cmos
cmospwd /m[01]* ejecuta el módulo seleccionado
Otro método desde windows arrancado en modo Debug, es resetear el cmos CRC que
está en 0x2E-0x2F para esto ejecutamos un consola (CMD) y escribimos:
Debug
-o 70 2E
-o 71 0
-q
Bios Award 4.5x en placas base DFI, clave master = Y. C. Lu (entre la Y. y C. y Lu hay
un espacio)