.

Booter 시스템 기능개선 및
서버 호스팅

- 과 업 지 시 서 -

2016. 10.

(주)제넷시큐리티

www.jennet.co.kr

Ⅰ		추진 개요

13 -

1. 과업 개요

가. 사 업 명 : Booter 시스템 기능개선 및 서버 호스팅

나. 사업목적 : 네트워크 취약점 점검 시스템 개발(탐색기능, 서버 통합
관리) 및 시스템 운영을 위한 해외 서버 호스팅

다. 사업예산 : 총 164,000천원(VAT포함)

라. 사업기간 : 2016. 9. 26. ~ 12. 9(2.5개월)

2. 추진배경 및 필요성

◦ 대규모 DDoS 공격으로 인하여 공공기관 및 주요 기업의 인터넷
서비스가 마비되는 피해가 지속적으로 발생

◦ DDoS 공격이 지속적으로 일어나고 있음에도 DDoS 공격에 대한
인식 부족으로 네트워크 관리가 체계적이지 못한 기업이 대다수

◦ 네트워크 부하 테스트를 통해 네트워크 구성에 대한 문제점을 식별하고 원활한 인터넷 서비스를 위한 개선방안 도출 필요

3. 과업 범위

가. 시스템 정보 및 네트워크 환경에 대한 분석 기능 구현

나. 다양한 DDoS 공격 메소드를 적용하여 모의 DDoS 공격 수행

다. 공격서버 실시간 모니터링 및 통합 제어 기능 구현

라. 시스템 설치 및 운영을 위한 최적의 서버 호스팅 확보

4. 기대 효과

◦ Booter 시스템을 활용하여 고객사의 네트워크 취약점을 식별하고개선 방안을 제시하여 DDoS 공격에 대한 대응력 확보

◦ 대상 시스템에 대한 주기적인 시스템 정보 수집으로 고객사의 네트워크에 대한 이력관리가 가능하여 DDoS 공격 증후 식별

◦ 서버 통합관리를 통하여 효율적인 Booter 시스템 운영 가능하며 시스템 업데이트 및 장애 발생에 대한 신속한 대처 가능

Ⅱ		추진 방안

1. 추진 목표

DDoS 공격 기능을 탑재한 Booter 시스템 개발과 서버 호스팅을 통해 고객사의 웹서버 및 네트워크 장비에 대한 모의공격을 수행하여 네트워크 취약점을 식별하고 DDoS 예방대책을 제공

2. 추진 전략

가. 점검 대상의 시스템 정보 및 네트워크 환경에 대한 탐색 기능

- 네트워크 취약점 점검 대상에 대한 시스템 정보와 네트워크 구성요소에 대한 정보가 부족하여 체계적인 점검과 사후관리가 제한됨.

- 대상 시스템에 대한 정보 수집·분석을 통해 효과적으로 네트워크 취약점을 점검하고 시스템 이력 관리를 위해 주기적인 리포팅 기능 구현

나. 네트워크 취약점 점검(부하 테스트)를 위한 DDoS 공격 기능

- 고객사의 웹서비스 및 네트워크 장비에 대한 부하 테스트를 위해 DDoS
공격이 구현 가능한 Booter 시스템을 구축

- 다양한 방식의 DDoS 공격 메소드를 적용하여 고객사의 네트워크 취약점을
식별하고 개선 방안을 제시하기 위한 보안 솔루션 마련

다. 시스템 상태 및 공격서버 제어를 위한 통합 관리 기능

- 공격 서버에 대한 모니터링과 통합 제어 기능을 구현하여 시스템 운영의 효율성과 관리 편의성을 확보

- 시스템 리소스 현황과 네트워크 사용량을 실시간으로 제공하여 공격 진행
상태를 확인하고 DDoS 공격 메소드별 자원 활용에 대한 분석 가능

라. 시스템 설치 및 운영에 최적화된 서버 호스팅 제공

- Booter 시스템 특성상 네트워크 환경(대여폭, 트래픽, 보안장비 등)에 상당한 영향을 받으므로 시스템 운영에 최적화된 IDC 식별 필요

- 서버 호스팅은 3개 지점(각 10대씩)으로 분산하여 트래픽 증가에 대처하고 IP Spoofing이 가능한 IDC 내에 시스템을 구축·운영

3. 시스템 구성도

3. 추진 일정

구 분	9월				10월				11월				12월
계약 체결
요구사항 및 시스템 분석
착수 보고회
시스템 설계 및 개발
서버호스팅 계약
중간 보고회
통합시험
검수/완료 보고회

Ⅲ		과업 내용

1. 공통사항

가. 시스템 개발에 소요되는 OS, 언어, 라이브러리, 데이터베이스는 별도 비용이 발생하지 않는 오픈소스를 활용

나. 운영체제는 데비안 계열의 리눅스를 사용하고 통제서버의 관리자 인터페이스는 wordpress를 활용하여 WEB 환경으로 제공

다. 명령 및 결과값 전송, 스케줄링, 통계 데이터 생성 등에 사용되는 데몬 개발에는 python을 사용하며, 호환성을 고려하여 개발

라. 통제서버, 탐색서버, 공격서버 간의 데이터는 암호화하여 전송

2. 탐색기능

가. 목    적 : 고객사의 시스템 정보 및 네트워크 정보 수집·분석

나. 주요기능 : 업/다운, 포트스캔, IP Lookup, Reverse DNS 등

구 분	내 용	비 고
① 포트스캔	․현재 서비스 중인 포트 정보 수집 ․수집된 포트정보를 활용하여 공격 수행 * 모의공격의 성공률을 높일 수 있도록 대상 시스템의 특성을 사용자에게 제공	Nmap
② 라우팅경로	․라우팅 경로를 수집·분석하여 고객사의 최적화된 인터넷 서비스 환경 도출	traceroute
③ 업/다운	․고객사의 인터넷 서비스(웹서버, 사이트) 가동상태를 확인 * 주기적인(분당) ping test를 통해 서비스의 가동상태 및 속도를 확인	ping test
④ IP Lookup	․IP 기본정보 수집(DNS, Country, Location, AS Number, ISP, whois 정보 등)	nslookup whois

다. 세부내용

(1) 포트스캔

- Nmap 스캔을 활용하여 대상 시스템에서 서비스 중인 포트 정보 수집

- 사용자가 Nmap tool의 다양한 스캔 옵션을 사용할 수 있도록 제작

- 스텔스 기능을 구현하여 대상 시스템에 로그를 남기지 않도록 제작

- 스캔 결과값은 정형화된 폼에 맞춰 출력하여 사용자의 편의성을 증대

(2) 라우팅 경로

- 대상 시스템의 라우팅 경로를 수집하여 최적의 시스템 환경을 도출

(3) 업/다운

- 고객사의 인터넷 서비스가 정상적으로 작동 중인지 식별

- 분당 1회의 Ping Test를 수행하고 탐색용 서버는 총 5대로 구성

- response 값을 DB로 저장하여 대상 시스템의 서비스 이상유무를 판단

- 사용자는 관심 대상을 등록할 수 있으며, 목록에 등록된 대상에 대해서 주기적(일, 주, 월)으로 리포트를 생산

- 참고사항(ping 테스트 서비스 : www.pingdom.com)

예) pingdom의 월간 리포트

(4) IP Lookup

- IP 기반으로 대상 시스템의 기본정보를 수집하여 제공

- DNS, Country, Location, AS Number, ISP, whois 등

- 참고사항(IP 정보 제공 서비스 : www.ip-tracker.org, www.ip-lookup.net)

2. 공격기능

가. 목    적 : DDoS 공격 메소드를 활용한 네트워크 취약점 점검

나. 주요기능 : Flooding(SYN, ACK, UDP 등), 증폭공격(NTP, DNS)

구 분	내 용
Bandwidth Consuming Attacks	․대량의 패킷을 전송하여 대상 시스템의 대여폭을 소진시키는 공격형태 ․동일 네트워크에서 사용 중인 모든 시스템에 피해 ․프로토콜 : UDP, ICMP ․공격유형 : UDP Flooding, ICMP Flooding(Smurf) 등
PPS Consuming Attacks	․네트워크 장비, 서버 등의 CPU에 부하 유발 ․3way-handshake의 취약점을 활용한 공격 ․프로토콜 : TCP ․공격유형 : SYN Flooding, ACK Flooding, SYN/ACK Flooding, FIN Flooding, RST Flooding 등
Amplification Attacks	․패킷 증폭이 가능한 프로토콜을 활용한 공격 ․공격유형 : DNS Amplification, NTP Amplification

다. 세부내용

- 공격 메소드는 10종 이상을 모듈화하여 탑재하고 실제와 같은 공격이
가능하도록 시스템에 구현

- IP Spoofing을 활용하여 출발지 IP를 변조, 랜덤화할 수 있도록 구현

- 공격 명령은 공격대상, 리소스할당, 공격 메소드, 스케줄링 등의 옵션을
사용자가 지정하여 사용할 수 있도록 제작

- 공격탭 레이아웃

① Target Info : 공격 대상에 대한 정보(Address, Port) 입력

- Address : 공격 대상의 IP 주소 또는 URL 정보 입력(등록된 목록을 선택하거나 사용자가 직접 입력할 수 있도록 제작)

- Port : Destination Port 정보 입력(사용자가 직접 입력)

② Command : DDoS 공격 메소드 선택 및 옵션 지정

- Method : DDoS 공격 메소드 선택(리스트 선택)

- Souce IP : 출발지 IP 정보 입력(① 고정된 IP 사용 : 사용자가 직접 입력,
② 출발지 IP 랜덤화 : 입력창 공백)

- Souce Port : 출발지 Port 정보 입력(① 고정된 Port 사용 : 사용자가 직접 입력,
② 출발지 Port 랜덤화 : 입력창 공백)

③ Scheduling : 공격시간, 서버할당 등 공격에 대한 스케줄 관리

- Start Time : 공격 개시 시간 설정(날짜는 달력으로 선택, 시간은 24시간을 리스트로 표시하여 사용자가 선택할 수 있도록 구현)

- End Time : 공격 종료 시간 설정(날짜는 달력으로 선택, 시간은 24시간을 리스트로 표시하여 사용자가 선택할 수 있도록 구현)

- Server : 공격시 사용할 서버 선택(리스트로 표현하여 사용자가 원하는 서버를 지정 할 수 있도록 구현)

3. 분석 및 리포팅

가. 목    적 : 탐색 결과, 공격 결과 등 리포트 형태로 표현

나. 주요기능 : 수시 리포트 / 정기(주간, 월간) 리포트

다. 세부내용

(1) 수시 리포트

- 탐색결과를 사용자가 확인하기 용이한 형태로 시각화하여 출력

- 공격시 response 값을 그래프로 표현하여 취약점 점검 결과 리포트로 생성

(2) 정기 리포트

- 관심 대상으로 등록된 목록에 대해서는 포트스캔, IP Lookup 등의 정보 수집을 주간 단위로 수행, 변경 이력 발생 알람 후 리포트 제공

- 업/다운(Ping Test) 정보 수집을 정기적(주간, 월간)으로 수집해야 하는 경우 responce값을 그래프로 표현하여 분석하기 용이한 형태로 리포트 제공

(3) 공통

- 리포트는 표, 그래프 등을 적극 활용하여 시각화된 형태로 제공

- 리포트는 PDF, doc, hwp 등의 문서 형태로 저장이 가능

4. 서버 통합 관리

가. 목    적 : 효율적인 서버 관리 및 제어를 위한 관리 기능

나. 주요기능 : 실시간 모니터링, 서버 관리·제어

다. 세부내용

(1) 실시간 모니터링

- 각 서버의 자원 사용량(CPU, RAM, HDD, NETWORK)을 다이어그램으로 표현하여 관리자가 실시간으로 확인하기 용이하게 구현

- 서버에서 실행 중인 프로세스와 서비스 중인 포트 목록 표시

- 실시간 모니터링 레이아웃

(2) 서버 관리·제어

- 통제서버에서 에이전트를 일괄적으로 제어할 수 있도록 설계

- 다음과 같은 제어 기능을 탑재

구 분	내 용
Shutdown	․시스템 종료(전원 off 상태)
Reboot	․시스템 재시작
Update	․운영체제 업데이트 및 기타 프로그램 일괄 설치
Service Restart	․선택한 서비스를 재시작
Service Stop	․실행 중인 서비스를 종료
Delete	․하드디스크 삭제(해당 서버 內 모든 파일 삭제)

5. 서버 호스팅

가. 목    적 : Booter 시스템 운영을 위한 서버 확보

나. 서버 권장사양

구 분	규 격(요구사양)	수 량
CPU	· Intel Xeon 4Core 이상	30대
MEMORY	· 8GB RAM 이상
DISK	· HDD 500GB * 2 (RAID 0) 이상
NETWORK	· NIC 2개 이상 / 공인 IP 2개 이상
Traffic	· 대역폭 : 100MB 이상 / 전송량 : 무제한

다. 서버 설치 환경

- 서버는 항온항습장비, 발전기, 기가급 네트워크가 설치된 IDC 센터에 설치

- 총 서버 호스팅 수량 30대, 각 10대씩 별도의 네트워크로 구성 된 3개 지역에 분산 설치하여 공격시 최대 대역폭 확보 및 영향이 없도록 설치

- 서버 요구 스팩으로 제시된 사항은 기준이며 상위 사양은 별도 협의하에 시스템 성능 향상이 가능한 범위에서 설치 가능

- 효과적인 공격을 위해 IP Spoofing이 가능한 환경 內 시스템을 구축

Ⅳ		과업수행 지침

가. 일반사항

- 과업기간은 착수일로부터 2016년 12월 9일까지로 한다.

- 과업수행자는 계약일로부터 15일 이내에 세부과업의 담당자 명단 및 추진 일정 계획 등 기타 필요한 제반서류를 작성하여 발주처에 제출하여야 한다.

- 과업수행자는 과업수행을 위해 학식과 경험을 가진 전문인력을 충분히 확보하여야 하며, 동 전문인력은 자기가 가진 지식과 경험을 최대한 활용하여 과업의 목적을 달성하도록 하여야 한다.

- 본 과업의 원활한 수행을 위해 발주처의 사전 승인을 받아 관련분야의 전문기관 및 전문가를 참여시킬 수 있다.

- 본 과업지시서에 명시되지 않은 사항은 발주처와 협의하여 결정하며,
협의가 이루어지지 않는 다음 사항은 발주처의 의견에 따라야 한다.

① 과업지시서 상의 용어는 일반적인 통념에 따라 해석하며, 과업지시서의 주요 내용과 제안서에서 주요내용에 해석상 차이가 있을 때는 발주처와 과업수행자가 상호 협의하여 정의한다.

② 과업내용 및 과업비 조정은 과업수행 과정에서 발주처와 과업수행자가 협의하여 과업예산항목 범위에서 과업지시내용 및 용역비용을 조정할 수 있다.

③ 과업수행 과정에서 생산된 보고서, 조사자료 등 용역 성과품에 대한 판권 등 모든 권리는 발주처가 소유한다.

④ 모든 성과품은 발주처의 승인 없이 제3자에게 대여할 수 없다.

- 과업은 가능한 한 전산처리를 원칙으로 하고 필요시 관련 자료 및 산출근거 등을 CD 등에 수록하여 제출하여야 한다.

나. 세부지침

(1) 보안 유지

- 회사 정보, 시스템 정보 등 본 과업과 관련된 모든 사항은 유출, 발설,
공표하지 않도록 한다.

- 시스템의 구성 및 기능에 대한 일체의 정보는 비공개로 유지하여야 한다.

- 보안사항 부설과 관련 자료의 도난, 분실, 기타 손괴 등을 방지하고 제반 보안사항의 조치를 강구한다.

- 소스코드 및 산출물은 기록물화하여 관리하고 타용도 사용을 금지한다.

- 과업수행자는 ‘기술 보안 서약서’를 작성하여 제출하고 서약 내용을 성실히 준수하여야 한다.

- 또한 과업수행 중 과업참여자를 교체할 경우에는 인수인계를 철저히 하여 자료의 외부 유출을 방지해야 한다.

- 본 과업수행과 관련된 자료 및 정보 등은 본 과업이외의 여타 목적을 위해 사용될 수 없으며, 발주처의 서면승인 없이는 타인에게 제공 또는 대여하거나 외부에 공개할 수 없다.

- 시스템 구성 및 기능에 대한 보안유지 권고사항

① 공격 서버의 설치 국가 및 IDC 관련 정보

② 공격 서버의 제원 및 네트워크 구성 정보(IP정보)

③ 프로그램 소스코드 및 설치 파일

④ 관리자 계정 정보 및 접근 권한 관련 정보

(2) 프로젝트 관리

- 과업수행자는 프로젝트 추진간 진행사항 및 추진 방향을 발주처에 보고 하여야 한다.

① 착수보고 : 계약 후 15일 이내에 세부과업항목, 과업수행방법, 추진일정계획, 각 분야별 참여인력 등을 포함한 세부 계획을 작성하여 보고

② 중간보고 : 과업 추진 현황 및 향후 추진 계획을 작성하여 보고

※ 필수 요건 : 서버 호스팅(총 30대) 결과 및 시스템 개발 공정 50% 이상 달성

③ 최종보고 : 과업의 최종결과를 작성하여 완료일 이전에 보고한다.

④ 수시보고 : 본 과업의 추진상황에 대하여 발주처의 요구가 있을 때에는 수시로 보고한다.

⑤ 주간보고 : 본 과업의 추진상황을 매주 월요일을 기준으로 前주의 추진내용, 추진공정 및 향후 계획을 구체적을 작성하여 서면으로 보고하고 필요시 회의를 개최하여 내용을 공유하고 조치한다.

(3) 교육훈련 및 유지보수

- 시스템의 원활한 운영에 필요한 기능 교육 및 시스템 조작을 개발 완료 후 1회 교육을 실시한다.(담당자 요청시 추가 교육지원)

- 공격모듈, 기능, 조작법 등이 구체적으로 설명된 매뉴얼을 제공해야 한다.

- booter 시스템 유지보수는 개발 완료부터 12개월을 무상으로 지원한다.

- 시스템 장애 발생시 담당자와 유기적으로 협조하여 신속하게 처리한다.(시스템 복구 및 원인 파악 ⇒ 장애 조치결과 보고서 제출)

다. 보고서 및 산출물

구 분	제출 시기(주기)	제출 형태
1. 사업 착수 보고서 (요구사항 정의서, IA, 디자인컨셉 정의서 등)	착수 보고시 ※ 10월 2주차 예정	각 1부 및 CD 1매
2. 사업 중간 보고서 (기능정의서, 화면설계서, 테이블정의서 등)	중간 보고시 ※ 11월 2주차 예정
3. 최종 완료 보고서	완료 보고시 ※ 12월 1주차 예정
4. 프로그램 및 시스템 설계서	착수, 중간, 완료, 변경시
5. 주간 회의록	주 1회 ※ 매주 월요일
6. 개발 진척도	월 1회
7. 관리자 메뉴얼	완료시
8. 시스템 테스트 결과서	완료시
9. 프로그램 소스	완료시

※ 산출물은 과업수행자가 제출한 제안서 내용을 모두 포함하며, 완료보고서 산출물의 종류 등에 관한 사항은 발주처와 협의하여 진행한다.