實驗環境是合天智匯的裏面的xss九個實驗
實驗一:
關鍵代碼如下
直接上xss的payload
實驗二:
關鍵代碼如下:
這裏只是過濾了<script>以及</script>關鍵字,可以使用大寫繞過
實驗三:
關鍵代碼:
preg_replace函數的作用是過濾<script>和</script>的關鍵字以及其大小寫,替換成空,可以構造payload如下圖
實驗四:
關鍵代碼:
這裏只是過濾了關鍵字script,換個payload接着來
實驗五:
關鍵代碼:
這裏過濾的是alert函數後面有個 i 表示忽略大小寫。payload如下:
實驗六:
關鍵代碼:
這裏主要通過php語法繞過,每個語句通過分號結束。
那麼可以構造如下的payload
執行後源代碼的情況如下:
實驗七:
關鍵代碼:
htmlentities函數可以把一些符號實體化。如下
可以看到單引號沒有被過濾,和實驗六基本差不多
實驗八、實驗九:
小白剛學,可以看這個地方的具體解決方案:https://blog.csdn.net/u012763794/article/details/48215585
實驗十:
關鍵代碼:
和上面的實驗六差不多。payload: ;alert(123);