
Simple JMX RMI scanning tool
간단한 JMX RMI 스캐닝 도구
전체 코드: https://github.com/marcin-wolak/SimpleRmiDiscoverer/blob/master/SimpleRmiDiscoverer.java
이 도구는 노출된 Java JMX에 대해 다음 옵션을 제공합니다:
$ javac -cp commons-cli-1.6.0/commons-cli-1.6.0.jar SimpleRmiDiscoverer.java
SimpleRmiDiscoverer [-d] [-h] -H RMI-HOST-IP [-i] -P RMI-HOST-TCP-PORT
SimpleRmiDiscoverer는 RMI 레지스트리에서 JMX host:port 엔드포인트를 추출하고 자격 증명 없이 관리 애플릿(MLet)을 사용하여 악용 가능한지 확인합니다.
옵션:
-d,--dumponly RMI 레지스트리에서 엔드포인트 host:port를 추출하며 자격 증명 없이 JMX 악용 가능 여부는 확인하지 않습니다.
-h,--help 도구에 대한 도움말을 출력합니다.
-H,--host 조회할 RMI 레지스트리의 IP.
-i,--ignore 메서드 호출에 RMI 레지스트리 IP를 사용합니다. 레지스트리 덤프의 엔드포인트(IP)를 무시합니다.
-P,--port 조회할 RMI 레지스트리의 TCP 포트.
다음 속성으로 실행 중인 JVM 애플릿을 가정해 보세요:

RMI 레지스트리 덤프(-d, --dumponly) 옵션은 다음 결과를 제공합니다:

이 경우 호스트(192.168.229.131)의 취약 여부를 확인하려면 -i, --ignore 옵션을 사용해야 합니다.
이 옵션은 "FakeHost"를 무시하고 RMI 레지스트리에서 앞서 추출한 동적 TCP 포트
(45057)와 함께 192.168.229.131을 대신 사용하는 데 도움이 됩니다:

자세한 내용은 제 블로그를 확인하세요: https://marcin-wolak.medium.com/