MySQL數據庫用戶密碼和其他數據庫用戶密碼壹樣,以明文形式出現在應用系統代碼中,獲得文件讀取權限後可以直接從數據庫連接文件中讀取,如asp代碼中的conn.asp數據庫連接文件,壹般包含數據庫類型、物理位置、用戶名、密碼等信息;在MySQL中,即使獲取了某個用戶的數據庫用戶(root用戶除外)的密碼,也只能對某個用戶數據庫中的數據進行操作。
在實際攻防過程中,在獲取Webshell的情況下,可以直接下載用戶。MySQL數據庫中保留的MYD文件,存儲了MySQL數據庫中所有用戶對應的數據庫密碼。只要能破解這些密碼,就可以光明正大的操作這些數據。雖然網上有很多修改MySQL數據庫用戶密碼的方法,但是不可取,因為修改用戶密碼很容易被發現!
1.1MYSQL加密方法
MYSQL數據庫的密碼認證有兩種方式:MYSQL 4.1版之前的MYSQL323加密,MYSQL 4.1版之後的MYSQLSHA1加密,MYSQL數據庫有自己的Old_Password(str)和Password(str)函數,都可以在MYSQL數據庫中查詢。
(1)MySQL 323加密。
選擇舊密碼(& amp#39;antian 365 . com & amp;#39;);
查詢結果MySQL 323 = 10c 886615b 135 b38。
(2)用MYSQLSHA1加密。
選擇密碼(& amp#39;antian 365 . com & amp;#39;);
查詢結果MySQL sha 1 = * a2 ebae 36132928537 ada 8e 6d 1 f7c 5886713c 2。
執行結果如圖1所示。16位的字符串是在MYSQL323加密中生成的,而41位的字符串存在於MYSQLSHA1中,其中*並沒有加入到實際的密碼運算中,通過觀察*被很多用戶攜帶,在實際的破解過程中*被去除,也就是說MySQL SHA 6550。