Discuz 是國內很流行的論壇系統,被黑的網站應該會很多吧。不過 " /> 五月婷婷开心综合,柠檬福利第一导航在线,特级a毛片

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP 小心urldecode引發的SQL注入漏洞

Ihipop 學校的 Discuz X1.5 論壇被黑,在那里吵了一個下午。Google 一下“Discuz! X1-1.5 notify_credit.php Blind SQL injection exploit”,你就知道。

Discuz 是國內很流行的論壇系統,被黑的網站應該會很多吧。不過我對入侵別人的網站不感興趣,同時也鄙視那些代碼都不會寫只會使用別人放出的工具攻擊的所謂的“黑客”。


粗略看了一下代碼,這個 SQL 注入漏洞是 urldecode 函數造成的。在 php 手冊中,urldecode 函數下面有一個警告:

The superglobals $_GET and $_REQUEST are already decoded. Using urldecode() on an element in $_GET or $_REQUEST could have unexpected and dangerous results.

而 Discuz 的開發人員(估計是新手)畫蛇添足,多加了一個 urldecode:
復制代碼 代碼如下:
foreach($_POST as $k => $v) {
$value = urldecode($v);
$this->setParameter($k, $value);
}

單引號被 urlencode 兩次以后是 %2527,然后 POST,php 內部在生成全局變量 $_POST 的時候會先 urldecode,得到 %27,然后 php 會檢查 Magic Quotes 的設置,但是無論是否開啟 Magic Quotes,%27 都不會被 addslashes,因為這時根本沒有單引號。但是這時如果你在 php 代碼中畫蛇添足的加上 urldecode,%27就變成單引號了,然后……你懂的。

在我初學 php 的時候,看的是學校圖書館的一本爛書,里面根本就沒寫 php 在處理表單的時候會自動 urldecode,所以自己用 urldecode 函數來解碼(依稀記得書上好像也是這么寫的,真是誤人子弟啊)。

總結一下,就是:1、選擇一本好書非常重要;2、慎用 urldecode 函數。3、注意 php 手冊中的警告。
原文來自 http://demon.tw/programming/php-urldecode-sql-injection.html

php技術PHP 小心urldecode引發的SQL注入漏洞,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久夜色国产精品噜噜 | 九九视频在线看精品 | 一区二区三区 亚洲区 | 国产成人精品亚洲日本在线 | 亚洲欧美日韩综合一区 | 亚洲成人7777 | 婷婷六月激情在线综合激情 | 国产玖玖视频 | 欧美一卡2卡3卡4卡无卡网老狼 | 日韩在线一区二区三区免费视频 | 韩国毛片 | 国产精品久久久久久久久齐齐 | 久久久性| www.欧美视频 | 亚洲福利在线看 | 精品亚洲国产国拍 | 上色天天综合网 | 国产亚洲福利精品一区二区 | 四虎永久地址4hu紧急入口 | 国产成人永久免费视 | 久久国产麻豆 | 成人黄视频在线观看 | 九九国产在线视频 | 色婷婷欧美 | 色四月婷婷 | 婷婷综合亚洲 | 久久国产精品-国产精品 | 国产1区在线观看 | 在线播放12p | 99综合色 | 久久久久综合网久久 | 91观看视频 | 2021一本久道 | 色婷婷色综合激情国产日韩 | 精品91一区二区三区 | 精品福利在线观看 | 国产在视频| 中文字幕日韩欧美一区二区三区 | 国产午夜在线观看视频播放 | 另类国产精品一区二区 | 97国产大学生情侣11在线视频 |