일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 해킹캠프 ctf
- WEB-hacking
- php
- Hacker.org
- Web Hacking
- wargame.kr
- 해킹캠프
- WarGame
- hacking
- webhacking
- CVE
- hackingcamp ctf writeup
- cve 분석
- 해외 워게임
- XSS
- 웹 해킹
- 웹해킹
- backdoorctf 2023 web Unintelligible
- thinkPHP
- writeup
- backdoorctf 2023
- backdoorctf 2023 web
- backdoorctf writeup
- CTF
- hackctf
- hackingcamp
- 해외 wargame
- RCE
- Web
- XSS-game
- Today
- Total
<OOO>
핵챔 2021 문제 출제자 writeup 본문
예선 :
[웹]
Can you see? , Go beyond the limits.
[misc]
깨진 flag, 식칼좌
본선 :
[웹]
Web_XSS
-----------------------------------------------------------------------------------------------------------------------------------
[예선]
Can you see?
이 문제는 mysql에서 rce가 가능하다! 라는 생각으로 만들었던 문제다.
mysql 옵션중에 secure-file-priv 라는 옵션이 있는데, 이걸 이용하면 내가 지정한 위치에 파일을 생성할 수 있다.
예를들어 secure-file-priv = '/var/www/html' 이면 /var/www/html 디렉토리 안에 생성이 가능하다는 거다.
이걸 이용해서 sql injeciton으로 웹 쉘을 생성하여 풀면 되는 문제다.
처음 화면으로 들어가면 로그인 폼이 나오는데 여기서 sqli를 때리면 된다.
로그인에 성공하면
이런 창이 보일텐데, 여기서도 sqli가 먹히긴 한다. 그러나 flag는 db안에 없다.
여기서 쉘 코드가 담긴 파일을 만들면 된다.(sqli로..)
Go beyond the limits
얘도 sqli 문제였다. 다만, Can you see와 차이점을 두자면 특정 파라미터 값에만 sqli가 허용이 되어 사실 게싱이 아닌가 싶었던 문제였다.
웹 페이지로 들어가면 Login 버튼이 보이는데 버튼을 클릭하면
이런 로그인 창이 보인다. html 소스를 봐도 아무런 단서가 없지만. robots.txt에 들어가면 수상한 파일이 보인다.
/admin/admin_account.txt에 들어가면 admin의 계정 정보가 나오게 되는데, 이걸로 로그인을 하면 된다.
그리고 Search Report 폼에서 sqli 를 하면 되는 문제인데, 어떤 페이지의 파라미터를 수정못해 언인텐이 터졌던 문제다.
[MISC]
깨진 flag
이상한 언어로 인코딩이 되어있는데, 아희 언어를 디코딩 하면 flag가 나오게 된다.
식칼좌
슈슉 언어로 인코딩이 되어있는데, 슈슉언어 -> brain fuck -> plain text로 하면 된다.이 언어의 경우 시X라는 욕이 적혀있어 공식대회에선 좀... 이라는 피드백을 받았다.슈슉을 커컥으로 바꾼다던가 뭐 그런식으로 내자고 하니 난이도가 올라갈것 같아 바꾸진 않았지만.. 다음부턴 좀 주의를 해야할 것 같다.
-----------------------------------------------------------------------------------------------------------------------------------
본선
[WEB]
Web_xss
맨 밑에 관리자에게 편지를 쓸 폼이 존재한다. 여기서 xss로 공격하여 쿠키를 탈취하면 되는데,script 태그를 사용해야하며, 필터링은 영어,숫자,문자,한글을 필터링 한다.
그래서 특수문자로 이루어진 페이로드를 사용하여 xss를 하면 된다.
특수문자로 이루어진 걸 어떻게 만드냐? --> 자바스크립트 난독화를 하면 된다.
[후기]
해킹대회에 문제를 처음 출제해보고, 운영도 처음 해보는터라 다소 매끄럽지 못한 운영이 되었던것 같은데, 이번 계기로 많이 배웠던것 같다. 그리고 내 문제를 풀어준 사람들에게 감사하다라는 말을 전하고 싶다.
+ docker파일이 있으니 연락주시면 공유해드리도록 하겠습니다.
'CTF write up' 카테고리의 다른 글
MCH2022 web writeup (2) | 2022.07.27 |
---|---|
2021 Christmas CTF WEB writeup (0) | 2021.12.30 |
CCE 2020 FORENSIC - Keyboord (0) | 2021.09.10 |
CCE 2020 FORENSIC - Web Log (0) | 2021.09.10 |
CCE 2020 FORENSIC - Sharkme (0) | 2021.09.10 |