XSS(Cross Site Scripting) 介紹
最近拜網路頻寬的提升,WEB的特效愈來愈多,提供的功能及服務也愈來愈能滿足大眾的口味,在WEB愈來能愈能做出有如應用程式般效果的同時,危險因子也愈來愈多及難防範,接下來介紹的XSS是在近幾年攻擊的主流,雖說以往就有在web上出現過類似的攻擊模式,就如同Ajax一般以往就能做出等同效果,不過現在熱門囉!! 以前網頁bomo已經落伍了,XSS攻擊已經超出想像般的可怕…以下是在網路上看了一些文章後,大約整理一下並加上自己的看法..
XSS的全稱是Cross Site Scripting,意思是跨網站腳本程式這第一個單詞是Cross,為什麼縮寫成X呢?因為CSS是層疊樣式表的縮寫(Cascading Style Sheets)的縮寫,同時Cross發音和X相似,為了避免混淆用X來代替,縮寫成XSS。其實我覺得叫XSS挺合適的,因為現在流行AJAX嘛,新的跨站腳本攻擊技術很多都是和XMLHTTP控制項無間配合。它指的是惡意攻擊者往Web頁面裏插入惡意html代碼,當用戶瀏覽該頁之時,嵌入其中Web裏面的html代碼會被執行,從而達到惡意用戶的特殊目的。XSS屬於被動式的攻擊,因為其被動且不好利用,所以許多人常呼略其危害性。
這個問題所帶來的影響遠超過突如其來的打擾或惡作劇。透過擷取您的 cookies 資料(一種儲存在個人瀏覽器的暫存資訊),跨網站攻擊程式能夠讓攻擊者取得您網站的管理者權限。
這是如何發生的呢?主要是網站系統並沒有過濾使用者提供的資訊就顯示在畫面中,再利用網頁執行的特性,在使用端執行那些會危害或竊取使用者隱私資訊;就像一個使用者上傳了留言、評論或甚至是一個帳號與密碼,如果這些資訊接下來會顯示在網頁中,這時就可以在上頭動些手腳以達到想攻擊入侵的目的。作法有點像SQL Injection攻擊(改天再來介紹),只是攻擊的目標從資料庫換成使用者或系統。
這些內容也許是無傷大雅的(例如惡作劇),也或者會是嘗試要取得私人資訊的惡意程式碼,藉此闖入您的系統。簡單來說通常這些攻擊內容會以程式碼的形式存在,因此才會取名為 '跨網站攻擊程式'。
一般XSS攻擊會有下面二種類型的攻擊:
1.比較不會造成傷害的跨網站攻擊形式
- 嘗試要破壞網頁畫面配置與內容
- 惡作劇程式、顯示討厭的訊息、廣告視窗等程式或物件
2.比較嚴重的跨網站攻擊形式:
- 產生可以誤導人們的網站連結,透過這些連結來引發一些動作,像是登出、發佈文章或是修改密碼等
- 程式或帶有 “(script removed)” 的連結用來從 cookies 中蒐集個人資訊,接著將它們傳送到第三個網站,藉此取得系統的管理者權限
- 嘗試攻擊特定瀏覽器已知安全弱點的物件或外掛程式
一般系統有使用所見即所得功能的,危安因素更大,因為真的很難防,目前市面上似乎還沒有一整套完整又簡單使用的防範方式,看來在提供強大的功能及服務的同時,要小心想想會不會造成上述攻擊,這次就先介紹到此!!
參考資料:
http://twpug.net/modules/smartsection/item.php?itemid=34
http://bbs.flash2u.com.tw/dispbbs_171_87491.html
近期留言