滲透測試學習1 DVWA之XSS

2021-09-14 00:28:15 字數 2251 閱讀 2586

php原始碼:

<?php 

// is there any input?if(

array_key_exists

("name"

,$_get)&&

$_get

['name']!=

null

)?>

從原始碼看出 , 伺服器端直接接收引數$_get[ 『name』 ]沒做任何處理,可以直接輸入

alert

(/xss/

)<

/script>

漏洞利用成功

php原始碼

<?php 

// is there any input?if(

array_key_exists

("name"

,$_get)&&

$_get

['name']!=

null

)

";}

?>

str_replace() 函式以其他字元替換字串中的一些字元(區分大小寫),原始碼中把刪掉了。

雙寫繞過

輸入

ipt>

alert

(/xss/

)<

/script>

成功彈窗

大小寫混合

輸入

alert

(/xss/

)<

/script>

成功彈窗

php原始碼

<?php 

// is there any input?if(

array_key_exists

("name"

,$_get)&&

$_get

['name']!=

null

)

";}

?>

原始碼中利用正規表示式將雙寫和大小寫混合繞過不在有效,使用其他標籤,如img,iframe等

>

<

/img>

成功彈窗

php原始碼

<?php 

// is there any input?if(

array_key_exists

("name"

,$_get)&&

$_get

['name']!=

null

)

";}

// generate anti-csrf token

generatesessiontoken()

;?>

原始碼使用htmlspecialchars():

把預定義的一些字元轉換為 html 實體

& (和號)成為 &

" (雙引號)成為 "

' (單引號)成為 '

< (小於)成為 <

> (大於)成為 ">>

如:

<?php 

$str

="this is someboldtext."

;echo

htmlspecialchars

($str);

?>

上面**的 html 輸出如下(檢視源**):

>

>

this is some >bold> text.

body

>

html

>

上面**的瀏覽器輸出如下:

this is some >

boldb

>

text.

從這篇文章了解到htmlspecialchars過濾未必能奏效。傳送門

但對於本題來說好像並沒有辦法能夠繞過(能繞過的大神可以教一下)

待續…新手指南:dvwa-1.9全級別教程

1 DVWA之檔案上傳(一)

實驗環境為三颱虛擬機器,網路互通,分別是 1 kali,ip為192.168.230.131 2 win10,ip為192.168.230.142 3 server 2019,ip為192.168.230.128。已搭好dvwa環境 以下為低級別 if isset post upload else ...

滲透測試之XSS 二

window.onload function script 二 篡改鏈結指向流量url 刷流量 只需將上面的到指定url即可 beef xss 第一步 在kali終端開啟beef service apache2 start 第二步 開啟apache服務 cd var www html 第三步 cd到...

基於DVWA的XSS學習 1

儲存型xss low伺服器核心 相關函式介紹 trim string,charlist 函式移除字串兩側的空白字元或其他預定義字元,預定義字元包括 t n x0b r以及空格,可選引數charlist支援新增額外需要刪除的字元。mysql real escape string string,conn...