SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
웹쉘 탐지도구 실습
:ShellDetector & NeoPI
파일 업로드 취약점
최일선
1Writing by Ilsun ChoiE-mail : isc0304@naver.com
Index
2Writing by Ilsun ChoiE-mail : isc0304@naver.com
1. Web Shell Detector
1) What’s Signatures?
2) 시그니쳐 검색 방식
3) PHP Shell Detector
3) 시그니쳐 기반 툴의 한계
2. NeoPI란?
1) NeoPI 분석 방법 3가지
2) NeoPI 사용법
3. 실습
1) Weevely
2) Shell-Detector
3) NeoPI
참고문헌
1. Web Shell Detector
3
• Signature based Detector
• PHP/Python Version
• http://www.shelldetector.com
/
Writing by Ilsun ChoiE-mail : isc0304@naver.com
• 정적 분석 방법
• 알려진 공격 패턴을 미리 입력
4
1. Web Shell Detector > 1) What’s Signatures?
Writing by Ilsun ChoiE-mail : isc0304@naver.com
1. Web Shell Detector > 2) 시그니쳐 탐지 방식
• 패턴 매칭과 MD5 체크섬 등의 검사의 한계
• 난독화된 파일을 인식하지 못한다.
5Writing by Ilsun ChoiE-mail : isc0304@naver.com
1. Web Shell Detector > 3) PHP SHELL DETECTOR
• 소스코드 레벨에서 차단
• 소스코드 내에 system과 passthru를 검출
6Writing by Ilsun ChoiE-mail : isc0304@naver.com
1. Web Shell Detector > 4) 시그니쳐 기반 툴의 한계
• 미탐률이 높음
• Weevely로 만든 shell0~3번까지 탐지 불가
• 같은 웹 서버를 대상으로 한 NeoPI 스캔 결과에서는 shell0~3번 을 탐지함.
7Writing by Ilsun ChoiE-mail : isc0304@naver.com
2. NeoPI란?
• Python2.x를 사용한 오픈소스
• text와 스크립트 파일에 애매하거나 암호화된 내용을 탐지
• 통계적 방법(오탐율이 높음)
• 숨겨진 웹셸 코드 인식에 주 목적
• 시그니쳐 키워드 기반 탐지 툴과 함께 사용하는데 초점을 둠
8Writing by Ilsun ChoiE-mail : isc0304@naver.com
2. NeoPI란? > 1) NeoPI 분석 방법 3가지
I. Longest String
II. Entropy
III. Index of Coincidence
9Writing by Ilsun ChoiE-mail : isc0304@naver.com
I. Longest String
• 가장 긴 문자열의 길이를 식별
->인코딩된 텍스트처럼 긴 문자열을 가진다는 특성을 이용
Longest String 계산하는 python 코드
10Writing by Ilsun ChoiE-mail : isc0304@naver.com
2. NeoPI란? > 1) NeoPI 분석 방법 3가지[1/3]
2. NeoPI란? > 1) NeoPI 분석 방법 3가지[2/3]
II. Entropy
• 시스템 내 정보의 불확실성 정도를 나타내는 용어
• 파일을 인코딩하기 위해 요구된 최저의 바이트 수를 결정
• 암호화된 문자열의 경우 많은 양의 엔트로피가 요구됨
엔트로피를 구하는 코드
11Writing by Ilsun ChoiE-mail : isc0304@naver.com
III. Index of Coincidence
• 암호화된 텍스트와 자연어 텍스트를 구분하기에 용이
• 정상적인 문자 분배가 아닌 특별한 텍스트를 탐지할 수 있음
I.C를 구하는 코드
12Writing by Ilsun ChoiE-mail : isc0304@naver.com
2. NeoPI란? > 1) NeoPI 분석 방법 3가지[3/3]
• 운영체제에 python2.x 버전 설치
• https://github.com/Neohapsis/NeoPI를 통해 다운로드
• “-a“ 옵션을 사용하여 모든 탐지 기법 사용.
13Writing by Ilsun ChoiE-mail : isc0304@naver.com
2. NeoPI란? > 2) NeoPI 사용법
3. 실습
• APM 환경을 기반으로 Weevely, ShellDetector, NeoPI를 사용하여 실습하였다.
14Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 1) Weevely[1/5]
• base64 인코딩 기법을 사용한 백도어 쉘 제작 툴
15Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 1) Weevely[2/5]
백도어 웹셸 생성
인코딩된 Shell0.php 내용
16Writing by Ilsun ChoiE-mail : isc0304@naver.com
17Writing by Ilsun Choi
• 쿠키 값으로 패스워드를 전달
• 내부에 base64 인코드된 내용이 더 존재
E-mail : isc0304@naver.com
3. 실습 > 1) Weevely[3/5]
3. 실습 > 1) Weevely[4/5]
• 테스트를 위해 서버 모든 root 하위 디렉
터리에 셸 배치
18Writing by Ilsun ChoiE-mail : isc0304@naver.com
• 오픈된 웹서버에 접속하여 정상적으로
dir 커맨드를 실행
19Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 1) Weevely[5/5]
3. 실습 > 2) Shell Detector[1/3]
• Weevely로 생성한 셸을 배치한 서버에 검사 실행
• 604개의 데이터베이스를 가지고 있고 25개의 파일을 분석함
20Writing by Ilsun ChoiE-mail : isc0304@naver.com
• 인코딩되지 않은 웹셸 탐지
• hack.php, WebShell.php
21Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 2) Shell Detector[2/3]
3. 실습 > 2) Shell Detector[3/3]
• 웹 브라우저로 지원
• Python Version과 유사한 결과
22Writing by Ilsun ChoiE-mail : isc0304@naver.com
23
 everything으로 루트 디렉터리 내 PHP 파일 점검
- 총 25개의 php 파일이 존재
Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 3) NeoPI [1/4]
• NeoPI를 실행하면 총 6가지의 결과가 검출된다.
1. Top 10 lowest IC files
2. Top 10 entropic files for a given search
3. Top 10 longest word files
4. Top 10 Signature match counts
5. Top 10 Super Signature match counts
6. Top cumulative ranked files
최근 NeoPI는 버전업이 되면서 시그니쳐 기반 탐지까지 지원하고 있으며, 모든 종합적인
점수를 토대로 [6. Top cumulative ranked files]에 웹셸 의심항목 순위를 집계한다.
과탐이 존재하기 때문에 반드시 모든 항목을 점검자가 검토해볼 것을 권한다.
24Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 3) NeoPI [2/4]
25Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 3) NeoPI [3/4]
26Writing by Ilsun ChoiE-mail : isc0304@naver.com
3. 실습 > 3) NeoPI [4/4]
참고문헌
• http://resources.infosecinstitute.com/web-shell-detection/
• 칼리 리눅스와 백트랙을 활용한 모의 해킹 – 조정원 외 지음
27Writing by Ilsun ChoiE-mail : isc0304@naver.com

Mais conteúdo relacionado

Mais procurados

(130216) #fitalk reverse connection tool analysis
(130216) #fitalk   reverse connection tool analysis(130216) #fitalk   reverse connection tool analysis
(130216) #fitalk reverse connection tool analysisINSIGHT FORENSIC
 
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
(140407) #fitalk   d trace를 이용한 악성코드 동적 분석(140407) #fitalk   d trace를 이용한 악성코드 동적 분석
(140407) #fitalk d trace를 이용한 악성코드 동적 분석INSIGHT FORENSIC
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례Youngjun Chang
 
(160820) #fitalk fileless malware forensics
(160820) #fitalk    fileless malware forensics(160820) #fitalk    fileless malware forensics
(160820) #fitalk fileless malware forensicsINSIGHT FORENSIC
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법Youngjun Chang
 
2.악성코드와 분석 방안
2.악성코드와 분석 방안2.악성코드와 분석 방안
2.악성코드와 분석 방안Youngjun Chang
 
PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]
PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]
PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]Sehan Lee
 
Mr.Robot CTF Write-Up (Korean version)
Mr.Robot CTF Write-Up (Korean version)Mr.Robot CTF Write-Up (Korean version)
Mr.Robot CTF Write-Up (Korean version)Sehan Lee
 
SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)
SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)
SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)Sehan Lee
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례Youngjun Chang
 
레이스 컨디션 기초(Basic Race Condition)
레이스 컨디션 기초(Basic Race Condition)레이스 컨디션 기초(Basic Race Condition)
레이스 컨디션 기초(Basic Race Condition)Sehan Lee
 
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUpBSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUpSehan Lee
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론Youngjun Chang
 

Mais procurados (14)

(130216) #fitalk reverse connection tool analysis
(130216) #fitalk   reverse connection tool analysis(130216) #fitalk   reverse connection tool analysis
(130216) #fitalk reverse connection tool analysis
 
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
(140407) #fitalk   d trace를 이용한 악성코드 동적 분석(140407) #fitalk   d trace를 이용한 악성코드 동적 분석
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례
 
(160820) #fitalk fileless malware forensics
(160820) #fitalk    fileless malware forensics(160820) #fitalk    fileless malware forensics
(160820) #fitalk fileless malware forensics
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법
 
2.악성코드와 분석 방안
2.악성코드와 분석 방안2.악성코드와 분석 방안
2.악성코드와 분석 방안
 
악성코드와 웜
악성코드와 웜악성코드와 웜
악성코드와 웜
 
PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]
PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]
PlaidCTF 2016 Write-Up [hevc (MISC 50pts)]
 
Mr.Robot CTF Write-Up (Korean version)
Mr.Robot CTF Write-Up (Korean version)Mr.Robot CTF Write-Up (Korean version)
Mr.Robot CTF Write-Up (Korean version)
 
SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)
SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)
SECCON 2016 Online CTF [Memory Analysis] Write-Up (ver.korean)
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례
 
레이스 컨디션 기초(Basic Race Condition)
레이스 컨디션 기초(Basic Race Condition)레이스 컨디션 기초(Basic Race Condition)
레이스 컨디션 기초(Basic Race Condition)
 
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUpBSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론
 

Semelhante a comparing Shell dectector and NeoPI

보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법Youngjun Chang
 
bof기초+rtl+fake_ebp
bof기초+rtl+fake_ebpbof기초+rtl+fake_ebp
bof기초+rtl+fake_ebpone_two_12
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법Youngjun Chang
 
The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)Eunjeong (Lucy) Park
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안Youngjun Chang
 
Windows reversing study_basic_8
Windows reversing study_basic_8Windows reversing study_basic_8
Windows reversing study_basic_8Jinkyoung Kim
 
Windows kernel basic exploit
Windows kernel basic exploitWindows kernel basic exploit
Windows kernel basic exploitKyoungseok Yang
 
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라INSIGHT FORENSIC
 
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XpressEngine
 
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다
[2014 CodeEngn Conference 10] 심준보 -  급전이 필요합니다[2014 CodeEngn Conference 10] 심준보 -  급전이 필요합니다
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다GangSeok Lee
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법Youngjun Chang
 
해시암호와 비밀번호 - 9th KUSISWALL
해시암호와 비밀번호 - 9th KUSISWALL해시암호와 비밀번호 - 9th KUSISWALL
해시암호와 비밀번호 - 9th KUSISWALLHajin Jang
 
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석INSIGHT FORENSIC
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안Youngjun Chang
 
2. 악성코드 동적 분석 방법론
2. 악성코드 동적 분석 방법론2. 악성코드 동적 분석 방법론
2. 악성코드 동적 분석 방법론Youngjun Chang
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법Youngjun Chang
 
UNIX 시스템 2014-2018년 기말시험 기출문제
UNIX 시스템 2014-2018년 기말시험 기출문제UNIX 시스템 2014-2018년 기말시험 기출문제
UNIX 시스템 2014-2018년 기말시험 기출문제Lee Sang-Ho
 

Semelhante a comparing Shell dectector and NeoPI (20)

보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법
 
bof기초+rtl+fake_ebp
bof기초+rtl+fake_ebpbof기초+rtl+fake_ebp
bof기초+rtl+fake_ebp
 
Macro for Game
Macro for GameMacro for Game
Macro for Game
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)
 
Nlp study1
Nlp study1Nlp study1
Nlp study1
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
Windows reversing study_basic_8
Windows reversing study_basic_8Windows reversing study_basic_8
Windows reversing study_basic_8
 
Windows kernel basic exploit
Windows kernel basic exploitWindows kernel basic exploit
Windows kernel basic exploit
 
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
 
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
 
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다
[2014 CodeEngn Conference 10] 심준보 -  급전이 필요합니다[2014 CodeEngn Conference 10] 심준보 -  급전이 필요합니다
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
해시암호와 비밀번호 - 9th KUSISWALL
해시암호와 비밀번호 - 9th KUSISWALL해시암호와 비밀번호 - 9th KUSISWALL
해시암호와 비밀번호 - 9th KUSISWALL
 
Network researching
Network researchingNetwork researching
Network researching
 
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
2. 악성코드 동적 분석 방법론
2. 악성코드 동적 분석 방법론2. 악성코드 동적 분석 방법론
2. 악성코드 동적 분석 방법론
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
UNIX 시스템 2014-2018년 기말시험 기출문제
UNIX 시스템 2014-2018년 기말시험 기출문제UNIX 시스템 2014-2018년 기말시험 기출문제
UNIX 시스템 2014-2018년 기말시험 기출문제
 

comparing Shell dectector and NeoPI

  • 1. 웹쉘 탐지도구 실습 :ShellDetector & NeoPI 파일 업로드 취약점 최일선 1Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 2. Index 2Writing by Ilsun ChoiE-mail : isc0304@naver.com 1. Web Shell Detector 1) What’s Signatures? 2) 시그니쳐 검색 방식 3) PHP Shell Detector 3) 시그니쳐 기반 툴의 한계 2. NeoPI란? 1) NeoPI 분석 방법 3가지 2) NeoPI 사용법 3. 실습 1) Weevely 2) Shell-Detector 3) NeoPI 참고문헌
  • 3. 1. Web Shell Detector 3 • Signature based Detector • PHP/Python Version • http://www.shelldetector.com / Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 4. • 정적 분석 방법 • 알려진 공격 패턴을 미리 입력 4 1. Web Shell Detector > 1) What’s Signatures? Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 5. 1. Web Shell Detector > 2) 시그니쳐 탐지 방식 • 패턴 매칭과 MD5 체크섬 등의 검사의 한계 • 난독화된 파일을 인식하지 못한다. 5Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 6. 1. Web Shell Detector > 3) PHP SHELL DETECTOR • 소스코드 레벨에서 차단 • 소스코드 내에 system과 passthru를 검출 6Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 7. 1. Web Shell Detector > 4) 시그니쳐 기반 툴의 한계 • 미탐률이 높음 • Weevely로 만든 shell0~3번까지 탐지 불가 • 같은 웹 서버를 대상으로 한 NeoPI 스캔 결과에서는 shell0~3번 을 탐지함. 7Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 8. 2. NeoPI란? • Python2.x를 사용한 오픈소스 • text와 스크립트 파일에 애매하거나 암호화된 내용을 탐지 • 통계적 방법(오탐율이 높음) • 숨겨진 웹셸 코드 인식에 주 목적 • 시그니쳐 키워드 기반 탐지 툴과 함께 사용하는데 초점을 둠 8Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 9. 2. NeoPI란? > 1) NeoPI 분석 방법 3가지 I. Longest String II. Entropy III. Index of Coincidence 9Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 10. I. Longest String • 가장 긴 문자열의 길이를 식별 ->인코딩된 텍스트처럼 긴 문자열을 가진다는 특성을 이용 Longest String 계산하는 python 코드 10Writing by Ilsun ChoiE-mail : isc0304@naver.com 2. NeoPI란? > 1) NeoPI 분석 방법 3가지[1/3]
  • 11. 2. NeoPI란? > 1) NeoPI 분석 방법 3가지[2/3] II. Entropy • 시스템 내 정보의 불확실성 정도를 나타내는 용어 • 파일을 인코딩하기 위해 요구된 최저의 바이트 수를 결정 • 암호화된 문자열의 경우 많은 양의 엔트로피가 요구됨 엔트로피를 구하는 코드 11Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 12. III. Index of Coincidence • 암호화된 텍스트와 자연어 텍스트를 구분하기에 용이 • 정상적인 문자 분배가 아닌 특별한 텍스트를 탐지할 수 있음 I.C를 구하는 코드 12Writing by Ilsun ChoiE-mail : isc0304@naver.com 2. NeoPI란? > 1) NeoPI 분석 방법 3가지[3/3]
  • 13. • 운영체제에 python2.x 버전 설치 • https://github.com/Neohapsis/NeoPI를 통해 다운로드 • “-a“ 옵션을 사용하여 모든 탐지 기법 사용. 13Writing by Ilsun ChoiE-mail : isc0304@naver.com 2. NeoPI란? > 2) NeoPI 사용법
  • 14. 3. 실습 • APM 환경을 기반으로 Weevely, ShellDetector, NeoPI를 사용하여 실습하였다. 14Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 15. 3. 실습 > 1) Weevely[1/5] • base64 인코딩 기법을 사용한 백도어 쉘 제작 툴 15Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 16. 3. 실습 > 1) Weevely[2/5] 백도어 웹셸 생성 인코딩된 Shell0.php 내용 16Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 17. 17Writing by Ilsun Choi • 쿠키 값으로 패스워드를 전달 • 내부에 base64 인코드된 내용이 더 존재 E-mail : isc0304@naver.com 3. 실습 > 1) Weevely[3/5]
  • 18. 3. 실습 > 1) Weevely[4/5] • 테스트를 위해 서버 모든 root 하위 디렉 터리에 셸 배치 18Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 19. • 오픈된 웹서버에 접속하여 정상적으로 dir 커맨드를 실행 19Writing by Ilsun ChoiE-mail : isc0304@naver.com 3. 실습 > 1) Weevely[5/5]
  • 20. 3. 실습 > 2) Shell Detector[1/3] • Weevely로 생성한 셸을 배치한 서버에 검사 실행 • 604개의 데이터베이스를 가지고 있고 25개의 파일을 분석함 20Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 21. • 인코딩되지 않은 웹셸 탐지 • hack.php, WebShell.php 21Writing by Ilsun ChoiE-mail : isc0304@naver.com 3. 실습 > 2) Shell Detector[2/3]
  • 22. 3. 실습 > 2) Shell Detector[3/3] • 웹 브라우저로 지원 • Python Version과 유사한 결과 22Writing by Ilsun ChoiE-mail : isc0304@naver.com
  • 23. 23  everything으로 루트 디렉터리 내 PHP 파일 점검 - 총 25개의 php 파일이 존재 Writing by Ilsun ChoiE-mail : isc0304@naver.com 3. 실습 > 3) NeoPI [1/4]
  • 24. • NeoPI를 실행하면 총 6가지의 결과가 검출된다. 1. Top 10 lowest IC files 2. Top 10 entropic files for a given search 3. Top 10 longest word files 4. Top 10 Signature match counts 5. Top 10 Super Signature match counts 6. Top cumulative ranked files 최근 NeoPI는 버전업이 되면서 시그니쳐 기반 탐지까지 지원하고 있으며, 모든 종합적인 점수를 토대로 [6. Top cumulative ranked files]에 웹셸 의심항목 순위를 집계한다. 과탐이 존재하기 때문에 반드시 모든 항목을 점검자가 검토해볼 것을 권한다. 24Writing by Ilsun ChoiE-mail : isc0304@naver.com 3. 실습 > 3) NeoPI [2/4]
  • 25. 25Writing by Ilsun ChoiE-mail : isc0304@naver.com 3. 실습 > 3) NeoPI [3/4]
  • 26. 26Writing by Ilsun ChoiE-mail : isc0304@naver.com 3. 실습 > 3) NeoPI [4/4]
  • 27. 참고문헌 • http://resources.infosecinstitute.com/web-shell-detection/ • 칼리 리눅스와 백트랙을 활용한 모의 해킹 – 조정원 외 지음 27Writing by Ilsun ChoiE-mail : isc0304@naver.com