티스토리 뷰

관리자 메일 발송 코드에서 $s_que 변수를 이용한 SQL Injection을 일으킬 수 있는 코드가 발견되어 패치합니다.

첨부된 admin_sendmail_ok.zip 파일의 압축을 풀면 나오는 admin_sendmail_ok.php파일을 사용하시는 제로보드4의 디렉토리에 덮어쓰시면 됩니다.

수정된 부분은 다음과 같습니다.

= admin_sendmail_ok.php ===============================================================

@@ -28,16 +28,18 @@
        if(!$true) $true = 0;
        if(!$nomailing) $nomailing = 0;
        if(!$sendnum) $sendnum = 100;
+    $group_no = (int)$group_no;
+    $s_que = '';
        if(!$total_member_num) {
                $temp=mysql_fetch_array(mysql_query("select count(*) from $member_table where group_no='$group_no'",$connect));
                $total_member_num=$temp[0];
        }

        if($cart) {
-               $temp=explode("||",$cart);
-               $s_que=" and ( no='$temp[1]' ";
-               for($i=2;$i<count($temp);$i++) $s_que.=" or no='$temp[$i]' ";
-               $s_que.=" )";
+               $temp = explode("||",$cart);
+        for($i=0;$i<count($temp);$i++) $target_srls[] = (int)$temp[$i];
+        $s_que = sprintf(' and ( no in (%s) )', "'".implode("','", $target_srls)."'");
        } else {


===============================================================================

위에서 - 가 붙은 줄은 삭제된 것을 의미하며 +가 붙은 줄은 추가된 것을 의미합니다.

이 보안버그를 알려주신 달팽이 (ID : mirr1004)님께 감사의 말씀 드립니다.


혹시 이 패치 적용후 메일 발송에 문제가 생기거나 보안 버그가 지속적으로 발견되면 꼭 알려주시면 감사하겠습니다.


원본 글 : http://www.nzeo.com/bbs/zboard.php?id=cgi_download2&no=57
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함