|
넥스트라인 기술지원부 김삼수(kiss@nextline.co.kr)
웹 어플리케이션 보안템플릿 (PHP 버전)
KWST (KISA Web Security Template)
최근 홈페이지에 존재하는 웹 어플리케이션의 취약점을 이용하여 SQL Injection, iframe 삽입 등의 공격이 비번히 이루어지고 있으며, 이러한 웹 해킹으로 인하여 홈페이지 변조, 데이터유실, 심지어 시스템까지 해킹에 노출되어 막대한 피해를 입는 사례가 보고되고 있습니다.
웹 어플리케이션의 취약점을 보완하기 위해서는 취약점의 원인이 되는 홈페이지 소스를 직접 수정해야 하나 대부분의 중소 홈페이지의 경우, 개발인력의 미비로 인해 침해사고가 지속적으로 재발하는 문제가 발생하고 있습니다. KWST는 웹인터페이스를 이용한 간단한 설정으로 홈페이지 소스에 SQL Injection, iframe, XSS, 소스변조, 아이피 차단 등의 보안설정을 할 수 있는 보안 툴입니다.
KWST의 주요기능
지원하는 운영체제
UNIX
1. 보안성 강화
- OWASP 10대 취약점 중 주요 취약점을 해결
- 웹 해킹 탐지 우회 차단 기능 추가
- 소스코드 차원의 웹 어플리케이션 보안성 강화
2. 사용자 편리성 강화
- 관리자 페이지를 이용해 편리한 정책 설정 지원
- 운영 중인 프로그램 소스의 최소 수정만으로 적용 가능
3. 높은 호환성 지원
- 다양한 웹 서버 환경과 웹 어플리케이션에서 동작할 수 있는 호환성 지원
- 각 웹 어플리케이션 서버 버전에서 동작할 수 있도록 호환성 지원
4. 기대효과
- 웹 어플리케이션 개발과정에서의 보안성 강화 확보
- 웹 보안 템플릿 확산으로 국내 웹 어플리케이션의 보안성 향상
- 편리한 사용과정을 통해 기존 웹 어플리케이션 수정용이
* 제로보드 주의사항
- DB 연결오류시 소스삽입 해제파일
config.php
- 게시판 자료 업로드 오류시 소스삽입 해제파일
bbs/lib.php
bbs/download.php
bbs/include/list_check.php
- 아웃로그인이 없을 경우(게시판 상단 로그인만 있는 경우) 로그인 오류시 소스삽입 해제파일
bbs/login.php
bbs/login_check.php
bbs/outlogin.php
- 첨부파일 다운로드오류시 소스삽입 해제파일
bbs/_head.php
- 제로보드 게시판 추가 시 웹 어플리케이션 보안템플릿 단어(WORD)탭 비적용 설정
(제로보드 게시판 추가 시 불량단어등록 탭 부분으로 인해 웹 어플리케이션 보안템플릿 정책에 따라 해당 페이지가 차단되오니 웹 어플리케이션 보안템플릿 관리자 설정에서 단어(WORD) 정책을 비적용으로 설정 후 게시판을 추가합니다. 게시판 추가 후 단어(WORD) 정책 적용합니다.)
5 자동 소스수정 스크립트
웹 어플리케이션 보안템플릿(PHP)를 적용하기 위해서는 개별 소스에 KWST 설치경로를 include 시켜주는 구문을 포함시켜야 합니다. kwstphp.sh 스크립트는 /home 하위디렉토리의 php 확장자를 가진 모든 파일을 검색하여 소스를 자동으로 삽입하여 주는 스크립트입니다. (넥스트라인 설치지원 OS는 스크립트가 내장되어 있습니다.)
* KWST 소스수정 주의사항 - 자동 소스수정 스크립트 사용 시 기존 소스형식에 따라 오류가 발생할 수 있으니 소스 검토 후 사용하시기 바랍니다.
- KWST 소스 적용 후 홈페이지상에 구문에러가 발생하시면 해당 파일에서 KWST 소스 적용을 해제하시고 KWST의해 해당페이지가 차단되신 경우에는 KWST 관리자로 로그인하여 옵션부분을 점검하여 주시기 바랍니다.
- KWST 소스
define("__KWST_PHP_VERSION_BASE_DIR__", "KWST 프로그램 위치 절대경로"); include_once(__KWST_PHP_VERSION_BASE_DIR__."/kwst_referee.php"); ?>
6. kwstphp.sh 실행방법
스크립트 경로 : /root/bin/kwstphp.sh
실행방법
기본으로 kwstphp.sh 스크립트는 /home 파티션의 하위 모든디렉토리에 적용이 되며 스크립트 실행시 다음과 같이 적용된 파일의 리스트가 출력됩니다.(KWST 소스가 적용된 스크립트는 자동 SKIP 됩니다.)
[root@nextline ~]# /root/bin/kwstphp.sh
kwstphp.sh 스크립트를 실행 후 php 확장자를 가진 파일에 KWST 소스가 적용된 화면입니다.
- 특정 디렉토리만 적용하기
특정 디렉토리를 지정하여 KWST 소스를 적용하시고자 한다면 kwstphp.sh 스크립트의 dir="절대경로" 부분을 적절하게 수정하여 주시기 바랍니다.
적용 예)
/home/nextline 하위디렉토리에만 적용합니다.(절대경로를 적어주셔야 합니다.)
[root@nextline ~]# vi /root/bin/kwstphp.sh
dir="/home/nextline"
프로그램 다운로드
웹 어플리케이션 보안템플릿 (PHP 버전)
설치 및 운영방법
웹 어플리케이션 보안템플릿 메뉴얼
|