中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

虛擬主機(jī)能干什么優(yōu)化網(wǎng)站打開速度

虛擬主機(jī)能干什么,優(yōu)化網(wǎng)站打開速度,網(wǎng)絡(luò)托管公司,長(zhǎng)沙市網(wǎng)站推廣公司隨著互聯(lián)網(wǎng)的迅猛發(fā)展,Web應(yīng)用的普及程度也愈發(fā)廣泛。然而,隨之而來(lái)的是各種安全威脅的不斷涌現(xiàn),其中最為常見而危險(xiǎn)的之一就是跨站腳本攻擊(Cross-Site Scripting,簡(jiǎn)稱XSS)。XSS攻擊一直以來(lái)都是Web安全領(lǐng)…

? ? ? ?隨著互聯(lián)網(wǎng)的迅猛發(fā)展,Web應(yīng)用的普及程度也愈發(fā)廣泛。然而,隨之而來(lái)的是各種安全威脅的不斷涌現(xiàn),其中最為常見而危險(xiǎn)的之一就是跨站腳本攻擊(Cross-Site Scripting,簡(jiǎn)稱XSS)。XSS攻擊一直以來(lái)都是Web安全領(lǐng)域的重點(diǎn)關(guān)注對(duì)象,其危害程度不可小覷。
? ? ? ?在此篇博客中,我將深度剖析XSS攻擊,從其基本原理到實(shí)際案例,探討其可能帶來(lái)的后果以及如何有效地防范。通過(guò)對(duì)XSS攻擊的全面解析,我們希望讀者能夠更全面地了解這一Web安全漏洞,并采取相應(yīng)的措施保護(hù)自己的Web應(yīng)用。

九、XSS攻擊防御

1、XSS Filter

(1)、什么是XSS Filter

①、XSS Filter的作用是過(guò)濾用戶(客戶端) 提交的有害信息,從而達(dá)到防范XSS攻擊的效果。
②、XSS Filter作為防御跨站攻擊的主要手段之一,已經(jīng)廣泛應(yīng)用在各類Web系統(tǒng)之中,包括現(xiàn)今的許多應(yīng)用軟件,例如 Chrome瀏覽器,通過(guò)加入XSSFilter功能可以有效防范所有非持久型的XSS攻擊攻擊。

2、服務(wù)端過(guò)濾方法

(1)、兩種過(guò)濾

業(yè)內(nèi)防御跨站腳本攻擊的方式一般有兩種: Input Filtering和OutputFiltering,即分別在輸入端 (Input) 和輸出端 (Output) 進(jìn)行過(guò)濾。
輸入過(guò)濾的所有數(shù)據(jù)都須經(jīng)過(guò)XSS Filter處理,被確認(rèn)安全無(wú)害后才存入數(shù)據(jù)庫(kù)中,而輸出過(guò)濾只是應(yīng)用于寫出頁(yè)面的數(shù)據(jù),換言之,如果一段惡意代碼早已存入數(shù)據(jù)庫(kù)中,若只有采用輸出過(guò)濾才能捕獲非法數(shù)據(jù)那么這兩種方式在防范持久型XSS的時(shí)候會(huì)產(chǎn)生巨大的差異。

(2)、輸入過(guò)濾

①、“永遠(yuǎn)不要相信用戶的輸入”是網(wǎng)站開發(fā)的基本常識(shí)
②、對(duì)輸入數(shù)數(shù)據(jù)的過(guò)濾,具體可以從兩方面著手: 輸入驗(yàn)證和數(shù)據(jù)消毒下面對(duì)這兩種方法進(jìn)行講解

3、輸入端過(guò)濾方法

(1)、輸入驗(yàn)證

以下代碼為一個(gè)常見的輸入表單,要求用戶輸入電話號(hào)碼信息

(2)、輸入驗(yàn)證

? ? ? ? 這段PHP代碼可檢驗(yàn)用戶輸入的電話號(hào)碼是數(shù)字。當(dāng)我們輸入12345678提交后會(huì)顯示提交的電話號(hào)碼。

(3)、輸入驗(yàn)證

?輸入驗(yàn)證要根據(jù)實(shí)際情況來(lái)設(shè)計(jì),下面是一些常見的檢測(cè)和過(guò)濾
①、輸入是否僅僅包含合法的字符;
②、輸入字符串是否超過(guò)最大長(zhǎng)度限制;
③、輸入如果為數(shù)字,數(shù)字是否在指定的范圍;
④、輸入是否符合特殊的格式要求,如E-mail地址、IP地址等
而對(duì)于重要敏感的信息,如折扣、價(jià)格等,理應(yīng)放到服務(wù)器端進(jìn)行傳參與校驗(yàn)等操作。

(4)、數(shù)據(jù)消毒

除了在客戶端驗(yàn)證數(shù)據(jù)的合法性,輸入過(guò)濾中最重要的還是過(guò)濾和凈化有害的輸入,例如以下常見的敏感字符
<>' "& # javascript expression
但是,僅過(guò)濾以上敏感字符是遠(yuǎn)遠(yuǎn)不夠的。為了能夠提供兩層防御和確保Web應(yīng)用程序的安全,對(duì)Web應(yīng)用的輸出也要進(jìn)行過(guò)濾和編碼。

4、輸出編碼

(1)、介紹

當(dāng)需要將一個(gè)字符串輸出到Web網(wǎng)頁(yè)時(shí),同時(shí)又不確定這個(gè)字符串中是否包括XSS特殊字符(如< > &“等),為了確保輸出內(nèi)容的完整性和正確性,可以使用編碼(HTMLEncode) 進(jìn)行處理。
HTML編碼在防止XSS攻擊上起到很大的作用,它主要是用對(duì)應(yīng)的HTML實(shí)體替代字面字符,這樣做可確保瀏覽器安全處理可能存在的惡意字符,將其當(dāng)作 HTML 文檔的內(nèi)容而非結(jié)構(gòu)加以處理。
一些常見的可能造成問(wèn)題的字符的HTML編碼:

Htmlspecialchars[]函數(shù)可以將以下五種HTML 特殊字符轉(zhuǎn)成字符實(shí)體編碼 :
<轉(zhuǎn)成 &lt;
>轉(zhuǎn)成 &gt;
& 轉(zhuǎn)成 &amp;
“轉(zhuǎn)成 &quot;
‘轉(zhuǎn)成 &#39。
如果說(shuō)對(duì)輸入數(shù)據(jù)的過(guò)濾是針對(duì)可疑的信息進(jìn)行防范,那么針對(duì)輸出數(shù)據(jù)進(jìn)行編碼,就是讓可能造成危害的信息變成無(wú)害。

5、服務(wù)端過(guò)濾

(1)、輸入過(guò)濾

在數(shù)據(jù)存進(jìn)數(shù)據(jù)庫(kù)之前便對(duì)特殊的字符進(jìn)行轉(zhuǎn)義,方便簡(jiǎn)潔,順便可以把SQL注入等其他漏洞一并檢驗(yàn)。而缺點(diǎn)就是無(wú)法處理之前已經(jīng)存在于數(shù)據(jù)庫(kù)中的惡意代碼。

(2)、輸出過(guò)濾

在數(shù)據(jù)輸出之前先對(duì)部分敏感字符進(jìn)行轉(zhuǎn)義,這是一個(gè)很安全的方法,能有效保持?jǐn)?shù)據(jù)的完整性。缺點(diǎn)是必須對(duì)每一個(gè)細(xì)節(jié)的輸出仔細(xì)過(guò)濾,因此會(huì)帶來(lái)額外的工作量。

(3)、優(yōu)點(diǎn)及流程圖

結(jié)合使用輸入過(guò)濾和輸出編碼能夠提供兩層防御.即使攻擊者發(fā)現(xiàn)其中一種過(guò)濾存在缺陷,另一種過(guò)濾仍然能夠在很大程度上阻止其實(shí)施攻擊。

6、Web安全編碼規(guī)范

(1)、簡(jiǎn)介

在輸出數(shù)據(jù)前對(duì)潛在威脅的字符進(jìn)行編碼、轉(zhuǎn)義,是防御XSS攻擊的有效措施。
這些輸出一般是動(dòng)態(tài)內(nèi)容。對(duì)Web應(yīng)用而言,其動(dòng)態(tài)內(nèi)容可能來(lái)源于用戶輸入、URL、HTTP頭、POST數(shù)據(jù)、Cookies的值、查詢關(guān)鍵字等,所以,在應(yīng)對(duì)不同背景下的動(dòng)態(tài)內(nèi)容的XSS攻擊時(shí),要部署不同的解決方案。

(2)、body文本

假設(shè)有如下HTML片段:
<b>錯(cuò)誤: 你的查詢 <?=$query?>沒有返回任何結(jié)果</b>
攻擊者可能將動(dòng)態(tài)內(nèi)容$query替換成惡意的XSS輸入:
<script>evil_script()</script>返回的HTML代碼為:
<b>錯(cuò)誤: 你的查詢<script>evil_script()</script>沒有返回任何結(jié)果</b>

(3)、body文本

把下列能觸發(fā)XSS的字符用相應(yīng)的HTML實(shí)體代替 (和PHP的htmlspecialchars[]功能一致)?
①、< (小于號(hào)) 轉(zhuǎn)成 &lt;
②、> (大于號(hào)) 轉(zhuǎn)成 &gt;
③、&(和號(hào)) 轉(zhuǎn)成 &amp;
④、“(雙引號(hào)) 轉(zhuǎn)成 &quot;
⑤、’(單引號(hào)) 轉(zhuǎn)成 &#39;

(4)、HTML標(biāo)簽中的內(nèi)容

一些HTML標(biāo)簽如<input>、<style>、<color>等的屬性值可能為動(dòng)態(tài)內(nèi)容,該情況下常存在XSS威脅。
<div>查詢值: $query</div>
或者:
<input name="name"value="<?=$query?>">
攻擊者試圖輸入<、>等字符產(chǎn)生一個(gè)新的<script>標(biāo)記:
xss"><script>evil_script(</script>
然后,返回HTML代碼如下:
<input name="name"alue="xss"><script>evil script)</script>">>

(5)、HTML標(biāo)簽中的內(nèi)容

假設(shè)有以下的HTML代碼片段:
<input name="name"value=<?=$query?>>
惡意輸入為:
xss οnmοuseοver=evil_script[]
渲染后的HTML代碼如下:
<input name="name"value=xss οnmοuseοver=alert(/xss/)>
當(dāng)受害者移動(dòng)光標(biāo)到input輸入欄時(shí),腳本就會(huì)被執(zhí)行

(6)、<script></script>中的內(nèi)容

<script>
var msg='<?=$query?>';
</script>
惡意輸入為:
xss'; evil_script();//
最終結(jié)果為:
<script>
var msg='xss';evil_script();//
</script> >

(7)、<script></script>中的內(nèi)容

解決方案
盡量避免或減少在Javascript上下文中使用動(dòng)態(tài)內(nèi)容,稍不謹(jǐn)慎就會(huì)導(dǎo)致跨站腳本攻擊。另外,在 JavaScript中會(huì)出現(xiàn)</script>關(guān)鍵字與前面的<script>標(biāo)簽閉合,還有/* */等 JavaScript注釋也會(huì)被惡意利用,所以對(duì)這些字符要進(jìn)行編碼過(guò)濾

(8)、JavaScript事件考慮如下情況:

<input type=button name=smt value='確定' οnclick='GotoUrl("<?$targetUrl>");'>
惡意輸入為:
foo");evil_script("
返回的HTML代碼為:
<input type=button name=smt value='確定'οnclick='GotoUrl("foon");evil script("");'>

(9)、JavaScript事件

這種情況下,動(dòng)態(tài)內(nèi)容既處于HTML上下文中,又處于JavaScript上下文中,從瀏覽器解析順序來(lái)看,應(yīng)該先對(duì)字符進(jìn)行HTML轉(zhuǎn)義,再進(jìn)行JavaScript轉(zhuǎn)義。

十、XSS相關(guān)工具及使用

1、DVWA Dom xss

(1)、軟件

(2)、相關(guān)代碼

將get參數(shù)中的default的值寫入頁(yè)面中的<option>節(jié)點(diǎn)
if (document.location.href.indexOf("default=") >= 0) {
var lang = document.location.href.substring(
document.location.href.indexOf("default=")+8);document.write("<option value="+ lang + ">"+ decodeURI(lang) +"<option>");
document.write("<option value=" disabled='disabled'>----</option>");
}

(3)、在參數(shù)中寫入payload

(4)、Payload作用位置

(5)、Medium等級(jí)防御代碼

過(guò)濾掉了<script,同時(shí)輸出點(diǎn)發(fā)生了變化
if ( array_key_exists( "default", $_GET ) && !is_null ($_GET['default' ]) {
$default = $_GETdefault'];
# Do not allow script tags
if (stripos ($default, "<script") !== false) {
header ("location: ?default=English");
exit;
}
}

(6)、Medium等級(jí)防御代碼

使用事件進(jìn)行繞過(guò),同時(shí)需要將select標(biāo)簽閉合
payload: </select><body οnlοad=alert("XSS")>

(7)、high等級(jí)防御代碼

if ( array_key_exists( "default",$_GET ) && !is_null ($_GET['default' ]) ) {
switch ($_GETI'default']){
case"French":
case"English":
case"German":
case"Spanish":
# ok
break;
default:
header ("location: ?default=English");
exit;
? }
}

(8)、high等級(jí)防御代碼

防御已經(jīng)非常完善,傳入的參數(shù)如果不是French、 English、GermanSpanish這幾個(gè)字符的話,就直接跳轉(zhuǎn)到?default=English的頁(yè)面。
可以說(shuō)從后端來(lái)看已經(jīng)無(wú)懈可擊了,因?yàn)閲?yán)格控制了用戶輸入的參數(shù),但是還是可以使用一些方法繞過(guò),因?yàn)镈om型xss直接取出參數(shù)然后輸出的是前端js而不是后端的php語(yǔ)句。所以可以運(yùn)用瀏覽器處理url的一些特點(diǎn)進(jìn)行繞過(guò)。

(9)、high等級(jí)繞過(guò)

使用#,#之后的語(yǔ)句將不會(huì)發(fā)送給服務(wù)器,但是會(huì)被javascript識(shí)別,寫入dom,payload: English #<script>alert("xss");</script>

2、XSS工具

(1)、BrutexSS 簡(jiǎn)介

BruteXSS暴力注入xss工具。它用于暴力注入一個(gè)參數(shù)。該BruteXSS從指定的詞庫(kù)加載多種有效載荷進(jìn)行注入并且使用指定的載荷和掃描檢查這些參數(shù)很容易受到XSS漏洞。
得益于掃描功能。在執(zhí)行任務(wù)時(shí), BruteXSS非常準(zhǔn)確而且極少誤報(bào)BruteXSS支持POST和GET請(qǐng)求,適應(yīng)現(xiàn)代Web應(yīng)用程序。

(2)、BruteXSS 安裝

Github頁(yè)面: https://github.com/rajeshmajumdar/BruteXSS
版本: Python 2.7
需要的模塊: Colorama,Mechanize

(3)、BruteXSS 使用方法

如圖一步步設(shè)置:依次設(shè)置傳參方法、url、使用的pavload

(4)、BruteXSS 檢測(cè)成功

(5)、Burpsuite的xss檢測(cè)功能

①、打開Proxy功能中的Intercept選項(xiàng)卡,確認(rèn)攔截功能為“Interceptionison”狀態(tài),如果顯示 為“Intercept is off”則點(diǎn)擊它,打開攔截功能。

②、打開瀏覽器,輸入需要訪問(wèn)的url,將會(huì)看到數(shù)據(jù)流量經(jīng)過(guò)Burp Proxy并暫停,直到你點(diǎn)擊[Forward] ,才會(huì)繼續(xù)傳輸下 去。如果你點(diǎn)擊了[Drop],則這次通過(guò)的數(shù)據(jù)將會(huì)被丟失,不再繼續(xù)處理

(6)、掃描功能

①、右鍵,選擇Do an active scan進(jìn)行主動(dòng)掃描。這種方法是掃描單個(gè)頁(yè)面Burpsuite也有根據(jù)爬蟲爬行的結(jié)果掃描多個(gè)頁(yè)面的功能,非常強(qiáng)大


②、生成掃描結(jié)果,可以看到掃描出來(lái)了xss跨站腳本漏洞并且生成了掃描報(bào)

(7)、介紹

XSS測(cè)試平臺(tái)是測(cè)試XSS漏洞獲取Cookie并接受Web頁(yè)面的平臺(tái),可以竊取Cookie、后臺(tái)增刪改文章、釣魚、修改網(wǎng)頁(yè)代碼等,源碼基于xsser.me。

(8)、利用

十一、XSS挖掘思路

1、反射型XSS挖掘

(1)、HTML標(biāo)簽之間

<div id="body'>
[輸出]
</div>
Payload: <script>alert(1)</script>

(2)、HTML標(biāo)簽之間

< title>(<xmp>、<iframe>)
[輸出]
</title>(</xmp>、</iframe>)
Payload: </title><script>alert(1)</script>

(3)、HTML標(biāo)簽之內(nèi)

<input type=“text”value="[輸出]">
Payload :
①、“ οnmοuseοver=alert(1) (閉合屬性)
②、“><script>alert(1)</script> (閉合屬性又閉合標(biāo)簽)

(4)、HTML標(biāo)簽之內(nèi)

<input type=“hidden”value=“[輸出]”> (無(wú)法使用閉合屬性payload)
<input value=“[輸出]”type="hidden">
Payload:
1”ouseover=alert(1) type="text

(5)、輸出在src/href/action等屬性內(nèi)

<a href=“[輸出]”>click me</a>
Payload:
①、javascript:alert(1)// (js偽協(xié)議瀏覽器都支持)
如果網(wǎng)站過(guò)濾了“: javascript:alert(1)
②、data:text/html;base64,PHNjcmlwdD5hbGVydCgxKTwvc2NyaXBOPg==(現(xiàn)版本ie、chrome、firefox均不支持)

(6)、輸出在on*事件內(nèi)

on*事件是可以執(zhí)行javascript腳本的,根據(jù)場(chǎng)景弄清楚不同的閉合策略即可
<a href=“#”οnclick=”eval(‘[輸出]’)">click me</a>
Payload: alert(1)

(7)、在javascript代碼中

<script>a=“[輸出]”
......
</script>
Payload:
①、</script><script>alert(1)//
②、";alert(1)//

2、HTML與JavaScript編碼

(1)、HTML編碼實(shí)驗(yàn)

例A與例B哪個(gè)會(huì)執(zhí)行alert (1) ?

(2)、編碼原因

JavaScript出現(xiàn)再HTML標(biāo)簽中, JavaScript可以進(jìn)行HTML編碼
①、進(jìn)制編碼: &#xH; 、&#D;
②、HTML實(shí)體編碼
JavaScript執(zhí)行前需要先進(jìn)行HTML解碼!

(3)、JavaScript編碼實(shí)驗(yàn)

例A與例B哪個(gè)會(huì)執(zhí)行alert (1) ?

(4)、編碼原因

輸入內(nèi)容出現(xiàn)在JavaScript中,需要遵循JavaScript編碼
①、Unicode:\uH
②、普通十六進(jìn)制:\xH
③、轉(zhuǎn)義: 在特殊字符前加\轉(zhuǎn)義 (\、”、\<)
JavaScript執(zhí)行前會(huì)自動(dòng)解碼!

(5)、具備htmlEncode功能的標(biāo)簽

<title></title>
<iframe></iframe>
<noscript></noscript>
<noframes></noframes>

3、瀏覽器解碼順序

(1)、解碼順序(https://xssor.io/)

HTML解碼->URL解碼 >JS(unicode)解碼

http://www.risenshineclean.com/news/52542.html

相關(guān)文章:

  • 確保網(wǎng)站地址沒有做301跳轉(zhuǎn)新網(wǎng)站怎么做推廣
  • 喬拓云智能建站官網(wǎng)登錄入口廈門關(guān)鍵詞排名提升
  • 網(wǎng)站ie不兼容如何開發(fā)網(wǎng)站
  • 唐山市住房城鄉(xiāng)建設(shè)部網(wǎng)站主頁(yè)營(yíng)業(yè)推廣策劃
  • 朝陽(yáng)網(wǎng)站建設(shè)seo是什么技術(shù)
  • 網(wǎng)站建設(shè)好的圖片seo優(yōu)化專員工作內(nèi)容
  • 網(wǎng)站建設(shè)的具體過(guò)程網(wǎng)絡(luò)營(yíng)銷崗位職責(zé)和任職要求
  • wordpress搜索引擎源碼深圳seo招聘
  • 做配音任務(wù)的網(wǎng)站百度搜索推廣費(fèi)用
  • 免費(fèi)雙語(yǔ)網(wǎng)站模板如何把網(wǎng)站推廣
  • jsp網(wǎng)站購(gòu)物車怎么做seo外鏈工具軟件
  • 濟(jì)南個(gè)人網(wǎng)站建設(shè)系統(tǒng)優(yōu)化軟件哪個(gè)最好的
  • 資訊網(wǎng)站模板周口seo公司
  • 物流網(wǎng)站建設(shè)與管理長(zhǎng)沙網(wǎng)站策劃
  • 網(wǎng)上備案查詢seo自然搜索優(yōu)化排名
  • wordpress怎么新建欄目seo推廣排名公司
  • 在哪個(gè)網(wǎng)站做流程圖比較好看軟件開發(fā)網(wǎng)
  • 網(wǎng)站建設(shè)采購(gòu)公告友情鏈接網(wǎng)
  • 基于web的網(wǎng)站開發(fā)技術(shù)路線seo優(yōu)化的基本流程
  • 做網(wǎng)上推廣網(wǎng)站免費(fèi)制作網(wǎng)站app
  • 分享類網(wǎng)站源碼軟文營(yíng)銷的步驟
  • 洞口做網(wǎng)站推薦seo優(yōu)化服務(wù)商
  • 在家做兼職的比較靠譜的網(wǎng)站青島網(wǎng)站建設(shè)制作
  • WordPress文章生成海報(bào)代碼seo推廣策略
  • 好的專題網(wǎng)站鏈接生成器
  • 做兼職的那個(gè)網(wǎng)站靠譜google國(guó)際版入口
  • 網(wǎng)上開店?duì)I業(yè)執(zhí)照怎么辦理百度網(wǎng)站優(yōu)化排名
  • 長(zhǎng)沙做網(wǎng)站哪里好2021小說(shuō)排行榜百度風(fēng)云榜
  • 全flash網(wǎng)站制作優(yōu)質(zhì)友情鏈接
  • 網(wǎng)站宣傳視頻瑞金網(wǎng)絡(luò)推廣