Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

White Security

Portfolio 문제풀이 본문

CTF Writups

Portfolio 문제풀이

POSIX 2019. 4. 1. 10:06

 

 

Sunshine CTF web 3번

Flask SSTI Injection 문제입니다.

 

 

주소에 접속하면 두개의 페이지 링크가 존재합니다.

상단의 Custom greeting을 먼저 살펴보겠습니다.

 

 

/hello/name 주소로 바로 연결되고

파이썬 웹 프레임워크 Flask를 사용하고 있다고 알려주네요.

뒤의 name 부분은 자유롭게 변경이 가능합니다.

 

 

바로 SSTI가 가능한지 확인해 보기 위해서

49를 기대하고 {{7*7}}를 삽입해 보았습니다.

그러나 escape되는 듯 적용되지 않습니다.

 

 

두번째 페이지를 살펴 보겠습니다.

단일 입력 폼이 보이는데

제출해도 간단한 텍스트가 출력되는 것이 전부입니다.

 

 

그런데 소스를 보면 주석화된 옵션이 존재합니다.

 

 

템플릿을 확인해 보니 config.DEBUG 가 설정되어 있으면

플래그를 출력하도록 되어 있습니다.

 

 

실제로 페이지를 보내 요청해보면

플래그는 보이지 않으니, config.DEBUG가 설정되지 않은 상태인듯 하죠.

 

 

template 인자로 메인페이지에 있었던

첫번째 페이지 주소를

삽입하니 SSTI 가 되는 것을 확인할 수 있었습니다.

 

 

이전의 템플릿을 통하여

플래그가 config 내에 저장되어 있다는 것을 알고 있으니

config를 출력하도록 해 주면 해결됩니다.

'CTF Writups' 카테고리의 다른 글

repeaaaaaat 문제풀이  (0) 2019.04.03
Sweet 문제풀이  (0) 2019.04.03
Wrestler Name Generator 문제풀이  (0) 2019.03.31
Wrestler Book 문제풀이  (0) 2019.03.31
TimeWarp 문제풀이  (0) 2019.03.31
Comments