الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برنامج بسيط لكشف كلمة سر البيوس

بدأه kotaiba في 13 مايو 2008 · 7 رد · 3,928 مشاهدة · في نظام تشغيل Windows
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

برنامج بسيط وفعال لكشف كلمة سر البيوس

أو عمل Kill CMOS وتفريغ ذاكرة البيوس

397701df7e.jpg

عند اختيار Show Password

ستظهر لائحة كالتالي وتكون كلمة السر مكان المستطيل المحدد

f2c6897824.jpg

وعند اختيار Kill CMOS ستظهر لائحة باختيار ما بين محي كامل أو إبقاء التاريخ والوقت

http://up.raff3.com/download.php?filename=e94f293647.rar

#2

رائع الله يعطيك العافية..

جاري التجريب..

بس سؤال .زما هي اللغة المستخدمة ..

الله معك

#3
اقتباس
زما هي اللغة المستخدمة ..

يمكنك استخدام PEiD , مع اني ارجح انها Assembly

هذا كود VB في إحدى المكتبات يقوم بإحضار بعض المعلومات عن BIOS :

'ضع الكود التالي في Classe جديدة باسم BiosData
Dim isNT As Boolean

Public Property Get VideoBiosDate() As String
	If isNT Then
	   VideoBiosDate = GetRegistryValue(HKLM, "Hardware\Description\System", "VideoBiosDate", "")
	Else
'	   VideoBiosDate = Mid(StrFromPtrA(&HC00A8), 1, 8) '-Date build
	   VideoBiosDate = Mid(StrFromPtrA(&HC00A8), 9, 8) '-Date revision
	End If
End Property

Public Property Get VideoBiosVersion() As String
	Dim s As String
	If isNT Then
	   s = GetRegistryValue(HKLM, "Hardware\Description\System", "VideoBiosVersion", "")
	Else
	   s = StrFromPtrA(&HC0048)
	   s = Left(s, InStr(1, s, vbCrLf) - 1)
	   s = s & vbCrLf & "ChipType: " & GetRegistryValue(HKLM, "System\CurrentControlSet\Services\Class\Display\0000\INFO", "ChipType", "")
	End If
	VideoBiosVersion = s
End Property

Public Property Get VideoBiosCopyRight() As String
	Dim s As String
	If isNT Then
	   s = "Unavailable on NT"
	Else
	   s = StrFromPtrA(&HC0048)
	   s = Mid$(s, InStr(1, s, vbCrLf) + 2)
	End If
	VideoBiosCopyRight = s
End Property

Public Property Get SystemBiosDate() As String
	If isNT Then
	   SystemBiosDate = GetRegistryValue(HKLM, "Hardware\Description\System", "SystemBiosDate", "")
	Else
	   SystemBiosDate = StrFromPtrA(&HFFFF5)
	End If
End Property

Public Property Get SystemBiosCopyRight() As String
	If isNT Then
	   SystemBiosCopyRight = "Unvailable on NT"
	Else
	   SystemBiosCopyRight = StrFromPtrA(&HFE091)
	End If
End Property

Public Property Get SystemBiosVersion() As String
	Dim vAns As Variant

	If isNT Then
		On Error Resume Next
	  SystemBiosVersion = CDate(GetRegistryValue(HKLM, "Hardware\Description\System", "SystemBiosVersion", ""))
		If Err.Number > 0 Then SystemBiosVersion = "Unavailable"

	Else
	  SystemBiosVersion = StrFromPtrA(&HFE061)
	End If
End Property

Public Property Get SystemBiosExtraInfo() As String
	If isNT Then
	   SystemBiosExtraInfo = "Unvailable on NT"
	Else
	   SystemBiosExtraInfo = StrFromPtrA(&HFEC71)
	End If
End Property

Private Sub Class_Initialize()
   isNT = IsWindowsNT
End Sub

'ضع الكود التالي في Module
Private Type OSVERSIONINFO
	dwOSVersionInfoSize As Long
	dwMajorVersion As Long
	dwMinorVersion As Long
	dwBuildNumber As Long
	dwPlatformId As Long
	szCSDVersion As String * 128
End Type
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (LpVersionInformation As OSVERSIONINFO) As Long

Public Declare Function CopyStringA Lib "kernel32" Alias "lstrcpyA" (ByVal NewString As String, ByVal OldString As Long) As Long
Public Declare Function lstrlenA Lib "kernel32" (ByVal lpString As Long) As Long

Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (dest As Any, source As Any, ByVal numBytes As Long)

Private Const KEY_READ = &H20019

Private Const REG_SZ = 1
Private Const REG_EXPAND_SZ = 2
Private Const REG_BINARY = 3
Private Const REG_DWORD = 4
Private Const REG_MULTI_SZ = 7

Private Const ERROR_MORE_DATA = 234
Private Const ERROR_SUCCESS = 0&

Private Const MAX_SIZE = 2048
Public Const HKLM = &H80000002

Public Function IsWindowsNT() As Boolean
   Dim verinfo As OSVERSIONINFO
   verinfo.dwOSVersionInfoSize = Len(verinfo)
   If (GetVersionEx(verinfo)) = 0 Then Exit Function
   If verinfo.dwPlatformId = 2 Then IsWindowsNT = True
End Function

Public Function StrFromPtrA(ByVal lpszA As Long) As String
   Dim s As String
   s = String(lstrlenA(lpszA), Chr$(0))
   CopyStringA s, ByVal lpszA
   StrFromPtrA = TrimNULL(s)
End Function

Private Function TrimNULL(ByVal str As String) As String
	If InStr(str, Chr$(0)) > 0& Then
		TrimNULL = Left$(str, InStr(str, Chr$(0)) - 1&)
	Else
		TrimNULL = str
	End If
End Function

Public Function GetRegistryValue(ByVal hKey As Long, ByVal KeyName As String, _
	ByVal ValueName As String, Optional DefaultValue As Variant) As Variant
	Dim handle As Long
	Dim resLong As Long
	Dim resString As String
	Dim resBinary() As Byte
	Dim length As Long
	Dim retVal As Long
	Dim valueType As Long
	GetRegistryValue = IIf(IsMissing(DefaultValue), Empty, DefaultValue)
	If RegOpenKeyEx(hKey, KeyName, 0, KEY_READ, handle) Then
		Exit Function
	End If
	length = MAX_SIZE
	ReDim resBinary(0 To length - 1) As Byte
	retVal = RegQueryValueEx(handle, ValueName, 0, valueType, resBinary(0), length)
	If retVal = ERROR_MORE_DATA Then
		ReDim resBinary(0 To length - 1) As Byte
		retVal = RegQueryValueEx(handle, ValueName, 0, valueType, resBinary(0), length)
	End If
	Select Case valueType
		Case REG_DWORD
			CopyMemory resLong, resBinary(0), 4
			GetRegistryValue = resLong
		Case REG_SZ, REG_EXPAND_SZ
			resString = Space$(length - 1)
			CopyMemory ByVal resString, resBinary(0), length - 1
			GetRegistryValue = resString
		Case REG_BINARY
			If length <> UBound(resBinary) + 1 Then
				ReDim Preserve resBinary(0 To length - 1) As Byte
			End If
			GetRegistryValue = resBinary()
		Case REG_MULTI_SZ
			resString = Space$(length - 2)
			CopyMemory ByVal resString, resBinary(0), length - 2
			GetRegistryValue = resString
		Case Else
			RegCloseKey handle
	End Select
	RegCloseKey handle
End Function


'ضع الكود التالي في Form
'add Combo1
'add Label1

Dim BD As BiosData

Private Sub Combo1_Click()
   Select Case Combo1.ListIndex
		  Case 0
			   Label1 = BD.SystemBiosDate
		  Case 1
			   Label1.Caption = BD.SystemBiosVersion
		  Case 2
			   Label1 = BD.SystemBiosCopyRight
		  Case 3
			   Label1 = BD.SystemBiosExtraInfo
		  Case 4
			   Label1 = BD.VideoBiosDate
		  Case 5
			   Label1 = BD.VideoBiosVersion
		  Case 6
			   Label1 = BD.VideoBiosCopyRight
   End Select
End Sub

Private Sub Form_Load()
  Caption = "Bios Information"
  Set BD = New BiosData
  With Combo1
	  .AddItem "SystemBiosDate"
	  .AddItem "SystemBiosVersion"
	  .AddItem "SystemBiosCopyRight"
	  .AddItem "SystemBiosExtraInfo"
	  .AddItem "VideoBiosDate"
	  .AddItem "VideoBiosVersion"
	  .AddItem "VideoBiosCopyRight"
  End With
  Combo1.ListIndex = 0
End Sub

كما ان هناك برنامج اسمه BIOS Agent يعطيك معلومات عن BIOS

وجزاك الله خيرا

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

#4

الواجهة فقط من تصميمي حتى لا يلتبس الأمر

البرنامج الأصلي يحتاج الدخول للدوز وكتابة بعض الأوامر و الواجهة تقوم بذلك

#6

بعض مضادات الفيروس ترى الملفين

0.exe

1.exe

تروجانات

لكنها ملفات سليمة

سبب هذه المشكلة أن الملفين تحويل من bat إلى exe

وهي أغلب الطرق المألوفة لصناعة الفيروسات وعلى كل الكاسبر ما اعتبرهم فيروسات

#7

ماهو

BIOS

وايضا

يمكنك استخدام PEiD ؟؟؟

#8
اقتباس
ماهو

BIOS

وايضا

يمكنك استخدام PEiD ؟؟؟

BIOS : اختصار Basic Input/Output System ,,, ومعناه نظام الإدخال والإخراج الأساسي .

وهو ينظم عمليات التعامل مع العتاد الخاص بالجهاز , ويكون برنامج البيوس مخزنا على رقاقة ROM لا تفقد بياناتها حتى بعد انقطاع التيار الكهربائي عنها

(باختصار)

وهذه صورة له :

AwardBIOS_CMOS_Setup_Utility.png

وهو يتحكم في عمليات الإقلاع والأجهزة وغيرها , وله كتب متخصصة تشرحه , منها :

http://abooks.tipsclub.com/index.php?act=view&id=281

وهذا موضوع عربي عن BIOS :

http://www.swalif.net/softs/swalif48/softs3014/

وهذا مقال عنه :

http://en.wikipedia.org/wiki/BIOS

بالنسبة للـ PEid , هو برنامج يستعمل لمعرفة معلومات عن البرامج الاخرى , مثل لغة البرمجة التي صمم بها , وهل هو مضغوط أم لا ... إلخ , ويستخدمه بكثرة خبراء البرمجة العكسية .

يمكنك تحميل البرنامج من الرابط التالي :

http://www.peid.info/files/PEiD-0.94-20060510.zip

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

مواضيع مشابهة