PHP雙位元組 寬位元組編碼漏洞

2021-12-29 21:17:58 字數 493 閱讀 8870

用乙個demo.php顯示效果,**如下:

<?php

header("content-type:text/html;charset=gb2312");

echo $_get["str"];               //受汙染的,但還有gpc

echi "

";echo addslashes($_get["str"]);    //呼叫addslashes函式過濾有害字元

?>

此時gpc=on。先看結果

1) 2) '

3) /demo.php?str=%d5'

例項2中,php被gpc和addslashes過濾了,但3卻沒有。

這個%d5'也可以寫出%d5%27。當提交%d5'時 ' 會被轉義,整個字元為 %d5\',\的編碼為5c。

而%d5%5c高8位合併編碼為漢字誠,\被我們非法利用,最終%d5'經轉義合併編碼為「誠' 」進入sql不做過濾。

作者:lcx.cc

寬位元組注入 GBK雙位元組繞過

addslashes 函式返回在預定義字元之前新增反斜槓的字串 php addslashes 函式 在mysql中,用於轉義 即在字串中的符號前加上 的函式有addslashes,mysql real escape string,mysql escape string等,還有一種情況是magic q...

寬位元組注入漏洞

1 經典sql注入漏洞 例子1是沒有任何sql注入防護措施的php程式,它存在sql注入漏洞。html view plain copy php name get name conn mysql connect localhost root root if conn null mysql select...

關於雙位元組漏洞的檢測

關於雙位元組漏洞的檢測 from url by 職業欠錢 昨天花了點時間去看寬字元的問題,才發現之前的理解一直有誤。df 被php轉義 開啟gpc 用addslashes函式,或者icov等 單引號被加上反斜槓 變成了 df 其中 的十六進製制是 5c 很好,現在 df df 5c 27 其實這也沒...