注入點Fields:
注冊頁面會引用如下方法:
?
$fields 變量是從 $fields=$_POST['fields']; 這里獲取, 在代碼里沒有過濾。
打印 fields 數據查看:
?
從代碼上看
$field_sql.=",`{$k}`='{$f_value}'";
最終會變成:
,`truename`='111111',`email`='12345'
因為 $field_sql 最終會引入 一個 update語句:
?
可以打印一下看看:
?
最后在 truename或email位置報錯注入即可:
?
注入點username:
?
關于用戶名位置, 代碼用了下面的函數過濾:
?
?
再看看 safe_html函數:
正則匹配到關鍵字后直接運行??? showmsg函數:
?
?
看樣子這個函數只是正則匹配后提示信息的作用, 并未能過濾注入:
?
?