stored cross site scripting
儲存型xss,持久化,**是儲存在伺服器中的,如在個人資訊或發表文章等地方,加入**,如果沒有過濾或過濾不嚴,那麼這些**將儲存到伺服器中,使用者訪問該頁面的時候觸發**執行。這種xss比較危險,容易造成蠕蟲,盜竊cookie等。
low security level
dvwa xss (stored) 通關教程函式移除字串兩側的空白字元或其他預定義字元,預定義字元包括\0、\t、\n、\x0b、\r以及空格,可選引數charlist支援新增額外需要刪除的字元。stored cross site scripting
儲存型xss,持久化,**是儲存在伺服器中的,如在個人資訊或發表文章等地方,加入**,如果沒有過濾或過濾不嚴,那麼這些**將儲存到伺服器中,使用者訪問該頁面的時候觸發**執行。這種xss比較危險,容易造成蠕蟲,盜竊cookie等。
low security level
<?php
if( isset( $_post[ 'btnsign'] ) )
?>
相關函式介紹
trim(string,charlist)
mysqli_real_escape_string(string,connection)函式會對字串中的特殊符號(\x00,\n,\r,\,',",\x1a)進行轉義。
stripslashes(string)函式刪除字串中的反斜槓。
可以看到,對輸入並沒有做xss方面的過濾與檢查,且儲存在資料庫中,因此這裡存在明顯的儲存型xss漏洞。
exploit
message欄的利用:
輸入,成功彈框:
name欄的利用:
發現前端html中對name有字數長度限制:
burpsuite抓包改為:
forward後,成功彈窗:
medium security level
<?php可以看到,通過使用htmlspecialchars函式將幾種特殊字元轉義為html實體,mysqli_real_escape_string函式對單引號'轉義,防止進行sql注入,徹底防治了儲存型 xss 的利用和危害。if( isset( $_post[ 'btnsign'] ) )
?>
可以看到,這裡使用正規表示式過濾了標籤,但是卻忽略了img、iframe等其它危險的標籤,因此name引數依舊存在儲存型xss。
exploit
burpsuite抓包改name引數為
:forward後,成功彈窗:
impossible security level
<?php
if( isset( $_post[ 'btnsign'] ) )
//generate anti-csrf token
generatesessiontoken();
?>
通關PAT留念
時隔一年了,上次成功考pat是去年的三月,記得是和wtq還有zzt等人一塊去的,記得同考場還有hdu大佬。今天再次參加了pat,當然是奔著頂級去的,12點半和同學xiang578一塊,騎著小黃車就去了,地點是傳媒。然後,到了,等了一會考試就開始了,尼瑪這個考場就我乙個考top的,尷尬。左邊的小兄弟考...
Spring Boot面試通關
aop是spring面試經常問的面試題,很多人都卡在這裡,我使用簡單的三個步驟講解aop,更方便記憶 1.1建立 物件 相關類 1 abstractautowirecapablebeanfactory 2 abstractautoproxycreator 3 abstractadvisorautop...
DVWA XSS DOM 通關教程
dom,全稱document object model,是乙個平台和語言都中立的介面,可以使程式和指令碼能夠動態訪問和更新文件的內容 結構以及樣式。dom型xss其實是一種特殊型別的反射型xss,它是基於dom文件物件模型的一種漏洞。在 頁面中有許多頁面的元素,當頁面到達瀏覽器時瀏覽器會為頁面建立乙...