[네트워크] 컴퓨터 네트워크

[네트워크] 은닉 채널 (실습)

ITsubin 2022. 10. 12. 22:26

[ 1) 은닉 채널(Convert Channel)에 대한 이해 ]

> 1973년 램프슨(Lampson)에 의해 정의된 용어

> 표면적인 목적 외의 정보나 은닉 메시지를 전송하기 위해 기본 통신 채널에 기생하는 통신 채널

> 은닉 메시지는 다른 사람은 볼 수 없고, 송신자와 수신자만 확인 가능

 

{ ackcmd Tool }

> ackcmd Tool은 ACK 패킷만 이용 (세션을 성립시키지 않음)

> ACK 패킷 안에 숨겨진 데이터를 주고받음

ackcmd의 패킷 전송 과정

 

{ 은닉 채널과 방화벽 우회 }

> 은닉채널은 데이터를 숨겨 방화벽을 우회하는데 사용

> ackcmd는 공격자가 공격 대상 서버의 웹 서비스를 이용할 때 발생하는 것과 유사한 형태로

   ACK 패킷을 발생시켜 서로 통신을 수행

> ackcmd Tool이 통신하는 패킷을 캡처해보면 ACK 패킷으로 통신을 수행하고 있음을 확인 가능


[ 실습 - ish를 이용한 은닉채널  ]


> 실습 환경 :
- ish Client : Kali Linux (Kali GNU/Linux Rolling)  /  IP : 192.168.100.139

- ish Server : Ubuntu Desktop (22.04 LTS)  /  IP : 192.168.100.138


1) ICMP Shell 다운로드

ish Client와 Server 모두 ICMP Shell을 다운받아야 합니다.

Sourceforge에서 ICMP Shell을 다운받아줍니다. ( https://sourceforge.net/projects/icmpshell/files/ish/v0.2/ )


2) ICMP Shell Files 압축풀기

ish Client와 Server 모두 방금 다운받은 ish-v0.2.tar.gz 파일의 압축을 풀어줍니다.

사용하는 명령은 아래와 같습니다.

tar xvfz ish-v0.2.tar.gz


3) make를 사용하여 컴파일

ish-v0.2.tar.gz 파일의 압축을 풀면 ISHELL-v0.2 디렉터리가 생성됩니다.

ish Client와 Server 모두 생성된 디렉터리로 이동하여 make를 사용하여 컴파일해줍니다.

make linux


make 사용 시 오류가 날 경우, 아래 세 가지 사항을 참고합니다.

 

1) apt-get 업데이트

sudo apt-get update

2) make 설치

sudo apt-get install make

3) gcc 설치 ( Make Error 127 )

sudo apt-get install gcc

4) ish Server에서 ishd 실행

ish Server (Ubuntu)에서 아래와 같은 명령으로 ishd를 실행합니다.

sudo ./ishd

5) ish Client에서 Server로 접속

ish Client (Kali)로 넘어와서, 아래와 같은 명령으로 ish Server에 접속합니다.

sudo ./ish [Server IP]
sudo ./ish 192.168.100.138


6) 접속 확인 및 패킷 분석

ip a 명령어로 ip를 확인해보면 Client (Kali)의 IP가 아닌 Server (Ubuntu)의 IP가 확인됩니다.

 

Wireshark에서 icmp 필터를 적용 후 명령어를 입력하여 icmp 패킷을 확인합니다.

whoami 명령어 사용 예시

'[네트워크] 컴퓨터 네트워크' 카테고리의 다른 글

[네트워크] SSH 터널링 (실습)  (2) 2022.10.10
[네트워크] VPN_4 (터널링)  (2) 2022.10.09
[네트워크] VPN_3  (2) 2022.10.08
[네트워크] VPN_2  (2) 2022.10.07
[네트워크] VPN  (2) 2022.10.07