Access 密碼破解原理- -
??????????????????????????????????????
???? 今天風雨無阻告知偶ACCESS數據庫的密碼極容易被破,使用網上流行的工具,不管你的密碼多少位很快就能被破出來。偶原以為ACCESS與WORD EXCEL一樣,作為MS OFFICE的套件,一樣采用DES加密,非破暴力破解不可。密碼倍數越長越難破。結果,一試,果然很快被破出來。
??? 經查詢,原來ACCESS加密過于簡單。如下:
??? 在庫文件的地址00000042處開始的40個字節是Access 2000庫的密碼位。如果一個未加密的庫,這40個字節原始數據依次為:29 77 EC 37 F2 C8 9C FA 69 D2 28 E6 BC 3A 8A 60 FB 18 7B 36 5A FE DF B1 D8 78 13 43 60 23 B1 33 9B ED 79 5B 3D 33 3D 39 7C 2A 。當你給數據庫設置了密碼后,這40個字節就變成了密鑰。因此,要破解密碼而不需保持原庫的密碼,只要將00000042 處開始的40個字節還原成原始數據就行了,從而跳過口令。
另外,當你設置了密碼后,Access 2000 就將你的密碼的ASCII碼與以上的40個字節數據進行異或操作,因此,從庫文件的地址00000042開始的40個字節就變成了密鑰了。例如,如果你設置的密碼為12345678901234567890(注意:最多只能設20個ASCII字符),經過異或操作后,則從00000042處開始的40個字節的數據就變成了 18 77 DE 37 C1 C8 A8 FA 5C D2 1E E6 8B 3A B2 60 C2 18 4B 36 6B FE ED B1 EB 78 27 43 55 23 87 33 AC ED 41 5B 04 39 4C 2A 。大家都知道,一個數據經過一次異或操作后,再一次經過同樣的異或操作就可還原了。因此,對已經設置了密碼的Access 2000庫,只要將40個密鑰數據與原始的40個數據進行一次異或操作就可得到密碼了。
??? 最后,要注意的是,由于ACCESS 2000對每個密碼字符采用雙字節表示,故40個字節原始數據可依次分為20組,每組代表一個密碼字符,進行異或操作的是每組的第一個字節,第二個字節不變。