본문 바로가기
Study/해킹

웹 해킹 및 보안 01. Penetration testing

by 꼬부기가우는소리 2016. 6. 13.
728x90


참고 링크 :

- [Zinion] 모의침투테스트란?

- [DarkSoul.Story] [Web] 웹쉘 (web shell)

- [위키백과] OWASP

- [OWASP] Welcom to OWASP

- OWASP Top 10 - 2013.pdf

- [행정자치부] 정책자료> 간행물> 주요정보통신기반시설 기술적 취약점 분석평가 방법 상세가이드



Penetration testing

모의침투테스트 (Penetration testing)는 Pen-testing 모의침투 테스팅, 모의해킹 테스트와 같은 용어로 사용되고 있으며 조직의 정보 보안 수준을 능동적으로 평가하기 위한 프로세스의 일환으로 실제 공격 행위 (haking)의 시뮬레이션을 수행한다. 이때 모의해킹 테스트를 진행하는 해킹 담당자를 Penetration Tester 혹은 Pen Tester라고 부른다.


Pen-testing은 보안의 기술적 영역만을 통해 수행하는 것이 아니다. 정보보호는 기술적 영역, 관리적 영역, 물리적 영역으로 구성되어 있다. 해당 영역은 서로 유기적으로 연결되어 있기 때문에 정보보호를 수행할 때 각 항목을 모두 고려해야 한다.


Pen-testing은 Security Process (보안 프로세스) 내 문제점을 검색하고 이용한다. 설계 문제 (design weakness), 기술 장애 (technical flaw) 및 취약점 (vulnerability)를 능동적으로 평가할 수 있다. 취약점 관리, 설정 관리, 사고 관리, 보안 관리 등을 한다.



영역

- Network : switch, router, wireless access point etc.

- System : Server (NT, Unix, Linux etc.), PC

- Security Device : Firewall, IDS/IPS, Web Application Firewall, VPN Device etc.

- Application : Web Application, DMBS, SAP, PDF, Office etc.

- Etc. : SCADA System, VOIP


모의침투 테스트의 분류

          • Blind Test : 검사 대상에 대한 정보 없이 수행합니다. 또한 수행 시에 미리 검사 대상에 통보하고 수행합니다. 미리 통지한다는 윤리적 측면 때문에 많이 사용되고 있습니다.

          • Double Blind Test ( Black Box Test ) : 해당 검사는 Pentester 도 정보를 알지 못하지만 검사 대상 역시 모의침투 테스트를 진행한다는 사실을 알지 못합니다. 실제 환경에 가장 근접한 테스트입니다. 다만 짧은 시간 안에 결과를 도출하기가 어려우며 프로젝트 기간이 길어질 수 있습니다. 프로젝트 기간은 비용과 연관되어 있으므로 비용 대비 성과를 충분히 고려하고 선택해야 합니다.

          • Grey Box Test : Pentester 는 제한적인 지식을 제공 받습니다. 예를 들면 취약점 점검 결과를 넘겨 받거나 실제 수행 할 수 있게 끔 기회를 받습니다. 해당 테스트 역시 모의 해킹을 시작하기 전 검사 대상에 미리 통보를 합니다.

          • Double Grey Box Test ( White Box Test ) : 감사의 시간이 제한되어 있고 채널과 벡터는 테스트하지 않는 점이 그레이 박스 테스트와 다른 점입니다.

          • Tandem Test : tandem 테스트의 핵심은 pentester 가 모든 결과 값을 볼 수 있다는 것입니다. 검사 대상 역시 테스트 수행 전에 통보를 받습니다.해킹이 가능한 취약점을 다 확인 해볼 수 있습니다. 가장 이상적인 결과를 제출 할 수 있습니다. Crystal box Test 가 그 예입니다.

          • Reversal Test : Pentester 가 모든 정보를 알고 있지만 검사 대상은 검사가 실시 된다는 사실을 모르게 됩니다. Red Team 테스트가 그 예 입니다.

          • 간단하게 정리하면 침투 테스트에는 White Box Test 내부에서 내부 환경 지식을 토대로 테스트 , Black Box Test 외부 환경에서 테스트를 시도 , Grey Box Test 위의 2가지를 적절히 혼합하여 Test 하는 것으로 나누어집니다.

          • 모의침투 테스트는 각 회사와 기관의 환경과 목적에 맞게 끔 비용과 시간을 고려해서 선택되어야 합니다.


모의해킹 절차

크게 총 4번으로 절차를 나눌 수 있다.


(1) 탐색, 수집 : 특정 대상에 대한 정보를 수집. 물리적 위치, 관리자 등의 내용을 찾고 기록해 놓음. 말 그대로 대상의 탐색이다.

(2) 스캐닝 : 본격적으로 어떤 서비스를 가지고 있는가, 어떤 포트들이 열려 있는가, 이 서비스는 현재 작동하고 있는가 등 어떤 취약점이 있는지 확인. 여기서 제대로 한다면 공격은 쉬워진다. 따라서 여기서 가장 많은 시간을 많이 잡아먹는다.

(3) 공격 : 한번 권한을 탈취하고 나면 다시 탈취할 수 있으리란 보장이 없기 때문에 백도어를 만들어 놓는다.

(4) 권한 유지




Web Shell


웹셸은 공격자가 원격에서 웹서버에 명령을 수행할 수 있도록 작성한 웹스크립트 (asp, php, jsp, cgi) 파일이다. 이때 zip, jpg, doc와 같은 데이터 파일 종류 이외에 악의적으로 제작된 스크립트 파일인 웹셸을 업로드하여 웹 서버를 해킹하는 사고가 빈번하다. 이와 같이 서버 명령을 실행할 수 있는 웹셸을 이용하여 웹 서버에 명령을 실행해 관리자 권한을 획득한 후 웹 페이지 소스 코드 열람, 서버 내 자료 유출, 백 도어 프로그램 설치 등의 다양한 공격이 가능하다. 최근에는 파일 업로드 뿐만 아니라 SQL Injection과 같은 웹 취약점을 공격한 후 지속적으로 피해 시스템을 관리할 목적으로 웹셸을 생성하거나, 아주 일부분 만을 피해 시스템에 업로드하는 등 그 유형이 나날이 발전하고 있다.


웹셸의 위험성

많은 피해 웹서버 중 웹셸이 발견되는 웹 서버는 약 90% 정도이다. 이것은 공격자들이 취약점을 공격한 후 웹셸을 업로드하여 시스템을 통제하기가 수월하다 보니 사용 빈도가 높은 것을 확인할 수 있다.


웹 취약점을 통해 피해시스템에 접근한 공격자는 방화벽에 접근을 허용하는 HTTP (TCP 80) 서비스를 통해 피해 시스템을 제어하므로 웹셸을 차단하기가 쉽지 않다. 또한 일반적인 서버관리자들은 해킹여부를 확인하기 힘들고, 피해를 인지하더라도 관리자들이 주로 사용하는 백신 프로그램에서 웹셸 탐지가 안되는 경우가 빈번히 발생하며, 탐지가 된다고 해도 공격자들은 스크립트 웹셸들을 빈번히 변경시켜 사용하기 때문에 백신들로서는 탐지하기가 쉽지 않아 웹셸을 찾기가 쉽지 않다. 관리자들이 해킹 피해를 인지하고 시스템을 재설치하더라도 이전에 웹셸이 업로드되어 있는 소스 그대로 새롭게 설치한 시스템에 복사하여, 사용하기 때문에 지속적으로 웹셸을 관리하는 공격자에게 피해를 입게 된다.


예방 대책

1. 웹 서버의 파일 업로드 취약점 제거

2. 파일 업로드 폴더의 실행 제한

3. SQL Injection 방지





모의해킹 진단 기준

모의해킹을 할 때는 진단에 대한 표준이 필요하다. 무엇을 근거로 했는 지를 확실히 해야 하며 그 근거는 누구나 인정할 수 있을만한 것이어야 한다. 이러한 모의해킹 진단 기준에는 대표적으로 2가지가 있다.



OWASP Top 10

OWASP(The Open Web Application Security Project)는 오픈소스 웹 애플리케이션 보안 프로젝트이다. 주로 웹에 관한 정보노출, 악성 파일 및 스크립트, 보안 취약점 등을 연구하며, 10대 웹 어플리케이션 취약점 (OWASP TOP 10)을 발표했다.



OWASP TOP 10은 웹 애플리케이션 취약점 중에서 빈도가 많이 발생하고, 보안상 영향을 크게 줄 수 있는 것들 10가지를 선정하여 2004년, 2007년, 2010년, 2013년을 기준으로 발표되었고, 문서가 공개되었다. 이는 진단 기준표로 많이 사용된다.



주요 정보통신 기반시설 취약점 진단 가이드

안행부와 KISA에서 발행한 주요정보통신기반시설 취약점 분석 평가 기준이다. 27개의 항목에 대해서 제대로 조치가 되어 있는지 확인할 수 있다. 이것 역시 OWASP를 참고해서 만든 것이다. 우리나라의 현실과 주요 취약점이 추가되었다. 아래는 이 문서의 일부분이다.





댓글