본문 바로가기

교육/Security

Day 73 (Tunneling)

반응형

<목차>

1. 목적

2. 사용 툴 & 구성 환경

3. 실습 과정

4. 결과 확인


1. 목적

Tunneling은 접근금지 서버에 접근을 방지하고 백도어로서 사용한다. SSH세션을 이용해 접근하게 되면 데이터가 암호화 되어 전송되기 때문에 Sniffing이 불가능 하다. 프록시와 동일한 개념은 아니지만 구성도 유사하고 근래 Tunneling을 프록시로 말하기도 한다.

SSH를 터널링으로 이용할 수 있는 Application만 사용이 가능하다. 실습을 통해 Tunneling을 사용하고 개념을 이해한다.

 

2. 사용 툴 & 구성 환경

1) SSH : SSH서버와의 암호화 된 접속과 Tunneling기능을 사용한다. 기본적으로 Linux나 Window환경에서는 제공되는 통신 방식이다.

 

2) Web Browser(Explorer, Chrome, 등) : 외부 Web서버에 접속하기 위해 사용하는 Application이다.

 

3) 구성 환경

  IP(외부서버는 도메인)
SSH서버 192.168.10.11
SSH클라이언트 192.168.10.106
외부 서버 www.naver.com

 

3. 실습 과정

SSH접속을 통해 Tunneling기능을 수행하기 위해 포트를 추가한다.
SSH서버에 접속한다.

도구(alt+x) > 인터넷옵션(shift+o) 으로 설정 화면으로 이동한다.

Web Browser에서 Tunneling 접속을 가능하게 설정한다.

 

4. 결과 확인

SSH클라이언트에서 세션이 유지되고 있으면 외부 서버와 통신이 가능하지만 세션이 끊긴다면 외부 서버와 통신이 끊긴다.

패킷을 분석해보면 22번 포트를 이용해 SSH서버(192.168.10.11)와 SSH클라이언트(192.168.10.106)가 서로 SSH통신을 수행하고 텍스트 기반이기 때문에 패킷의 크기가 작다.

하지만 Tunneling되는 패킷을 보게 되면 데이터의 크기가 굉장히 큰 것을 알 수 있다. 이것을 통해 어떤 패킷을 주고받는지는 알 수 없지만 패킷을 탐지하고있으면 Tunneling의 사용 여부는 알 수 있다.

 

따라서 Tunneling은 패킷 감지를 통해 인지할 수 있고, Watch Dog등 패킷 감지 프로그램을 통해 패킷 크기에 제한을 걸어 Tunneling을 방어하는것이 가능하다.

반응형

'교육 > Security' 카테고리의 다른 글

Day 73 (DoS Attack)  (0) 2020.03.11
Day 73 (Hidden Channel)  (0) 2020.03.11
Day 72 (DNS spoofing)  (0) 2020.03.10
Day 72 (ARP spoofing)  (0) 2020.03.10
Day 71 (icmp redirect)  (0) 2020.03.09