2019 선린 해킹방어대회 웹 문제
매년 CodeRed에서 선린인터넷고 해킹방어대회를 주관하는데, 작년에 이어 올해도 문제 출제를 맡게 되어서 웹 해킹 문제 3개를 만들었다.
문제 모두 소스코드를 제공해주는 화이트박스 문제였고 난이도는 대체로 쉽게 만들려고 노력했다.
jjang9 (PHP)
이 문제는 PHP file system bug와 file inclusion 취약점을 섞어서 낸 문제다.
PHP file system bug에 관한 발표 자료는 코드게이트 발표 후기 글에 공유 해놨다.
PHP file system bug를 이용하면 lfi가 가능하고 해당 취약점을 이용해 rce를 할 수 있다.
다만 open_basedir이 걸려있기 때문에 얼마 전에 Blaklis_라는 해커가 공유한 방법으로
open_basedir을 우회하고 /flag
를 읽으면 플래그를 얻을 수 있다.
Last old school (PHP)
Last old school은 error based sql injection 문제다.
교내에 lord of sqli로 공부하는 친구가 많이 보여서 lord of sqli 문제 스타일로 만들어봤다.
필터 키워드는 “_|[.]|sleep|bench|if|case|when|co|select|user” 이렇게 느슨하게 해놔서
여러 error based 방법으로 풀이가 가능했다.
My first app (Python Flask)
마지막 My first app은 css injection 문제다.
프로필 페이지의 style태그 안에 내 입력이 들어가며 플래그 또한 admin 프로필 페이지
특정 태그의 value 속성에 들어있었기에 그걸 한 글자씩 요청해서 뽑아오면 얻을 수 있다.
https://github.com/munsiwoo/ctf-web-prob/tree/master/2019/Sunrin_Internet_High_School_CTF_2019
2019 Sunrin Internet High School CTF README.md
All prob were made by munsiwoo.
- jjang9
- PHP file system function trick
- open_basedir bypass
- lfi to rce
- My first app
- css injection
- Last old school
- error based sql injection
You can contact me via [[email protected]]
2 Comments
Leave a Reply
You must be logged in to post a comment.
ipwn
2019-05-20 at 08:43쉽다 쉬워