官網:
級別low
檢視原始碼:
分析<?php
分析name變數沒有過濾,直接輸出header ("x-xss-protection: 0");
// is there any input?
if( array_key_exists( "name", $_get ) && $_get[ 'name' ] != null )
?>
payload
/vulnerabilities/xss_r/?name=
lang變數通過document.location.href來獲取url,並沒有過濾就輸入到了option標籤中
級別:medium
檢視原始碼:
<?php
// is there any input?
if ( array_key_exists( "default", $_get ) && !is_null ($_get[ 'default' ]) )
分析:
如果是impossible難度則decodeuri="",意思就是不解碼,那麼標籤就會被過濾,無法閉合標籤和建立新標籤,所以無法xss
級別:low
檢視原始碼:
<?php
if( isset( $_post[ 'btnsign' ] ) )
?>
分析:trim()函式 stripslashes() 函式 mysqli_real_escape_string() 函式只是對/型別的處理過濾轉碼,主要是對資料庫的保護並未設計的xss的內容,故可以直接xss
級別:medium
檢視原始碼:
級別:impossible<?php
分析:對message和上乙個一樣,沒希望突破,對name來說preg_replace( '/if( isset( $_post[ 'btnsign' ] ) )
?>
payload:
name:message:lmg66
檢視原始碼:
<?php
if( isset( $_post[ 'btnsign' ] ) )
// generate anti-csrf token
generatesessiontoken();
?>
分析: redux原始碼分析(三) 原始碼部分
下面是每個部分的一些解讀 createstore apicreatestore reducer,initialstate enhancer 曾經非常好奇這個函式的第二個引數到底是initialstate還是enhancer,因為見過兩種寫法都有的,以為是版本問題。看了原始碼才發現,都可以的。如果你不...
junit部分原始碼分析
通過對junit的粗略了解,大致的知道了這裡面的幾種模式 junit原始碼與之spring hibnate原始碼相比,就比較簡單了,但是麻雀雖小,五臟俱全,這裡面用到了幾 種設計模式,也是乙個短小精悍 非常完所的乙個框架。下面講乙個它的整體的框架吧 先得到testresult的物件,然後通過它的物件...
junit部分原始碼分析
通過對junit的粗略了解,大致的知道了這裡面的幾種模式 junit原始碼與之spring hibnate原始碼相比,就比較簡單了,但是麻雀雖小,五臟俱全,這裡面用到了幾 種設計模式,也是乙個短小精悍 非常完所的乙個框架。下面講乙個它的整體的框架吧 先得到testresult的物件,然後通過它的物件...