A. XSS跨站腳本攻擊的防禦方法有哪些怎樣把他們分類
用護衛神高級安全防護可以解決
B. xss攻擊類型包括那些
從攻擊代碼的工作方式可以分為三個類型:
(1)持久型跨站:最直接的危害類型,跨站代碼存儲在伺服器(資料庫)。
(2)非持久型跨站:反射型跨站腳本漏洞,最普遍的類型。用戶訪問伺服器-跨站鏈接-返回跨站代碼。
(3)DOM跨站(DOM XSS):DOM(document object model文檔對象模型),客戶端腳本處理邏輯導致的安全問題。
基於DOM的XSS漏洞是指受害者端的網頁腳本在修改本地頁面DOM環境時未進行合理的處置,而使得攻擊腳本被執行。在整個攻擊過程中,伺服器響應的頁面並沒有發生變化,引起客戶端腳本執行結果差異的原因是對本地DOM的惡意篡改利用。
常用的XSS攻擊手段和目的有:
1、盜用cookie,獲取敏感信息。
2、利用植入Flash,通過crossdomain許可權設置進一步獲取更高許可權;或者利用java等得到類似的操作。
3、利用iframe、frame、XMLHttpRequest或上述Flash等方式,以用戶的身份執行一些管理動作,或執行一些一般的如發微博、加好友、發私信等操作。
4、利用可被攻擊的域受到其他域信任的特點,以受信任來源的身份請求一些平時不允許的操作,如進行不當的投票活動。
5、在訪問量極大的一些頁面上的XSS可以攻擊一些小型網站,實現DDos攻擊的效果。
C. XSS攻擊的定義,類型以及防禦方法
XXS攻擊全稱跨站腳本攻擊,是一種在Web應用中的計算機安全漏洞,它允許惡意Web用戶將代碼植入到提供給其他使用的頁面中。
XSS攻擊有哪幾種類型?下面就由銳速雲的小編為大家介紹一下
經常見到XSS攻擊有三種:反射XSS攻擊、DOM-based型XSS攻擊以及儲存型XSS攻擊。
[if !supportLists]1、[endif]反射型XSS攻擊
反射性XSS一般是攻擊者通過特定手法(如電子郵件),誘使用戶去訪問一個包含惡意代碼的URL,當受害者點擊這些專門設計鏈接的時候,惡意代碼會直接在受害主機上的瀏覽器上執行,反射型XSS通常出現在網站搜索欄,用戶登入口等地方,常用來竊取客戶端或進行釣魚欺騙。
[if !supportLists]2、[endif]存儲型XSS攻擊
存儲型XSS攻擊也叫持久型XSS,主要將XSS代碼提交儲存在伺服器端(資料庫,內存,文件系統等)下次請求目標頁面時不用在提交XSS代碼。當目標用戶訪問該頁面獲取數據時,XSS代碼會從伺服器解析之後載入出來,返回到瀏覽器做正常的HTML和JS解析執行,XSS攻擊就發生了。儲存型XSS一般出現在網站留言,評論,博客日誌等交互處,惡意腳本儲存到客戶端或者服務端的資料庫中。
[if !supportLists]3、[endif]DOM-based型XSS攻擊
DOM-based型XSS攻擊它是基於DOM的XSS攻擊是指通過惡意腳本修改頁面的DOM結構,是純粹發生在客戶端的攻擊。DOM型XSS攻擊中,取出和執行惡意代碼由瀏覽器端完成,屬於前端JavaScript自身的安全漏洞。
如何防禦XSS攻擊?
[if !supportLists]1、[endif]對輸入內容的特定字元進行編碼,列如表示html標記<>等符號。
[if !supportLists]2、[endif]對重要的cookie設置httpOnly,防止客戶端通過document。cookie讀取cookie,此HTTP開頭由服務端設置。
[if !supportLists]3、[endif]將不可信的輸出URT參數之前,進行URLEncode操作,而對於從URL參數中獲取值一定要進行格式檢查
[if !supportLists]4、[endif]不要使用Eval來解析並運行不確定的數據或代碼,對於JSON解析請使用JSON。Parse()方法
[if !supportLists]5、[endif]後端介面也應該要做到關鍵字元過濾的問題。
D. 如何正確防禦xss攻擊
傳統防禦技術
2.1.1基於特徵的防禦
傳統XSS防禦多採用特徵匹配方式,在所有提交的信息中都進行匹配檢查。對於這種類型的XSS攻擊,採用的模式匹配方法一般會需要對「javascript」這個關鍵字進行檢索,一旦發現提交信息中包含「javascript」,就認定為XSS攻擊。
2.1.2 基於代碼修改的防禦
和SQL注入防禦一樣,XSS攻擊也是利用了Web頁面的編寫疏忽,所以還有一種方法就是從Web應用開發的角度來避免:
1、對所有用戶提交內容進行可靠的輸入驗證,包括對URL、查詢關鍵字、HTTP頭、POST數據等,僅接受指定長度范圍內、採用適當格式、採用所預期的字元的內容提交,對其他的一律過濾。
2、實現Session標記(session tokens)、CAPTCHA系統或者HTTP引用頭檢查,以防功能被第三方網站所執行。
3、確認接收的的內容被妥善的規范化,僅包含最小的、安全的Tag(沒有javascript),去掉任何對遠程內容的引用(尤其是樣式表和javascript),使用HTTP only的cookie。
當然,如上方法將會降低Web業務系統的可用性,用戶僅能輸入少量的制定字元,人與系統間的交互被降到極致,僅適用於信息發布型站點。
並且考慮到很少有Web編碼人員受過正規的安全培訓,很難做到完全避免頁面中的XSS漏洞。
(4)xss攻擊與防禦pdf擴展閱讀:
XSS攻擊的危害包括
1、盜取各類用戶帳號,如機器登錄帳號、用戶網銀帳號、各類管理員帳號
2、控制企業數據,包括讀取、篡改、添加、刪除企業敏感數據的能力
3、盜竊企業重要的具有商業價值的資料
4、非法轉賬
5、強制發送電子郵件
6、網站掛馬
7、控制受害者機器向其它網站發起攻擊
受攻擊事件
新浪微博XSS受攻擊事件
2011年6月28日晚,新浪微博出現了一次比較大的XSS攻擊事件。
大量用戶自動發送諸如:
「郭美美事件的一些未注意到的細節」,「建黨大業中穿幫地方」,「讓女人心動的100句詩歌」,「這是傳說中的神仙眷侶啊」等等微博和私信,並自動關注一位名為hellosamy的用戶。
事件的經過線索如下:
20:14,開始有大量帶V的認證用戶中招轉發蠕蟲
20:30,某網站中的病毒頁面無法訪問
20:32,新浪微博中hellosamy用戶無法訪問
21:02,新浪漏洞修補完畢
網路貼吧xss攻擊事件
2014年3月9晚,六安吧等幾十個貼吧出現點擊推廣貼會自動轉發等。並且吧友所關注的每個關注的貼吧都會轉一遍,病毒循環發帖。並且導致吧務人員,和吧友被封禁。
E. 什麼是xss攻擊
一、什麼是跨站腳本攻擊
跨站腳本攻擊(Cross Site Scripting)縮寫為CSS,但這會與層疊樣式表(Cascading Style Sheets,CSS)的縮寫混淆。通常將跨站腳本攻擊縮寫為XSS。
跨站腳本攻擊(XSS),是最普遍的Web應用安全漏洞。這類漏洞能夠使得攻擊者嵌入惡意腳本代碼到正常用戶會訪問到的頁面中,當正常用戶訪問該頁面時,則可導致嵌入的惡意腳本代碼的執行,從而達到惡意攻擊用戶的目的。
二、跨站腳本攻擊的種類
從攻擊代碼的工作方式可以分為三個類型:
1、持久型跨站:最直接的危害類型,跨站代碼存儲在伺服器(資料庫)。
2、非持久型跨站:反射型跨站腳本漏洞,最普遍的類型。用戶訪問伺服器-跨站鏈接-返回跨站代碼。
3、DOM跨站(DOM XSS):DOM(document object model文檔對象模型),客戶端腳本處理邏輯導致的安全問題。
三、跨站腳本攻擊的手段和目的
常用的XSS攻擊手段和目的有:
1、盜用cookie,獲取敏感信息。
2、利用植入Flash,通過crossdomain許可權設置進一步獲取更高許可權;或者利用Java等得到類似的操作。
3、利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻擊)用戶的身份執行一些管理動作,或執行一些一般的如發微博、加好友、發私信等操作。
4、利用可被攻擊的域受到其他域信任的特點,以受信任來源的身份請求一些平時不允許的操作,如進行不當的投票活動。
5、在訪問量極大的一些頁面上的XSS可以攻擊一些小型網站,實現DDoS攻擊的效果。
四、跨站腳本攻擊的防禦
XSS攻擊主要是由程序漏洞造成的,要完全防止XSS安全漏洞主要依靠程序員較高的編程能力和安全意識,當然安全的軟體開發流程及其他一些編程安全原則也可以大大減少XSS安全漏洞的發生。這些防範XSS漏洞原則包括:
1、不信任用戶提交的任何內容,對所有用戶提交內容進行可靠的輸入驗證,包括對URL、查詢關鍵字、HTTP頭、REFER、POST數據等,僅接受指定長度范圍內、採用適當格式、採用所預期的字元的內容提交,對其他的一律過濾。盡量採用POST而非GET提交表單;對「<」,「>」,「;」,「」」等字元做過濾;任何內容輸出到頁面之前都必須加以en-code,避免不小心把htmltag顯示出來。
2、實現Session 標記(session tokens)、CAPTCHA(驗證碼)系統或者HTTP引用頭檢查,以防功能被第三方網站所執行,對於用戶提交信息的中的img等link,檢查是否有重定向回本站、不是真的圖片等可疑操作。
3、cookie 防盜。避免直接在cookie中泄露用戶隱私,例如email、密碼,等等;通過使cookie和系統IP綁定來降低cookie泄露後的危險。這樣攻擊者得到的cookie沒有實際價值,很難拿來直接進行重放攻擊。
4、確認接收的內容被妥善地規范化,僅包含最小的、安全的Tag(沒有JavaScript),去掉任何對遠程內容的引用(尤其是樣式表和JavaScript),使用HTTPonly的cookie。
F. 如何正確防禦xss攻擊
1、基於特徵的防禦。XSS漏洞和著名的SQL注入漏洞一樣,都是利用了Web頁面的編寫不完善,所以每一個漏洞所利用和針對的弱點都不盡相同,這就是給XSS漏洞防禦帶來的困難,不可能以單一特徵來概括所有XSS攻擊。
傳統的XSS防禦在進行攻擊鑒別時多採用特徵匹配方式,主要是針對JavaScript這個關鍵詞進行檢索,但是這種鑒別不夠靈活,凡是提交的信息中各有JavaScript時,就被硬性的判定為XSS攻擊。
2、基於代碼修改的防禦。Web頁面開發者在編寫程序時往往會出現一些失誤或漏洞,XSS攻擊正是利用了失誤和漏洞,因此一種比較理想的方法就是通過優化Web應用開發來減少漏洞,避免被攻擊:
①用戶向伺服器上提交的信息要對URL和附帶的HTTP頭、POST數據等進行查詢,對不是規定格式、長度的內容進行過濾。
②實現Session標記、CAPTCHA系統或者HTTP引用頭檢查,以防功能被第三方網站所執行。
③確認接收的內容被妥善的規范化,僅包含最小的、安全的Tag,去掉任何對遠程內容的引用,使用HTTP only的cookie。
3、客戶端分層防禦策略。客戶端跨站腳本攻擊的分層防禦策略是基於獨立分配線程和分層防禦策略的安全模型。它建立在客戶端,這是它與其他模型最大的區別。之所以客戶端安全性如此重要,客戶端在接受伺服器信息,選擇性的執行相關內容。這樣就可以使防禦XSS攻擊變得容易,該模型主要由三大部分組成:
①對每一個網頁分配獨立線程且分析資源消耗的網頁線程分析模塊;
②包含分層防禦策略四個規則的用戶輸入分析模塊;
③保存互聯網上有關XSS惡意網站信息的XSS信息資料庫。
G. 如何防禦XSS
要想從根本上解決XSS攻擊,就要對Web應用程序源代碼進行檢查,發現安全漏洞進行修改。但是這種方法在實際中給用戶帶來了不便,如:需要花費大量的人力財力;可能無法找到當時的網站開發人員、需要網站下線等。對代碼進行修改後,由於增加了過濾條件和功能,同時也給伺服器帶來了計算壓力。通常的解決方法是在資料庫伺服器前端部署入侵防禦產品。XSS攻擊具有變種多、隱蔽性強等特點,傳統的特徵匹配檢測方式不能有效地進行防禦,需要採用基於攻擊手法的行為監測的入侵防禦產品產品才能夠精確地檢測到XSS攻擊。