웹찢남

ANGSTROM CTF - WRITEUP 본문

WEB_HACKING/Capture The Flag

ANGSTROM CTF - WRITEUP

harry595 2020. 3. 21. 18:22

개강으로 인해 문제를 많이 풀지 못했다.ㅠㅠ

빅데이터 응용 보안이란 수업을 듣고 있는데 보통 웹 서버의 로그를 분석하는 것 같다.

재밌을것 같아 추후에 배운 내용을 포스팅 하겠씀다!

 

1. THE MAGIC WORD

링크에 들어가면 이런 html만 떡하니 있다. 소스를보자

if(mahic.innerText='please give flag') 딱보인다 html에 please를 붙여보면??

CLEAR!!!

 

 

 

2. XMAS STILL STANDS

 

post페이지 봐도 xss란걸 알 수 있다.

위와 같은 payload를 넣어봤는데 역시나 쿠키를 전달해준다. admin이라는 페이지가 따로 있어서 fetch함수를 통해 풀어야 겠다 계획하고 페이로드의 response를 보니 다음과 같은 쿠키를 전달해줬다.

내 쿠키에 추가를 하여 admin페이지에 접속을 해보면 flag를 얻을 수 있다. CLEAR!!!

 

 

3.consolation

 

 

 

 

 

 

위와 같은 페이지를 출력 해주고 있다. 자세히 보면 button의 onclick이 nofret()이라는 함수를 불러주고 있는데 nofret함수를 볼 수 있게 해놨다. 한번 보자

 

 

 

 

CONSOLE에 document뭐를 하고 clear 함수를 사용한다고 판단된다. 

그러면? clear전의 부분을 console에 입력을 해보면??

 

 

 

flag가 나온다. CLEAR!!!

 

4. Git GOOD

 

저번 ctf의 슈렉님 덕분에 뚝!딱! 풀어버렸다. 요즘은 이런 문제가 핫한 것 같다.

 

 

 

해당 url에 들어가면 대놓고 파일을 준다고 써있다.

지난번 슈렉의 하하하하위 호완 문제 인 것 같다.

자그럼 .git의 로그헤드를 우선 봐보자

 

I lied this is the actual initial commit이라고 커밋 두개가 있다. 커밋을 한 번 zlib으로 uncompress해보자

 

요런 친구가 나온다. 저 커밋도 한번 uncompress해보면??

 

이렇게 flag.txt를 변조하기 전의 commit이 나온다(좌측은 원래 commit).

마지막으로 thisistheflag.txt의 원본 파일을 uncompress 해보면?? 플래그가 나온다.

 

CLEAR!!!

 

 

5.secret agent

 

귀찮으면 몸이 고생한다는 것을 절실히 느낀 문제다...

스크립트를 짜서 풀었으면 좀 더 빨리 손가락 덜 아프게 풀지 않았을까 생각한다.

 

 

 

 

 

select * from agents where UA='' 형식으로 USERAGENT를 통해 인자를 받고 있다.

게다가 res의 len을 통하여 2명 이상의 response가 들어 오면 바나나나나 를 출력한다. 

procedure analyse()도 써보고 sqlmap도 써보고 해봤는데 테이블을 볼 수 없었다..

다른 writeup을 한번 봐야겠다..

 

그래서 고안한 방법은 > 문 이었다.. 감이 잡히십니까??/..

125번의 시도 끝에 답을 얻었다...

 

PAYLOAD는 USERAGENT: ' or UA>'a' and UA<'c

이런식으로 값을 하나하나 비교해본 결과

위와 같은 payload에서 flag가 나왔다..

어쩃든.. CLEAR!!!

 

+다른 writeup을 한번 보고왔는데 ' or '1' = '1' limit 2,1# 이런 코드로 쉽게 얻을 수 있었다. 나는 바보다... 왜 이 생각을 안해 봤을깦ㅠㅠ 좀 더 삽질을 해봐야 정신을 차릴 것 같다.

 

6.DEFUND'S CRYPT

 

 

개강을 핑계로 대고 여기까지 풀었다. 아쉽긴 하지만 너무 바쁘다..

 

어쨋든 이 문제는 파일을 업로드 하면 페이지에서 파일이 img 파일인지 판단하고 img일 경우 출력을 해준다.

역시나 file upload vuln이다.

우선 소스도 제공해주니 한번 보도록 하자

위와 같이 파일의 형식도 비교하고 파일의 이름도 비교하여 img를 판단한다.

그리고 이문제의 힌트는  아래와 같다. xxx.png.php로 하고 파일의 형식을 정해주면 clear가 될 것 같다.

 

그냥 컴퓨터에 굴러다니는 png 파일에 .php형식자를 붙이고 내부에 hex edit을 통하여 payload를 작성 했다.

이런식으로 파일을 upload시키니 clear!!!

CLEAR!!!

'WEB_HACKING > Capture The Flag' 카테고리의 다른 글

NahamCon CTF  (0) 2020.06.13
UTCTF - writeup  (0) 2020.03.11
SarCTF-writeup  (0) 2020.02.17
NeverLan CTF -WEB writeup  (0) 2020.02.14
RiceTeaCatPanda - *growls at the chicken*  (0) 2020.01.29
Comments