Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.04.14;
Скачать: [xml.tar.bz2];

Вниз

Сигмент : Смещение   Найти похожие ветки 

 
Демонов Е.В.   (2003-03-31 04:20) [0]

Люжи подскажите как просщитать адрес в файле F000:EC60 если его длина 262144=40000h байта. Т.Е. как перевести адрес F000:EC60 в смещение от начала файла. Я думал что так F000:EC60=(F000 lsh 4)+EC60=FEC62h от начала файла - но это больше чем размер файлы.

Как ????????/!!!!!!!!!!!!!!1


 
Palladin   (2003-03-31 04:30) [1]

это не из MAP файла?


 
Демонов Е.В.   (2003-03-31 04:49) [2]

>>Palladin
Нет это просто физический файл. Если точнее то это BIOS V.60


 
Демонов Е.В.   (2003-03-31 06:35) [3]

Может и мне кто поможет ?


 
Думкин   (2003-03-31 07:45) [4]

Может спутал чего?
Ведь последний байт в файле будет иметь смещение
4000:0000.
Да и вспомнив старый ДОС(с 1 мегом памяти) - вспомним один из аресов: FFFF:FFFF.
Это вроде в конце(а там 1 мег) - указанный тобой недалеко ушел.
Или ты о чем-то ином толкуешь?


 
Демонов Е.В.   (2003-03-31 08:17) [5]

Да нет.

Нужно в BiOS Универсальный пароль прошить . Делаю по статье которую в инете нашел. А Там сказано :
Инженерный пароль хранится не в CMOS, а в BIOS по адресу F000:EC60h либо по смещению 1EC60h от начала файла ORIGINAL.TMP - распакованной "прошивки" BIOS


 
Думкин   (2003-03-31 08:32) [6]


> Демонов Е.В. © (31.03.03 08:17)

Так вот - ты вроде по-русски и написал все.
Адрес БИОс - одно, смещение в файле - другое. Они несколько отличаются.


 
Демонов Е.В.   (2003-03-31 08:46) [7]

>>Думкин © (31.03.03 08:32)
А вто что далее пишется :

Пароль хранится в зашифрованном виде в строке длиной 8 байт по адресу F000:EC60h (если пароль короче 8 байт, неиспользуемые байты равны 0), признаком нового формата является наличие байта 14h по адресу F000:EC68h).

В принципе, можно самоcтоятельно зашифровать какой-нибудь пароль (например, тот же "AWARD_SW"), вписать его в распакованную "прошивку" BIOS"а и перезаписать Flash-BIOS, но подобные эксперименты сопряжены с определенным риском.

Из чего я делаю вывод что адрес F000:EC68h адресуется в распакованной прошивке


 
Демонов Е.В.   (2003-03-31 10:13) [8]

Ну, я жду


 
Digitman   (2003-03-31 10:38) [9]


> Люжи подскажите как просщитать адрес в файле F000:EC60


да чего там считать-то ?

EC60 - это и будет абс.смещение в файле, содержащем образ BIOS ROM, соответствующее абс.адресу F000:EC60


 
Anatoly Podgoretsky   (2003-03-31 10:42) [10]

Ну так ты читать умеешь?
"по смещению 1EC60h от начала файла ORIGINAL.TMP"


 
NetBreaker666   (2003-03-31 12:08) [11]


> Пароль хранится в зашифрованном виде в строке длиной 8 байт
> по адресу F000:EC60h (если пароль короче 8 байт, неиспользуемые
> байты равны 0), признаком нового формата является наличие
> байта 14h по адресу F000:EC68h).

Если это AWARD BIOS, то пароль нигде не храниться. Хранится только CRC сумма, ее можна получить так (не под виндой и не под NT)
var _CRC:Word;
asm
mov dx,070h
mov al,01dh
out dx,al
inc dx
in al,dx
mov byte ptr _CRC+1,al
dec dx
mov al,01ch
out dx,al
inc dx
in al,dx
mov byte ptr _CRC,al
End;

А вообще держите мой подборщик паролей. Делал давно, но работает даже на самых новых версиях биоса (TMT Pascal). В параметре передаете какие символы использовать (Обычно хватает 4х-5-и штук, если введете например 10 - до сгенерит дохрена паролей, все они будут работать. Если ничего не указвать, то подбирает используя весь англ. алфавит).


Program AWARD_BIOS_FUCKER_V_1_0_0;
uses strings,crt;
var _CRC:Word;
NOS:Byte;
F:Text;
const SS:String="abcdefghijklmnopqrstuvwxyz0123456789";

Procedure RecGen(CRC:Word;CurStr:String[8]);
var curs:Byte;
CurCRC:Word;
Begin
If CurStr[0]>#7 then Exit;
for curs:=1 to NOS do Begin
CurCRC:=CRC-Ord(SS[curs]);
CurStr:=SS[curs]+CurStr;
If CurCRC=0 then WriteLn(F,CurStr) else
Begin
Asm
mov ax,CurCRC
ror ax,2
mov CurCRC,ax
End;
RecGen(CurCRC,CurStr);
End;
Delete(CurStr,1,1);

End;

End;

Var C:Char;
Begin
WriteLn("Award BIOS password recovery.");
WriteLn("Copyright by NetBreaker666[AWD]<SP666> (Lisin Svjatoslav, St.Petersburg,Russia)");
WriteLn("SV.666 - Supervisor passwords, USER.666 - User passwords");
Writeln;
If ParamStr(1)<>"" then SS:=ParamStr(1) Else
Begin
Writeln("Warning: First parametr is empty !");
Writeln("I gonna try to guess password using symbols: ""+SS+"" .");
Writeln("You gonna wait ...");
While ((UpCase(C)<>"Y") And (UpCase(C)<>"N")) Do
Begin
Writeln("Continue (Y/N) ?");
C:=ReadKey;
End;
If UpCase(C)="N" Then Halt;
End;
NOS:=Length(ss);
Assign(F,"SV.666");
ReWrite(F);
asm
mov dx,070h
mov al,01dh
out dx,al
inc dx
in al,dx
mov byte ptr _CRC+1,al
dec dx
mov al,01ch
out dx,al
inc dx
in al,dx
mov byte ptr _CRC,al
End;

If _CRC<>$FFFF then RecGen(_CRC,"") else WriteLn("Supervisor password doesn""t exist");

Close(F);
WriteLn("Supervisor CRC="+IntToHex(_CRC,4)+"h");
Assign(F,"user.666");
ReWrite(F);

asm
mov dx,070h
mov al,061h
out dx,al
inc dx
in al,dx
mov byte ptr _CRC+1,al
dec dx
mov al,060h
out dx,al
inc dx
in al,dx
mov byte ptr _CRC,al
End;

If _CRC<>$FFFF then RecGen(_CRC,"") else WriteLn("User password doesn""t exist");
WriteLn("User CRC="+IntToHex(_CRC,4)+"h");
Close(F);

End.


--- >>Golded... If You wanna create somethin" better - connect with me!
* Origin: Чем бы дитя ни тешилось, лишь бы отдача не замучала (2:5030\977.52).



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.04.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.008 c
1-44155
lex01
2003-04-03 16:00
2003.04.14
как получить значение ключа реестре


14-44448
Sils
2003-03-29 08:58
2003.04.14
святой набор


1-44228
Danger
2003-04-02 00:28
2003.04.14
Поиск в Richedit


7-44484
NetKnight
2002-12-04 16:06
2003.04.14
Program Shortcut ?


1-44246
Spartak
2003-04-02 08:11
2003.04.14
Как убрать кавычки с начала и конца строки ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский