五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

滲透專題丨web Top10 漏洞簡(jiǎn)述(3)

2023-06-14 18:58 作者:rkvir逆向工程學(xué)院  | 我要投稿

CORS跨域資源共享漏洞

1、名詞解釋

??CORS:?跨域資源共享是一種放寬同源策略的機(jī)制,它允許瀏覽器向跨源服務(wù)器,發(fā)出?XMLHttpRequest?請(qǐng)求,從而克服了?AJAX?只能同源使用的限制,以使不同的網(wǎng)站可以跨域獲取數(shù)據(jù)。

??CORS過程:簡(jiǎn)單跨域請(qǐng)求就是使用設(shè)定的請(qǐng)求方式請(qǐng)求數(shù)據(jù),而非簡(jiǎn)單跨域請(qǐng)求則是在使用設(shè)定的請(qǐng)求方式請(qǐng)求數(shù)據(jù)之前,先發(fā)送一個(gè)?OPTIONS?預(yù)檢請(qǐng)求,驗(yàn)證請(qǐng)求源是否為服務(wù)端允許源。只有"預(yù)檢"通過后才會(huì)再發(fā)送一次請(qǐng)求用于數(shù)據(jù)傳輸。當(dāng)我們需要發(fā)送一個(gè)跨域請(qǐng)求的時(shí)候,瀏覽器會(huì)首先檢查這個(gè)請(qǐng)求,如果它是簡(jiǎn)單跨域請(qǐng)求,瀏覽器就會(huì)立刻發(fā)送這個(gè)請(qǐng)求。如果它是非簡(jiǎn)單跨域請(qǐng)求,這時(shí)候?yàn)g覽器不會(huì)馬上發(fā)送這個(gè)請(qǐng)求,而是有一個(gè)跟服務(wù)器預(yù)檢驗(yàn)證的過程。

??CORS運(yùn)行機(jī)制:在瀏覽器進(jìn)行請(qǐng)求時(shí),自動(dòng)在請(qǐng)求頭中添加?Origin?字段,服務(wù)端通過驗(yàn)證?Origin?字段來(lái)判斷請(qǐng)求是否被允許,從而實(shí)現(xiàn)瀏覽器進(jìn)行跨源訪問。

2、漏洞代碼







4、防御方案

??不要配置"Access-Control-Allow-Origin"?為通配符“*”,而且更重要的是,要嚴(yán)格效驗(yàn)來(lái)自請(qǐng)求數(shù)據(jù)包中的"Origin"?的值。當(dāng)收到跨域請(qǐng)求的時(shí)候,要檢查"Origin"?的值是否是一個(gè)可信的源,?還要檢是否為?null

??避免使用"Access-Control-Allow-Credentials: true"

??減少?Access-Control- Allow-Methods?所允許的方法

越權(quán)漏洞

1、簡(jiǎn)述

越權(quán)訪問(Broken Access Control,簡(jiǎn)稱?BAC)是?Web?應(yīng)用程序中一種常見的漏洞,由于其存在范圍廣、危害大,被?OWASP?列為?Web?應(yīng)用十大安全隱患的第二名。該漏洞是指應(yīng)用在檢查授權(quán)時(shí)存在紕漏,使得攻擊者在獲得低權(quán)限用戶賬戶后,利用一些方式繞過權(quán)限檢查,訪問或者操作其他用戶或者更高權(quán)限。越權(quán)漏洞的成因主要是因?yàn)殚_發(fā)人員在對(duì)數(shù)據(jù)進(jìn)行增、刪、改、查詢時(shí)對(duì)客戶端請(qǐng)求的數(shù)據(jù)過分相信而遺漏了權(quán)限的判定,一旦權(quán)限驗(yàn)證不充分,就易致越權(quán)漏洞。

2、越權(quán)漏洞分類

??水平越權(quán):指相同權(quán)限下不同的用戶可以互相訪問

??垂直越權(quán):垂直越權(quán)是不同級(jí)別之間或不同角色之間的越權(quán),一般是低權(quán)限用戶往高權(quán)限越權(quán)。

3、漏洞防御

1、基礎(chǔ)安全架構(gòu),完善用戶權(quán)限體系。要知道哪些數(shù)據(jù)對(duì)于哪些用戶,哪些數(shù)據(jù)不應(yīng)該由哪些用戶操作;

2、鑒權(quán),服務(wù)端對(duì)請(qǐng)求的數(shù)據(jù)和當(dāng)前用戶身份做校驗(yàn);

3、不要直接使用對(duì)象的實(shí)名或關(guān)鍵字。

4、對(duì)于可控參數(shù)進(jìn)行嚴(yán)格的檢查與過濾。

SSRF漏洞

1、簡(jiǎn)述

SSRF (Server-Side Request Forgery,服務(wù)器端請(qǐng)求偽造)是一種由攻擊者構(gòu)造請(qǐng)求,由服務(wù)端發(fā)起請(qǐng)求的安全漏洞。一般情況下,SSRF?攻擊的目標(biāo)是外網(wǎng)無(wú)法訪問的內(nèi)部系統(tǒng)(正因?yàn)檎?qǐng)求是由服務(wù)端發(fā)起的,所以服務(wù)端能請(qǐng)求到與自身相連而與外網(wǎng)隔離的內(nèi)部系統(tǒng))。

2、漏洞原理

SSRF?的形成大多是由于服務(wù)端提供了從其他服務(wù)器應(yīng)用獲取數(shù)據(jù)的功能且沒有對(duì)目標(biāo)地址做過濾與限制。例如,黑客操作服務(wù)端從指定?URL?地址獲取網(wǎng)頁(yè)文本內(nèi)容,加載指定地址的圖片等,利用的是服務(wù)端的請(qǐng)求偽造。SSRF?利用存在缺陷的?Web?應(yīng)用作為代理攻擊遠(yuǎn)程和本地的服務(wù)器。

3、主要攻擊手段

??對(duì)外網(wǎng)、服務(wù)器所在內(nèi)網(wǎng)、本地進(jìn)行端口掃描,獲取一些服務(wù)的?banner?信息。

??攻擊運(yùn)行在內(nèi)網(wǎng)或本地的應(yīng)用程序。

??對(duì)內(nèi)網(wǎng)?Web?應(yīng)用進(jìn)行指紋識(shí)別,識(shí)別企業(yè)內(nèi)部的資產(chǎn)信息。

??攻擊內(nèi)外網(wǎng)的?Web?應(yīng)用,主要是使用?HTTP GET?請(qǐng)求就可以實(shí)現(xiàn)的攻擊(比如?struts2、SQli?等)。

??利用?file?協(xié)議讀取本地文件等。

4、支持協(xié)議

ftp

ssrf.php?url=ftp://evil.com:12345/TEST

file://

ssrf.php?url=file:///etc/password

Dict://

dict://@:/d:

ssrf.php?url=dict://attacker:11111/

SFTP://

ssrf.php?url=sftp://example.com:11111/

TFTP://

ssrf.php?url=tftp://example.com:12346/TESTUDPPACKET

LDAP://

ssrf.php?url=ldap://localhost:11211/%0astats%0aquit

Gopher://

ssrf.php?url=gopher://127.0.0.1:3306

5、防御手段

1.禁止跳轉(zhuǎn)

2.過濾返回信息,驗(yàn)證遠(yuǎn)程服務(wù)器對(duì)請(qǐng)求的響應(yīng)是比較容易的方法。如果?web?應(yīng)用是去獲取某一種類型的文件。那么在把返回結(jié)果展示給用戶之前先驗(yàn)證返回的信息是否符合標(biāo)準(zhǔn)。

3.禁用不需要的協(xié)議,僅僅允許?http?和?https?請(qǐng)求??梢苑乐诡愃朴?file://, gopher://, ftp://?等引

起的問題

4.設(shè)置?URL?白名單或者限制內(nèi)網(wǎng)?IP(使用?gethostbyname()判斷是否為內(nèi)網(wǎng)?IP)

5.限制請(qǐng)求的端口為?http?常用的端口,比如?80、443、8080、8090

6.統(tǒng)一錯(cuò)誤信息,避免用戶可以根據(jù)錯(cuò)誤信息來(lái)判斷遠(yuǎn)端服務(wù)器的端口狀態(tài)

反序列化漏洞

1、簡(jiǎn)述

反序列化又叫對(duì)象注入,序列化在內(nèi)部沒有漏洞,漏洞產(chǎn)生是應(yīng)該程序在處理對(duì)象、魔術(shù)函數(shù)以及序列化相關(guān)的問題導(dǎo)致的?當(dāng)傳給?unserialize()的參數(shù)可控時(shí),那么用戶就可以注入?payload,進(jìn)行反序列化的時(shí)候就可能觸發(fā)對(duì)象中的一些魔術(shù)方法。

2、名詞解釋

序列化:對(duì)象的狀態(tài)信息轉(zhuǎn)換為可以存儲(chǔ)或傳輸?shù)男问降倪^程?在序列化期間,對(duì)象將當(dāng)前的狀態(tài)寫入到臨時(shí)或持久性的存儲(chǔ)區(qū),將狀態(tài)信息保存為字符串。

反序列化:將序列化后的字符串還原成對(duì)象。

3、反序列化魔法函數(shù)

??__construct()?當(dāng)一個(gè)對(duì)象創(chuàng)建時(shí)被調(diào)用

??__destruct()?當(dāng)一個(gè)對(duì)象銷毀前被調(diào)用

??__sleep()?在對(duì)象被序列化前被調(diào)用

??__wakeup?將在反序列化之后立即被調(diào)用

??__toString?當(dāng)一個(gè)對(duì)象被當(dāng)做字符串使用時(shí)被調(diào)用

??get(),set()?當(dāng)調(diào)用或設(shè)置一個(gè)類及其父類方法中未定義的屬性時(shí)

??__invoke()?調(diào)用函數(shù)的方式調(diào)用一個(gè)對(duì)象時(shí)的回應(yīng)方法

??call?和?callStatic?前者是調(diào)用類不存在的方法時(shí)執(zhí)行,而后者是調(diào)用類不存在的靜態(tài)方式方法時(shí)執(zhí)行。

4、魔術(shù)方法實(shí)例


class 123{
public $var1 = 'abc';
public $var2 = '123';
public function echoP(){
echo $this->var1.'
';
}
public function __construct(){
echo "__construct
";
}
public function __destruct(){
echo "__destruct
";
}
public function __toString(){
return "__toString
";
}
public function __sleep(){
echo "__sleep
";
//?注意返回帶類中所有變量名稱的數(shù)組
return array('var1', 'var2');
}
public function __wakeup(){
echo "__wakeup
";
}
}
//?創(chuàng)建對(duì)象,輸出__construct
$obj = new 123();
//?調(diào)用?echoP?方法
$obj->echoP();
//?把類當(dāng)做字符串輸出,輸出__toString
echo $obj;
//?序列化對(duì)象,輸出__sleep
$s = serialize($obj);
// O:6:"123":2:{s:4:"var1";s:3:"abc";s:4:"var2";s:3:"123";}
echo $s.'
';
//?反序列對(duì)象,輸出__wakeup
unserialize($s);
//?腳本結(jié)束,對(duì)象被銷毀,輸出兩個(gè)?__destruct,還有一個(gè)是?unserialize?恢復(fù)的對(duì)象
?>

4、漏洞防御

不要把用戶的輸入或者是用戶可控的參數(shù)直接放進(jìn)反序列化的操作中去

任意文件讀取與下載漏洞

1、簡(jiǎn)述

任意文件讀取與下載又名不安全的文件下載,一些網(wǎng)站的業(yè)務(wù)需要,可能提供文件查看或下載的功能,如果對(duì)用戶查看或下載的文件不做限制,就能夠查看或下載任意的文件,可以是源文件,敏感文件等等。通過任意文件下載,可以下載服務(wù)器的任意文件,web?業(yè)務(wù)的代碼,服務(wù)器和系統(tǒng)的具體配置信息,也可以下載數(shù)據(jù)庫(kù)的配置信息,以及對(duì)內(nèi)網(wǎng)的信息探測(cè)等等。

2、常見的敏感文件

Win:

??C:\boot.ini //查看系統(tǒng)版本

??C:\Windows\System32\inetsrv\MetaBase.xml //IIS?配置文件

??C:\Windows\repair\sam //存儲(chǔ)系統(tǒng)初次安裝的密碼

??C:\Program Files\mysql\my.ini //Mysql?配置

??C:\Program Files\mysql\data\mysql\user.MYD //Mysql root

??C:\Windows\php.ini //php?配置信息

??C:\Windows\my.ini

Linux:

??/etc/passwd

??/etc/shadow

??/etc/hosts

??/root/.bash_history

??//root?的?bash?歷史記錄

??/root/.ssh/authorized_keys

??/root/.mysql_history //mysql?的?bash?歷史記錄

??/root/.wget-hsts

??/opt/nginx/conf/nginx.conf //nginx?的配置文件

??/var/www/html/index.html

??/etc/my.cnf

??/etc/httpd/conf/httpd.conf //httpd?的配置文件

??/proc/self/fd/fd[0-9]*(文件標(biāo)識(shí)符)

??/proc/mounts

??/porc/config.gz

??/proc/sched_debug //?提供?cpu?上正在運(yùn)行的進(jìn)程信息,可以獲得進(jìn)程的?pid?號(hào),可以配合后面需要?pid的利用

??/proc/mounts //?掛載的文件系統(tǒng)列表

??/proc/net/arp //arp?表,可以獲得內(nèi)網(wǎng)其他機(jī)器的地址

??/proc/net/route //路由表信息

??/proc/net/tcp and /proc/net/udp //?活動(dòng)連接的信息

??/proc/net/fib_trie //?路由緩存

??/proc/version //?內(nèi)核版本

??/proc/[PID]/cmdline //?可能包含有用的路徑信息

??/proc/[PID]/environ //?程序運(yùn)行的環(huán)境變量信息,可以用來(lái)包含?getshell

??/proc/[PID]/cwd //?當(dāng)前進(jìn)程的工作目錄

??/proc/[PID]/fd/[#] //?訪問?file descriptors,某寫情況可以讀取到進(jìn)程正在使用的文件,比如access.log

3、漏洞防御

??過濾點(diǎn)(.)使用戶在?url?中不能回溯上級(jí)目錄

??正則嚴(yán)格判斷用戶輸入?yún)?shù)的格式

??php.ini?配置?open_basedir?限定文件訪問范圍

目錄遍歷漏洞

1、簡(jiǎn)述

在?web?功能設(shè)計(jì)中,很多時(shí)候我們會(huì)要將需要訪問的文件定義成變量,從而讓前端的功能變的更加靈活。?當(dāng)用戶發(fā)起一個(gè)前端的請(qǐng)求時(shí),便會(huì)將請(qǐng)求的這個(gè)文件的值(比如文件名稱)傳遞到后臺(tái),后臺(tái)再執(zhí)行其對(duì)應(yīng)的文件。?在這個(gè)過程中,如果后臺(tái)沒有對(duì)前端傳進(jìn)來(lái)的值進(jìn)行嚴(yán)格的安全考慮,則攻擊者可能會(huì)通過“../”這樣的手段讓后臺(tái)打開或者執(zhí)行一些其他的文件。?從而導(dǎo)致后臺(tái)服務(wù)器上其他目錄的文件結(jié)果被遍歷出來(lái),形成目錄遍歷漏洞。

2、代碼分析


$dir_path=$_REQUEST['path'];
$filename=scandir($dir_path);
var_dump($filename);
?>

path?可控?傳入?scandir?函數(shù)再進(jìn)行輸出,會(huì)造成目錄遍歷漏洞。

3、攻擊分類

??web目錄遍歷攻擊:目錄遍歷可以輸入../返回上級(jí)目錄?/遍歷根目錄?./當(dāng)前目錄?c:\訪問?c?盤,~/?當(dāng)前用戶目錄。遍歷網(wǎng)站或系統(tǒng)結(jié)構(gòu),尋找敏感文件,配合其他漏洞造成嚴(yán)重的安全隱患。

??中間件目錄遍歷攻擊:中間件如果設(shè)置不當(dāng)?shù)臅r(shí),也會(huì)造成目錄遍歷,如?apache ngnix iis?目錄瀏覽,均可造成目錄遍歷,但是這種目錄遍歷,只能遍歷網(wǎng)站根目錄,除非有特殊設(shè)置。通過遍歷目錄或文件,尋找敏感文件,如?session?登錄驗(yàn)證文件,數(shù)據(jù)庫(kù)備份等。對(duì)網(wǎng)站構(gòu)成重大安全隱患。

4、預(yù)防手段

1.對(duì)用戶的輸入進(jìn)行驗(yàn)證,特別是路徑替代字符如“../”和“~/”。

2.盡可能采用白名單的形式,驗(yàn)證所有的輸入。

3.合理配置?Web?服務(wù)器的目錄權(quán)限。

4.當(dāng)程序出錯(cuò)時(shí),不要顯示內(nèi)部相關(guān)配置細(xì)節(jié)。

5.對(duì)用戶傳過來(lái)的文件名參數(shù)進(jìn)行統(tǒng)一編碼,對(duì)包含惡意字符或者空字符的參數(shù)進(jìn)行拒絕。


滲透專題丨web Top10 漏洞簡(jiǎn)述(3)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
门源| 霍山县| 辽阳县| 花莲县| 泰来县| 绵竹市| 九龙县| 江北区| 曲周县| 巫溪县| 天全县| 文化| 鲁甸县| 如皋市| 光山县| 益阳市| 福鼎市| 西乌| 房山区| 米易县| 彩票| 桐乡市| 柘城县| 六安市| 东乡县| 敦化市| 沂南县| 怀化市| 汉中市| 衢州市| 武邑县| 治县。| 焉耆| 上杭县| 宜宾县| 双城市| 安庆市| 博野县| 科技| 廉江市| 花莲县|