Hacking/HTB

WEB - Templated

ursobad 2021. 5. 30. 02:59

Flask로 만들어져있다고 한다.

Jinja2는 Flask에 내장되어있는 템플릿 엔진이라고 하는데 문제이름도 템플릿이고 템플릿 엔진이라고 하니까 플라스크 템플릿 취약점이라고 구글링하니까 SSTI(Server Side Template Injection)라는 취약점이 있다.

이론적인건 나중에 보고 익스플로잇하는 방법들을 좀 찾아봤다.

가장 기본적으로 {{7*7}}을 넣어보니까 

이렇게 49가 나온다

구글링을 해보니 리눅스 커맨드를 실행하려면

"{{ (config|attr("__class__")).__init__.__globals__['os'].popen('cat flag').read() }}"

이렇게 해야되는것 같으니 cat flag 자리에 ls를 넣었더니 

flag.txt 가 바로 보인다.

똑같은 방식으로 cat flag.txt를 실행시켰더니 바로 flag가 나온다.

이번 문제는 걍 취약점 이름으로 무지성 구글링하다 얻어걸린것 같아서 좀 찝찝하긴하다