[ 1) 은닉 채널(Convert Channel)에 대한 이해 ]
> 1973년 램프슨(Lampson)에 의해 정의된 용어
> 표면적인 목적 외의 정보나 은닉 메시지를 전송하기 위해 기본 통신 채널에 기생하는 통신 채널
> 은닉 메시지는 다른 사람은 볼 수 없고, 송신자와 수신자만 확인 가능
{ ackcmd Tool }
> ackcmd Tool은 ACK 패킷만 이용 (세션을 성립시키지 않음)
> ACK 패킷 안에 숨겨진 데이터를 주고받음
{ 은닉 채널과 방화벽 우회 }
> 은닉채널은 데이터를 숨겨 방화벽을 우회하는데 사용
> 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 패킷을 확인합니다.
'[네트워크] 컴퓨터 네트워크' 카테고리의 다른 글
[네트워크] 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 |