1. 程式人生 > >程式碼審計—Discuz!7.2/X1 第三方外掛SQL注入

程式碼審計—Discuz!7.2/X1 第三方外掛SQL注入

0x00 前言

內容說明:

烏雲編號:146 這個漏洞沒有辦法復現,我找不到這麼早之前的樣本了。所以只好借用烏雲來簡單分析和記錄一下了。還是有一點無奈的。要是有一個專門的練習審計的地方就好了。

0x01 start

在這裡插入圖片描述 這個是最重要的程式碼。

elseif($action == 'edit_mood' && moodid) {
          //moodid未初始化,直接代入sql查詢
	  $check = $db->result_first("SELECT * FROM {$tablepre}moodwall WHERE id='$moodid' AND uid='$discuz_uid
'"
); if(!$check || !$moodid) { showmessage('moodwall:moodwall_inc_php_2', 'plugin.php?id=moodwall&action=user_mood'); } $sql = "SELECT * FROM {$tablepre}moodwall WHERE id='$moodid'"; $query = $db->query($sql); $moodlist_edit = array(); while($mood_edit = $db->fetch_array
($query)) { $moodlist_edit[] = $mood_edit; }

這裡看的很清楚,就是moodid這個變數有問題。可以造成sql注入。