 |
แกะรหัสผ่าน Access from PHP,C, VB6 เผื่อใครจำพาสเวอร์ดไม่ได้นะครับบบ |
|
 |
|
|
 |
 |
|
แกะรหัสผ่าน Access from PHP,C, VB6 เผื่อใครจำพาสเวอร์ดไม่ได้นะครับบบ
PHP
Code (PHP)
<?php
<html>
<head><title>Access Password Recovery</title></head>
<body bgcolor="#CCCCCC">
<h2>* Access Password Recovery *</h2>
<form method="post">
<b>URL : </b><input type="text" name="mdb" size="50">
<input type="submit" value=" OK "><br>
<b>Example : </b>http://www.target.com/member/user.mdb<br>
</form>
<?
error_reporting(FATAL | ERROR);
$code97 = array(0x86, 0xFB, 0xEC, 0x37, 0x5D, 0x44, 0x9C, 0xFA, 0xC6, 0x5E, 0x28, 0xE6, 0x13);
$code2k = array(0xA1, 0xEC, 0x7A, 0x9C, 0xE1, 0x28, 0x34, 0x8A, 0x73, 0x7B, 0xD2, 0xDF, 0x50);
$data = array(99);
$mdb = $_POST['mdb'];
$mdb = "2000.mdb";
if ($mdb == "") exit;
$fp = fopen($mdb, "rb");
if (!$fp) {
echo "<b>Error : </b>Can't open '$mdb'";
exit;
}
echo "<b>URL : </b>$mdb<br>";
for($c = 0; $c < 99; $c++)
$data[$c] = ord(fgetc($fp));
fclose($fp);
$ver = $data[0x14];
$encflag = $data[0x62];
echo "<b>Version : </b>";
if( $ver < 1) {
printf("97<br><b>Password : </b>");
if (($data[0x42] ^ $code97[0]) == 0)
printf("(none)");
else
for($i = 0; $i < 13; $i++)
printf("%c", $data[$i+0x42] ^ $code97[$i]);
} else {
printf("2000, 2002<br><b>Password : </b>");
for($i = 0; $i < 13; $i++) {
if($i % 2 == 0)
$c = 0x13 ^ $encflag ^ $data[$i*2+0x42] ^ $code2k[$i];
else
$c = $data[$i*2+0x42] ^ $code2k[$i];
printf("%c", $c);
}
}
?>
?>
C
Code (C#)
#include <stdio.h>
#include <stdlib.h>
FILE *filemdb;
char code2k[13] = {0xA1,0xEC,0x7A,0x9C,0xE1,0x28,0x34,0x8A,0x73,0x7B,0xD2,0xDF,0x50};
char code97[13] = {0x86,0xFB,0xEC,0x37,0x5D,0x44,0x9C,0xFA,0xC6,0x5E,0x28,0xE6,0x13};
char mdb[50], str[26], ver, encflag, c;
int i;
int main() {
clrscr();
strcpy( mdb,"97.mdb");
filemdb=fopen( mdb,"rb");
if(filemdb == NULL) {
printf("Can't open %s file", mdb);
exit(1);
}
printf("MDB File : %s\n", mdb);
fseek(filemdb, 0x14, SEEK_SET);
ver = fgetc(filemdb);
fseek(filemdb, 0x62, SEEK_SET);
encflag = fgetc(filemdb);
fseek(filemdb, 0x42, SEEK_SET);
fread(str, sizeof(str) - 1, 1, filemdb);
fclose(filemdb);
printf("Version : ");
if(ver < 1) {
printf("97\nPassword : ");
if ((str[0]^code97[0]) == 0)
printf("(none)\n");
else {
for(i = 0; i < 13; i++)
printf("%c", str[i]^code97[i]);
printf("\n");
}
} else {
printf("2000, 2002\nPassword : ");
for(i = 0; i < 13; i++) {
if(i % 2 == 0)
c = 0x13^encflag^str[i*2]^code2k[i];
else
c = str[i*2]^code2k[i];
printf("%c", c);
}
}
getch();
}
VB6
Code (VB.NET)
Private Sub Dir1_Change() ' DirListBox
File1.Path = Dir1.Path
End Sub
Private Sub Drive1_Change() 'DriveListBox
On Error Resume Next
Dir1.Path = Drive1.Drive
End Sub
Private Sub File1_Click() 'FileListBox
Dim filemdb As String
Dim code97(13) As Integer
Dim code2k(13) As Integer
Dim str As String
Dim ver As Integer
Dim encflag As Integer
Dim i As Integer
Dim c As Integer
Dim pc As String
Dim version As String
Dim password As String
code97(1) = &H86
code97(2) = &HFB
code97(3) = &HEC
code97(4) = &H37
code97(5) = &H5D
code97(6) = &H44
code97(7) = &H9C
code97(8) = &HFA
code97(9) = &HC6
code97(10) = &H5E
code97(11) = &H28
code97(12) = &HE6
code97(13) = &H13
code2k(1) = &HA1
code2k(2) = &HEC
code2k(3) = &H7A
code2k(4) = &H9C
code2k(5) = &HE1
code2k(6) = &H28
code2k(7) = &H34
code2k(8) = &H8A
code2k(9) = &H73
code2k(10) = &H7B
code2k(11) = &HD2
code2k(12) = &HDF
code2k(13) = &H50
filemdb = Dir1.Path & "\" & File1.FileName
Open filemdb For Binary As #1
str = Space$(1)
Get #1, &H14 + 1, str
ver = Val(Asc(str))
Get #1, &H62 + 1, str
encflag = Val(Asc(str))
str = Space$(26)
Get #1, &H42 + 1, str
Close #1
password = ""
If (ver < 1) Then
version = "Access 97"
c = Val(Asc(Mid$(str, 1, 1)))
If ((c Xor code97(1)) = 0) Then
password = "(none)"
Else
For i = 1 To 13
c = Val(Asc(Mid$(str, i, 1)))
password = password & Chr$(c Xor code97(i))
Next
End If
Else
version = "Access 2000,2002"
For i = 1 To 13
c = Val(Asc(Mid$(str, (i * 2) - 1, 1)))
If (i Mod 2 = 0) Then
pc = c Xor code2k(i)
Else
pc = &H13 Xor encflag Xor c Xor code2k(i)
End If
password = password & Chr$(pc)
Next
End If
MsgBox "File Name : " & File1.FileName & vbCr & _
"Version : " & version & vbCr & _
"Password : " & password, , "Password"
End Sub
Tag : - - - -
|
|
 |
 |
 |
 |
Date :
2009-09-10 14:59:59 |
By :
Sek-Artdrinker |
View :
4667 |
Reply :
13 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แหล่มเลย 
|
 |
 |
 |
 |
Date :
2009-09-10 15:04:53 |
By :
lozomac |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
 |
 |
 |
 |
Date :
2009-09-10 15:19:40 |
By :
gummezaka |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แทงยู 
|
 |
 |
 |
 |
Date :
2009-09-10 15:37:56 |
By :
plakrim |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
 |
 |
 |
 |
Date :
2009-09-10 15:38:33 |
By :
nilas |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณด้วยคนครับ
|
 |
 |
 |
 |
Date :
2009-09-10 16:06:22 |
By :
zepherus |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แทงเฉยๆ แทงได้ครับ แต่อย่าแทงข้างหลังผมนะครับ เดี๋ยวมันจะทะลุถึงหัวใจ
55555555555555
|
 |
 |
 |
 |
Date :
2009-09-10 16:23:23 |
By :
Sek-Artdrinker |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ว้าาวววววว 
|
 |
 |
 |
 |
Date :
2009-09-10 16:44:26 |
By :
panyapol |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แกะได้จริงป่ะ มีใครลองยัง ทำไมผมแกะไม่ได้ ของ PHP
|
 |
 |
 |
 |
Date :
2009-09-10 17:10:09 |
By :
deawx |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
<?php
$mdb = "D:\Work_Program\Database\b.mdb"; // ใส่ path file ครับ
?>
ได้นะครับ
|
 |
 |
 |
 |
Date :
2009-09-10 17:58:45 |
By :
Sek-Artdrinker |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณครับ แต่ code php บรรทัดที่ 20
$mdb = "2000.mdb";
ดูเหมือนจะเกินมานะครับ เพราะมันแจ้ง error "file 2000.mdb not found"
แต่ถ้าลบบรรทัดนี้ทิ้งก็ทำงานได้
|
 |
 |
 |
 |
Date :
2010-08-22 12:28:29 |
By :
polngpole |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ถ้าจะแกะโค้ด vba ใน acess ที่เค้าทำเป็นโปรมแกรม จะแกะได้ไมค่ะ
|
 |
 |
 |
 |
Date :
2011-01-20 16:08:47 |
By :
nunan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|