리눅스 분류
웹서버구축 보안점검가이드[5] - 웹 패키지 S/W 관리
작성자 정보
- 웹관리자 작성
- 작성일
컨텐츠 정보
- 15,896 조회
- 0 추천
- 목록
본문
제 6 장 웹 패키지 S/W 관리
제1절 사용 중인 웹 패키지 S/W 파악
현재 홈페이지 내에서 사용 중인 웹 패키지 S/W를 파악하고, 리스트를 구축하여 관리한다.
특히 공개용 웹 게시판의 경우, 소스가 공개돼 있어 취약점이 자주 발표되고 있고 또한 취약점 패치가 바로 이루어지지 않는 경우가 있을 수 있어, 중요한 웹 서버에서는 가능한 사용을 하지 않도록 한다. 중요 웹 서버에서 부득이 하게 공개용 웹 게시판을 사용할 경우에는 필히 웹 방화벽을 적용, 운영하여야 한다.
제2절 주기적인 취약점 및 패치 확인
사용 중인 웹 패키지 S/W의 새로운 취약점 발견 여부 및 해당 취약점에 대한 패치를 주기적으로 실시하여야 한다. 주요 보안 사이트와 보안 메일링 리스트를 이용해 주요 최신 취약점을 확인하여 취약점 발표 여부와 함께 패치를 진행하도록 한다.
가. 주요 웹 패키지 리스트
- 제로보드 (http://www.nzeo.com)
- 테크노트 (http://www.technote.com)
- phpBB (http://www.phpbb.com)
나. 주요 보안 취약점 발표 사이트
- Securityfocus (http://www.securityfocus.com)
- Xfocus (http://xforce.iss.net/xforce/alerts/advisories)
- Microsoft (http://www.microsoft.com/technet/security/advisory/default.mspx)
- FrSIRT (http://www.frsirt.com/)
- milw0rm (http://www.milw0rm.com/)
다. 주요 보안관련 메일링 리스트
- Securityfocus (http://www.securityfocus.com/archive)
- Securiteam (http://www.securiteam.com/)
제3절 주요 웹 패키지 취약점 리스트
1. 제로보드
제로보드는 사용의 편리성과 공개 프로그램으로 인해 가장 많이 사용되고 있는 게시판 프로그램 중의 하나이다. 국내 웹 호스팅 업체, 해외 동포 사이트, 중국 사용자 등 다수의 사이트에서 설치, 운용 중이다. 중국의 경우 한국 IT 기술을 모방하는 경향이 있어, 대만의 제로보드 사용자 포럼(http://czeo.com/) 까지 구성될 정도로 폭넓게 사용 중이다.
현재, 제로보드 5 버전이 개발 중에 있으며, 별도의 홈페이지를 통해 베타버전을 다운로드, 테스트 해볼 수 있다.
- 제로보드 공식 사이트 : http://www.nzeo.com
- 제로보드 5 버전 공식 사이트 : http://beta.zb5.zeroboard.com/
가. 최근 발표된 보안 취약점 내역
● 2004년 12월 20일 취약점 패치(www.bugtraq.org에 게시된 취약점)
- 파일 노출 취약점(다운로드 취약점)
시스템 내부 중요 파일들의 내부 정보를 노출시킨다.
- 외부 소스 실행 취약점(원격 파일 삽입 취약점)
include 항목의 변수를 외부에서 설정할 수 있어 원격의 파일을 참조시켜 시스템정보를 파악하고 웹 서비스 권한을 획득 할 수 있다.
● 2005년 1월 13일 취약점 패치(www.bugtraq.org에 게시된 취약점)
- XSS 취약점
서버 설정에 따라서 $dir, $_zb_path 변수를 이용, 외부에서 임의의 스크립트를 실행하는 문제로써 preg_replace에서 정규 표현식을 이용할 때 quotes를 하지 않아 발생
● 2005년 4월 4일 취약점 패치 (4.1 pl7 패치)
- 비밀글을 임의로 읽을 수 있는 보안 취약점 등
※ 게시판 운영과 관련 있는 취약점으로 홈페이지 변조와는 관련이 없는 취약점임
● 2006년 3월 15일 취약점 패치 (4.1 pl8 패치)
- 임의의 스크립트 파일 업로드 가능 취약점
이미지 파일 업로드 부분에서 스크립트 파일을 업로드 할 수 있는 취약점 수정
- SQL Injection 취약점 패치
- XSS 취약점 패치
● 2006년 12월 3일 취약점 패치
- htaccess 파일 업로드로 인한 취약점
이미지 파일 업로드 부분에서 스크립트 파일을 업로드 할 수 있는 취약점 수정
나. 보안 대책
● 기존 제로보드 프로그램을 일부 수정하여 사용하고 있는 경우
- 새로운 패치를 모두 설치할 경우, 운영 중인 게시판의 동작에 문제가 있을 수 있으므로 패치를 설치하지 않고,
- 현재 사용 중인 버전을 확인 후, 각 패치 버전별 수정내용을 확인하여 변경이 필요한 개별 파일의 소스를 수정하거나 부분 패치 파일을 설치한다.
- 제로보드 버전 확인 방법
http://www.홈페이지 주소/게시판 디렉토리명/license.txt
예) http://www.nzeo.com/bbs/license.txt
● 제로보드 프로그램을 수정 없이 그대로 사용 중인 경우,
- 가장 최신버전의 패치를 설치한다 (2007년 2월 현재, 4.1 pl8 발표 중).
● 제로보드 패치 다운로드
http://www.nzeo.com/bbs/zboard.php?id=cgi_download2
2. 테크노트
- 공식 사이트 : http://www.technote.co.kr/
가. 최근 발표된 취약점 내역
● 2004년 9월 5일 발표 취약점
- 테크노트 게시판에 파일 다운로드 시 파일 이름값을 이용하여 시스템 명령어를 실행 가능
● 테크노트 프로그램을 수정 없이 그대로 사용 중인 경우,
- 가장 최신버전의 패치를 설치한다 (2007년 2월 현재, TECHNOTE 6.9P 발표 중).
● 테크노트 패치 다운로드
http://www.technote.co.kr/php/technote1/board.php?board=bug&command=skin_insert&exe=insert_down_69p
나. 보안 대책
< print.cgi 수정 >
print.cgi 소스에서 31번째 라인에 있는 &parse; 함수의 바로 아래 라인에 아래의 코드를
추가한다.
&error_message‘( 파일명 확인’) if($FORM‘img’=~/\;/);
&error_message‘( 파일명 확인’) if($FORM‘img’=~/\%/);
&error_message‘( 파일명 확인’) if($FORM‘img’=~/\|/);
< library/Lib-5.cgi 수정 >
library/Lib-5.cgi 첫 번째 라인에 아래의 코드를 추가한다.
&error_message‘( 파일명 확인’) if($FORM‘filename’=~/\;/);
&error_message‘( 파일명 확인’) if($FORM‘filename’=~/\%/);
&error_message‘( 파일명 확인’) if($FORM‘filename’=~/\|/);
3. 그누보드
가. 공식 사이트 : http://sir.co.kr/?doc=_gb.php
나. 최근 발견된 보안 취약점
● 취약점 1 : 외부 PHP 소스 실행 취약점 (버전 3.40 이하)
- include 항목의 변수를 외부에서 설정할 수 있어 원격에 파일 참조시켜 시스템 정보를 파악하고 웹 서비스 권한을 탈취할 수 있다.
● 취약점 2 : 폼 메일을 이용한 스팸 메일 발송 (버전 3.38 이하)
- 스팸메일 발송 가능하다.
다. 보안 대책
● 취약점 1 : 외부 PHP 소스 실행 취약점
index.php에 아래 내용 추가
if (!$doc || ereg“( ://”, $doc))
$doc = “./main.php”;
● 취약점 2 : 폼메일을 이용한 스팸 메일 발송
formmail.php 내에 다음의 내용 추가
// 회원에게 메일을 보내는 경우 메일이 같은지를 검사
if ($mb[mb_email] != $email)
echo “”;
exit;
(3.38 이하 버전)
// 이전 폼 전송이 같은 도메인에서 온것이 아니라면 차단
if (!preg_match“( /^(http|https):\/\/$_SERVER[HTTP_HOST]/i”,
strtolower($_SERVER[HTTP_REFERER])))
echo “”;
exit;
출처 :
제1절 사용 중인 웹 패키지 S/W 파악
현재 홈페이지 내에서 사용 중인 웹 패키지 S/W를 파악하고, 리스트를 구축하여 관리한다.
특히 공개용 웹 게시판의 경우, 소스가 공개돼 있어 취약점이 자주 발표되고 있고 또한 취약점 패치가 바로 이루어지지 않는 경우가 있을 수 있어, 중요한 웹 서버에서는 가능한 사용을 하지 않도록 한다. 중요 웹 서버에서 부득이 하게 공개용 웹 게시판을 사용할 경우에는 필히 웹 방화벽을 적용, 운영하여야 한다.
제2절 주기적인 취약점 및 패치 확인
사용 중인 웹 패키지 S/W의 새로운 취약점 발견 여부 및 해당 취약점에 대한 패치를 주기적으로 실시하여야 한다. 주요 보안 사이트와 보안 메일링 리스트를 이용해 주요 최신 취약점을 확인하여 취약점 발표 여부와 함께 패치를 진행하도록 한다.
가. 주요 웹 패키지 리스트
- 제로보드 (http://www.nzeo.com)
- 테크노트 (http://www.technote.com)
- phpBB (http://www.phpbb.com)
나. 주요 보안 취약점 발표 사이트
- Securityfocus (http://www.securityfocus.com)
- Xfocus (http://xforce.iss.net/xforce/alerts/advisories)
- Microsoft (http://www.microsoft.com/technet/security/advisory/default.mspx)
- FrSIRT (http://www.frsirt.com/)
- milw0rm (http://www.milw0rm.com/)
다. 주요 보안관련 메일링 리스트
- Securityfocus (http://www.securityfocus.com/archive)
- Securiteam (http://www.securiteam.com/)
제3절 주요 웹 패키지 취약점 리스트
1. 제로보드
제로보드는 사용의 편리성과 공개 프로그램으로 인해 가장 많이 사용되고 있는 게시판 프로그램 중의 하나이다. 국내 웹 호스팅 업체, 해외 동포 사이트, 중국 사용자 등 다수의 사이트에서 설치, 운용 중이다. 중국의 경우 한국 IT 기술을 모방하는 경향이 있어, 대만의 제로보드 사용자 포럼(http://czeo.com/) 까지 구성될 정도로 폭넓게 사용 중이다.
현재, 제로보드 5 버전이 개발 중에 있으며, 별도의 홈페이지를 통해 베타버전을 다운로드, 테스트 해볼 수 있다.
- 제로보드 공식 사이트 : http://www.nzeo.com
- 제로보드 5 버전 공식 사이트 : http://beta.zb5.zeroboard.com/
가. 최근 발표된 보안 취약점 내역
● 2004년 12월 20일 취약점 패치(www.bugtraq.org에 게시된 취약점)
- 파일 노출 취약점(다운로드 취약점)
시스템 내부 중요 파일들의 내부 정보를 노출시킨다.
- 외부 소스 실행 취약점(원격 파일 삽입 취약점)
include 항목의 변수를 외부에서 설정할 수 있어 원격의 파일을 참조시켜 시스템정보를 파악하고 웹 서비스 권한을 획득 할 수 있다.
● 2005년 1월 13일 취약점 패치(www.bugtraq.org에 게시된 취약점)
- XSS 취약점
서버 설정에 따라서 $dir, $_zb_path 변수를 이용, 외부에서 임의의 스크립트를 실행하는 문제로써 preg_replace에서 정규 표현식을 이용할 때 quotes를 하지 않아 발생
● 2005년 4월 4일 취약점 패치 (4.1 pl7 패치)
- 비밀글을 임의로 읽을 수 있는 보안 취약점 등
※ 게시판 운영과 관련 있는 취약점으로 홈페이지 변조와는 관련이 없는 취약점임
● 2006년 3월 15일 취약점 패치 (4.1 pl8 패치)
- 임의의 스크립트 파일 업로드 가능 취약점
이미지 파일 업로드 부분에서 스크립트 파일을 업로드 할 수 있는 취약점 수정
- SQL Injection 취약점 패치
- XSS 취약점 패치
● 2006년 12월 3일 취약점 패치
- htaccess 파일 업로드로 인한 취약점
이미지 파일 업로드 부분에서 스크립트 파일을 업로드 할 수 있는 취약점 수정
나. 보안 대책
● 기존 제로보드 프로그램을 일부 수정하여 사용하고 있는 경우
- 새로운 패치를 모두 설치할 경우, 운영 중인 게시판의 동작에 문제가 있을 수 있으므로 패치를 설치하지 않고,
- 현재 사용 중인 버전을 확인 후, 각 패치 버전별 수정내용을 확인하여 변경이 필요한 개별 파일의 소스를 수정하거나 부분 패치 파일을 설치한다.
- 제로보드 버전 확인 방법
http://www.홈페이지 주소/게시판 디렉토리명/license.txt
예) http://www.nzeo.com/bbs/license.txt
● 제로보드 프로그램을 수정 없이 그대로 사용 중인 경우,
- 가장 최신버전의 패치를 설치한다 (2007년 2월 현재, 4.1 pl8 발표 중).
● 제로보드 패치 다운로드
http://www.nzeo.com/bbs/zboard.php?id=cgi_download2
2. 테크노트
- 공식 사이트 : http://www.technote.co.kr/
가. 최근 발표된 취약점 내역
● 2004년 9월 5일 발표 취약점
- 테크노트 게시판에 파일 다운로드 시 파일 이름값을 이용하여 시스템 명령어를 실행 가능
● 테크노트 프로그램을 수정 없이 그대로 사용 중인 경우,
- 가장 최신버전의 패치를 설치한다 (2007년 2월 현재, TECHNOTE 6.9P 발표 중).
● 테크노트 패치 다운로드
http://www.technote.co.kr/php/technote1/board.php?board=bug&command=skin_insert&exe=insert_down_69p
나. 보안 대책
< print.cgi 수정 >
print.cgi 소스에서 31번째 라인에 있는 &parse; 함수의 바로 아래 라인에 아래의 코드를
추가한다.
&error_message‘( 파일명 확인’) if($FORM‘img’=~/\;/);
&error_message‘( 파일명 확인’) if($FORM‘img’=~/\%/);
&error_message‘( 파일명 확인’) if($FORM‘img’=~/\|/);
< library/Lib-5.cgi 수정 >
library/Lib-5.cgi 첫 번째 라인에 아래의 코드를 추가한다.
&error_message‘( 파일명 확인’) if($FORM‘filename’=~/\;/);
&error_message‘( 파일명 확인’) if($FORM‘filename’=~/\%/);
&error_message‘( 파일명 확인’) if($FORM‘filename’=~/\|/);
3. 그누보드
가. 공식 사이트 : http://sir.co.kr/?doc=_gb.php
나. 최근 발견된 보안 취약점
● 취약점 1 : 외부 PHP 소스 실행 취약점 (버전 3.40 이하)
- include 항목의 변수를 외부에서 설정할 수 있어 원격에 파일 참조시켜 시스템 정보를 파악하고 웹 서비스 권한을 탈취할 수 있다.
● 취약점 2 : 폼 메일을 이용한 스팸 메일 발송 (버전 3.38 이하)
- 스팸메일 발송 가능하다.
다. 보안 대책
● 취약점 1 : 외부 PHP 소스 실행 취약점
index.php에 아래 내용 추가
if (!$doc || ereg“( ://”, $doc))
$doc = “./main.php”;
● 취약점 2 : 폼메일을 이용한 스팸 메일 발송
formmail.php 내에 다음의 내용 추가
// 회원에게 메일을 보내는 경우 메일이 같은지를 검사
if ($mb[mb_email] != $email)
echo “”;
exit;
(3.38 이하 버전)
// 이전 폼 전송이 같은 도메인에서 온것이 아니라면 차단
if (!preg_match“( /^(http|https):\/\/$_SERVER[HTTP_HOST]/i”,
strtolower($_SERVER[HTTP_REFERER])))
echo “”;
exit;
출처 :
"무단배포금지: 클라우드포털(www.linux.co.kr)의 모든 강좌는 저작권에 의해 보호되는 콘텐츠입니다. 무단으로 복제하여 배포하는 행위는 금지되어 있습니다."
관련자료
-
이전
-
다음
댓글 0
등록된 댓글이 없습니다.