--- 디지털 인쇄로 책을...

     ---리룩스서버컴퓨터 백업

  공개 자료실 

 文學위의 文學 출판사입니다. PDF로 전환하여 복사기로 책을 만듭니다. 자세한 내용은, '디지털 인쇄'에서 확인해 보세요!

리눅스(Linux) 서버

현재 제로보드의 일부 보안버그가 발표되었습니다.
문제는 include() 사용시에 선언된 변수를 GET 방식으로 전달이 가능하게 되었기 때문입니다.

이미 nzeo.com 공지에 뜬 이상 수 많은 사람들이 이 문제점을 발견했을 것이고,
마음만 먹는다면 제로보드가 설치된 홈페이지에 다음과 같은 일들을 할 수 있습니다.

1. 제로보드 자료실 첨부파일 모두 삭제가능(호스팅서버일 경우 타계정 사용자의 자료까지 삭제가능)
2. 제로보드가 설치된 디비내용 모두 삭제가능.
3. 디비계정 정보 유출(대부분 디비계정과 텔넷계정을 동일하게 사용하시죠?)

이제 남은 방법은 빠른 시간안에 패치하는 방법밖엔 없습니다.

패치방법)
        login.php

        68 line)
                include $file;
        =>
                if($id) include $file;

이 패치는 간단하므로 호스팅서버처럼 여러 사용자가 사용할때 다음 명령을 통해 한번에 모두 패치할 수 있습니다.

먼저 제로보드가 설치된 디렉토리로 이동하거나 호스팅서버라면 root 권한을 얻은뒤 /home (사용자 홈디렉토리)로 이동합니다.
        cd /home

다음은 문제가 되는 소스를 찾아서 출력하는 것으로 제로보드 이외의 소스가 있는지 패치하기전에 확인해야 합니다.
        grep -r "include \$file;" `find ./ -name login.php`

        문제의 소스) ./XXXXX1/public_html/zboard/login.php:    include $file;
        패치된 소스) ./XXXXX1/public_html/zboard/login.php:    if($id) include $file;

만약, 검색결과중 제로보드 이외의 다른 소스가 있다면 다음 처럼 파일하나씩 수작업으로 패치해야 합니다.
        perl -pi -e 's,\tinclude \$file;,\tif\(\$id) include \$file\;,g' ./XXXXX1/public_html/zboard/login.php

검색결과가 모두 제로보드 소스라면 다음 명령을 통해 현재 디렉토리 하위에 설치된 모든 소스를 자동패치하면 됩니다.
이때, 이미 패치된 소스와는 include 구문앞에 탭의 유무로 구분하기때문에 두번 패치되는 일은 없습니다.
하지만 사용자가 임의로 수정해서 탭이 없어진 경우라면 수정이 안될겁니다.
        grep -rl "include \$file;" `find ./ -name login.php`|xargs -n1 perl -pi -e 's,\tinclude \$file;,\tif\(\$id) include \$file\;,g'

마지막으로 처음 실행했던 검색명령을 통해 패치된 내역을 확인하면 됩니다.
        grep -r "include \$file;" `find ./ -name login.php`

        패치된 소스) ./XXXXX1/public_html/zboard/login.php:  if($id) include $file;
        패치된 소스) ./XXXXX2/public_html/bbs/login.php:   if($id) include $file;

추신) 위 스크립트를 통해 변환했을 경우 만약 잘못되더라도 되돌릴 방법이 없습니다.
따라서 미리 패치할 파일을 백업받아놓으시거나 하나의 파일만 테스트해본뒤 사용하시기 바랍니다.
추신2) 서버에 perl 이 설치되어 있어야 하며 RedHat Linux 7.1, 8.0 에서 테스트되었습니다.
번호 제목 글쓴이 날짜 조회 수
50 센드메일 -설정하기 문학 2005.04.09 2764
49 메가패스 전용선 가격 문학 2004.04.28 2774
48 FTP 서버 구축하기에서 보내기가 안됩니다. 문학 2004.05.15 2794
47 보내온 스펨메일(?) 중에... 문학 2004.05.16 2795
46 한컴 리눅스 센드메일( 리눅스 21) file 문학 2007.04.15 2806
45 '가격파괴' 100만원대 서버 등장 file 문학 2004.04.27 2817
44 아파치 웹서버 사용 시 무단 링크 방지법 문학 2004.05.27 2822
43 제로보드에 대하여... (4) ( 리눅스 30) file 문학 2007.04.15 2828
42 제로보드에 대하여...( 리눅스 24) file 문학 2007.04.15 2830
41 제로보드에 대하여... (2) ( 리눅스 26) file 문학 2007.04.15 2838
40 한컴 리눅스 센드메일( 리눅스 20) file 문학 2007.04.15 2844
39 [re] FTP 서버 구축하기에서 보내기가 안됩니다. 문학 2004.05.15 2853
38 제로보드에 대하여... (2) ( 리눅스 25) file 문학 2007.04.15 2854
» 제로보드 4.1 보안버그 패치스크립트(서버관리자용) 문학 2005.03.18 2880
36 제로보드에 대하여... (4) ( 리눅스 32) file 문학 2007.04.15 2881
35 메일서버를 새로 구축하다. 문학 2004.05.16 2897
34 제로보드에 대하여...( 리눅스 23) file 문학 2007.04.15 2897
33 한컴 리눅스 센드메일( 리눅스 19) file 문학 2007.04.15 2903
32 PHP활용하기...( http://kr.hancom.com/ )에서 배우고저 옮겨 옮 문학 2004.09.30 2913
31 자이언트 서버( 불루웹- http://www.blueweb.co.kr ) 문학 2004.04.28 2937