감자 텃밭

[모의해킹] tomcat취약점을 통한 침투 및 root권한 획득 본문

Pentest/Pentest

[모의해킹] tomcat취약점을 통한 침투 및 root권한 획득

g2h 2021. 12. 16. 23:15

 

 

톰캣 취약점을 통한 침투테스트


● 정보 수집 : Nmap, netdiscover
● 취약 스캐닝 : searchsploit
수집 정보
1. Open Port : 22, 53, 110, 143, 993, 995, 8080
2. Apache Tomcat/Coyote JSP engine 1.1 
3. ubuntu 14.04.1 

1. 정보수집 단계


우선적으로 IP를 확인하여 네트워크 대역대를 확인한다.

( 같은 네트워크에 존재하기때문)

현제 192.168.152.129 호스트 IP를 가지고 있기에

타겟 시스템은 192.168.152.X 대역에 존재한다.

 

Netdiscover 를 사용하여 해당 네트워크 대역대에 존재하는

호스트 IP 들을 식별했다

.138번 호스트IP가 해당 타겟 시스템이라 추측

 

Nmap 을 통한 정보를 수집함

22, 53, 110, 143, 993, 995, 8080 포트가 열려 있었으며,

openSSH을 사용하며, 리눅스 커널이 3.x 또는 4.x 를 사용한다

가장 눈에 띄었던 것은 Apache Tomcat/Coyote JSP engine 1.1 이다.

아파치 톰캣 코요태 1.1버전을 사용중이다.

우선 8080 포트로 인터넷 접속을 시도했다.

 

위와같은 페이지가 출력되었으며, 해당 페이지에서 톰캣이 돌아가고있다는 걸 알았기에

관리자 페이지로 이동해보았다.

(192.168.152.138:8080/manager)

 

관리자 페이지로 접근이 가능하였으며, 인증을 해야했다.

 

metasploit에 적절한 모듈이 있는지 확인해보았다.

해당 모듈을 사용해보기로 했다. 관리자 프로그램에서 로그인에 도움을 주는 거 같으며,

사전대입공격을 이용하는 것 같다.

 

해당 모듈에 필요한 옵션값들을 세팅 후

실행시켰을때 수많은 Incorrect 중에서하나가

로그인에 성공했다고 뜬다

확인해보면 ID : admon PW : tomcat 인것 같다.


2. 취약점 스캐닝 단계


성공적으로 해당 톰캣 관리자 페이지에 접근했다. 

해당 페이지를 살펴보았다.

 

맨 아레 해당 서버의 정보도 확인할 수 있었으며,

WAR file to deploy 부분

즉 파일 업로드부분이 있었으며, 해당 부분에서

파일업로드 취약점이 있을거라 추측하였다.

다시한번 metasploit를 통해 필요한 모듈이 있는지 검색하였다.

 

 

분명 Deploy 이기에 해당 모듈을 사용하면 될것이라 생각했지만 무슨 이유에선지 해당

모듈은 exploit 되지않아  다른모듈을 사용했다.

 

업로드 취약점이기에

exploit/multi/http/tomcat_mgr_upload 모듈을 사용해본결과

성공적으로 exploit 되었으며, meterpreter shell을 획득하였다.

 

해당meterpreter에서 바로 관리자 쉘을 획득하거나 다른 유용한 기능이 있는지

help 에서 확인했지만 적당한 기능이없어 shell을 통함

아파치 계정의 사용자 권한을 획득하는대 성공했다.

 

Meterpreter란 metasploit framework에 포함되어 있는 payload이며,
여러 특별하고 편리한 기능들을 제공한다.


3. 타겟 시스템 침투 후 권환 획득


해당 시스템의 정보를 확인해본 결과 ubuntu 14.04.1 버전을 사용중이었다.

해당 정보를 가지고 searcsploit에 필요 모듈을 검색했다.

 

두 가지 모듈이 나왔으며 구글을 통해 검색해본 exploit들은 실행되지 않았다

해당 두 모듈중 아래에 있는 41760.txt을 내려받아 확인해 보았다.

 

해당 텍스트 파일의 내용을 확인해보던 중

위 사진에 나와있는 내용에서 해당 경로에 있는 .c파일이 exploit파일이며, 해당 경로에서

파일을 다운 받았으며,

바로 아래에

해당 실행파일의 사용법이 기재되어있었다 -- /bin/bash 파라미터를 던져줘야한다.

(해당 내용을 처음에 확인하지못하여, 삽질을 하였다.)

공격자 pc에서 웹서버를 열고,

해당 타겟시스템에서 권한문제때문에 공유작업디렉토리인 /tmp 디렉토리로 이동하여

wget을 사용하여 해당 .c파일을 받아온 후 컴파일 시켰다.


4. root 권환 획득


/etc/passwd 파일 열거 가능

성공적으로 root권한 획득에 성공했다.

 

※ 내용이 이상하거나 문제가 있을경우, 또는 설명에 부족한 내용이 있으시면 알려 주시면 감사합니다.