
VPNPivot 도구를 사용하여 네트워크 탐색
때때로 외부 침투 테스트를 수행할 때, 원격 타겟을 장악한 후에는 그 뒤에 있는 내부 네트워크를 탐색하고 Active Directory 장악, 공유 파일 접근, MITM 공격 수행 등을 원합니다. 포트 포워딩, socks4 등 여러 기술이 있지만 각각 장단점이 있습니다. 이것이 VPN 피벗 기술이 나온 이유이며, 앞서 언급한 두 기술의 모든 문제점을 해결합니다. 방화벽, NAT 등으로 차단된 내부 네트워크와 상호작용할 수 있게 해줍니다.
이것은 리눅스에서 tap 장치 내에서 순수 저수준 소켓을 사용한 VPN 피벗 기술의 구현입니다. SSL/TLS를 사용하여 타겟 머신과 공격자 간에 완전히 암호화된 터널을 생성합니다.
VPN 피벗은 완전히 암호화된 TCP/IP 스택을 TCP 스트림 소켓을 통해 송수신한 후, 피어(peer)가 이를 원하는 장치/호스트로 전달합니다. 공격자는 DHCP 서버에서 얻은 로컬 IP 주소 또는 정적으로 구성된 IP 주소를 사용하여 내부 네트워크에 속한 것처럼 탐색합니다.
yaourt -S vpnpivot-git
설치는 매우 간단합니다. 다음 명령어를 입력하세요:
root@pwnies:~# git clone https://github.com/0x36/VPNPivot.git
root@pwnies:~# cd VPNPivot
root@pwnies:~/VPNPivot# ./autogen.sh
root@pwnies:~/VPNPivot# ./configure
root@pwnies:~/VPNPivot# make && make install
VPNPivot 서버는 공격자 머신에서 실행되어야 하며, MAC 변경 가능(스푸핑 및 MAC 스위칭에 유용), IP 주소, MTU, 인터페이스 소유자 설정이 가능한 가상 장치(tap)를 생성합니다. TAP 장치는 타겟 머신과 상호작용하며, 원시 이더넷 프레임을 송수신합니다. 공격자가 성공적으로 터널 연결을 얻으면, tap 장치는 내부 해킹된 네트워크의 DHCP 서버와 상호작용하고, 브로드캐스트 패킷을 송수신하며, IP 주소를 재사용할 수 있습니다.
pivots 작업은 매우 쉽습니다. 각 옵션이 무엇을 하는지만 알면 됩니다:
root@pwnies:~/VPNPivot# ./src/pivots -h
__ _______ _ _ _____ _ _
\ \ / / __ \| \ | | __ (_) | |
\ \ / /| |__) | \| | |__) |__ _____ | |_
\ \/ / | ___/| . ` | ___/ \ \ / / _ \| __|
\ / | | | |\ | | | |\ V / (_) | |_
\/ |_| |_| \_|_| |_| \_/ \___/ \__|
VPNPivot server v1.0 by Simo36
-i --iface <device> 비영구적 tap 장치 생성
-I --ifconf <ip/mask> 인터페이스 구성 (IP/마스크)
-p --port <port> 서버 포트 리스너 (기본값: 12345)
-m --mtu <size> 가상 장치 MTU 크기 (기본값: 1550)
-u --user <user> 장치 소유자 사용자 (선택사항)
-H --hw <MAC> 인터페이스의 MAC 주소 설정
-C --cert <server_cert> PEM 인증서 파일명
-P --pkey <private_key> PEM 개인 키 파일명
-v --verbose 상세 모드
-d 데몬화
root@pwnies:~/VPNPivot#
위의 모든 옵션은 선택 사항이지만, 설명이 자명하더라도 설명할 가치가 있습니다:
VPN 피벗 클라이언트는 타겟 머신에서 실행되어야 하며, 두 개의 소켓 파일을 생성합니다. 첫 번째는 터널용 클라이언트, 두 번째는 장치 네트워크와 직접 상호작용하기 위한 것입니다. 이는 탐지하기 어려운 tap 장치를 생성하는 방식으로 작동합니다.
pivotc 작업은 서버보다 더 쉽습니다. pivots에 연결하려고 할 때 혼동하지 않으면 됩니다:
root@pwnies:~/VPNPivot# ./src/pivotc
Usage :
./src/pivotc <server IP> <server port> <locale IP> [MTU]
root@pwnies:~/VPNPivot#
옵션은 다음과 같습니다:
실시간 데모보다 좋은 것은 없습니다. 이에 VPNPivot의 기본 사용법을 설명하는 동영상을 제작했으며, 유튜브에서 확인 가능합니다.
그게 다입니다! 즐거운 해킹 되세요 :-) 건배