홈 > 고객센터 > 알립니다 > IT뉴스
알립니다
 공지사항
 서버 작업 안내
 IT 뉴스
 도메인 뉴스
 나야보드
서비스 매뉴얼
1:1 문의
전화상담예약
자주 묻는 질문
미확인 입금자 안내
호스팅 안내 카툰
SQL injection 패치 (제로보드 4.X) 0     16737
2007/07/09 17:10:17
http://www.nzeo.com/bbs/zboard.php?id=cgi_download2&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&select_arrange=headnum&desc=asc&no=56
http://www.nzeo.com/bbs/zboard.php?id=cgi_download2&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&select_arrange=headnum&desc=asc&no=57
 

download.php 보안패치 파일 수정 + SQL injection 패치 파일 (2007. 5. 9)

 

일전 download.php의 sql injection 문제에 대해 패치를 하면서 띄워쓰기를 잘못하여 다운로드 동작이 정상적으로 되지 않던 문제가 발생하였습니다.
많은 분들이 통보를 해주셨는데 제가 미처 확인하지 못하고 있다가 이제야 수정된 파일을 올립니다.
너무 죄송합니다.

그리고 zboard.php, _head.php, member_memo3.php 파일에서 $s_que변수가 별도의 초기화 없이 사용되어 역시 SQL injection 보안 버그가 있음을 알려주셔서 lib.php 에서 $s_que변수를 초기화하도록 수정하였습니다.

첨부된 20070509.patch.zip 파일의 압축을 풀면  download.php, lib.php 2개의 파일이 나오는데 이를 기존 사용하시던 제로보드에 덮어써주시면 됩니다.

다운로드 패치 오류 신고해주신 이동하님과 $s_que변수를 이용한 취약점을 알려주신 조주봉님, 그리고 관련된 모든 분들께 감사하다는 말씀드립니다.
 

 

관리자 메일 발송에서 SQL Injection 발생 보안 버그 수정

 

관리자 메일 발송 코드에서 $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)님께 감사의 말씀 드립니다.


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

 

출처 nzeo.com

악성코드,10개중 6개는 트로이목마 2007-07-11
보안경고창 `클릭` 정보확인을... 2007-07-05
내선안내(새창) 메일보내기 cs@nayana.com