
CVE-2016-5696에 대한 PoC 코드
CVE-2016-5696에 대한 개념 증명(PoC) 코드
Rover는 CVE-2016-569에 설명된 대로 임의의 클라이언트 소스 포트를 발견하는 작은 Python 프로그램입니다. 소스 포트를 알게 되면 두 호스트가 통신 중임을 확인하는 데 필요한 4-튜플 정보를 완성할 수 있습니다. 실행되면 rover는 대상 서버와 연결을 설정하고, 내부 클럭을 서버의 challenge ack 시간에 동기화한 다음, 대부분의 Linux 호스트의 기본 임시 포트 범위(필요에 따라 변경 가능)를 검색하기 시작합니다.
자세한 내용은 원본 논문을 여기에서 확인하세요.
이 도구는 kali 1.0에서 Ubuntu 14.04 SSH 서버를 대상으로 테스트되었습니다. 다른 환경에서도 작동해야 하지만, 코드를 일부 수정해야 할 수도 있습니다. 요구 사항은 다음과 같습니다.
사용법은 다음과 같습니다:
rover.py [-h] -c 192.168.1.1 -s 192.168.1.10 -p 22 [-v v, vv]
CVE2016-5969 Demonstrator.
optional arguments:
-h, --help show this help message and exit
-c 192.168.1.1 The target client IP.
-s 192.168.1.10 The target server IP.
-p 22 The target server port.
-v v, vv The verbosity level
Rover는 동기화 품질에 따라 약 1~2분 안에 완료됩니다.

os.system('iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP'). 프로그램이 작동하려면 이 규칙이 IPTABLES에 있어야 합니다.