| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- KVE
- SK쉴더스
- CSRF
- xst
- crosssitescripting
- 워게임
- 정보보안
- extension
- xsstool
- 핵더챌린지
- httpOnly
- 특수대학원
- web
- XSS
- 쉴더스
- OWASP
- hacking
- wargame
- 버그바운티
- attack
- Burp
- paddingoracle
- 드림핵
- Burp suite
- 웹 해킹
- bypass
- PADDING
- reflected
- CVE
- 루키즈
- Today
- Total
Why Always Me!
1. 워게임 문제 제작 후기 본문
1. 계기
평소 취약점 진단을 하면서 경험했던 케이스들을 공유하기 위해 문제를 만들기로 했습니다.
팀 내에 교육 자료로도 사용할 수 있고, 나중에 PoC가 필요할 때 활용도 가능하지 않을까 싶기도 해서요.
기존 CTF 계열의 문제는 특정 웹 서비스라든지, VM을 통해서 전달이 되었는데 티오리라는 회사가 운영하는 드림핵에는 문제를 배포할 수 있는 기능을 제공해서 해당 플랫폼을 이용하기로 했습니다.
2. 컨셉
문제 컨셉은 클라이언트 쪽 필터링을 우회할 수 있는가?로 잡았습니다.
평소 진단을 하다보면 < 이런 특수 문자를 서버로 보내게되면, 클라이언트에서 js를 통해 < 로 변환하는 경우를 많이 볼 수 있습니다.
이 경우, 서버에서 클라이언트 필터링을 신뢰해서 문제가 발생하는 경우가 많습니다.
공격자는 프록시 툴로 <를 <로 바꿔주면 되는 일이니까요.
그래서 암호화 로직을 추가했습니다.
프록시에서는 암호분이 보일 뿐, 직접적인 수정은 할 수 없습니다.
공격자는 클라이언트 측 필터링을 개발자 도구로 분석하여 우회해야 합니다.
js 분석과 개발자 도구 활용이 익숙한 분들은 쉽게 문제를 해결할 수 있을 거고 그렇지 않으면 조금 먼 길을 돌아가야할 수도 있습니다.
3. 후기
문제를 만든다는 게 꽤 어려운 일이라는 걸 알았습니다.
제가 원하는 대로 공격 유형을 유도하는 게 쉽지 않더라구요.
하지만 다음 번엔 좀 더 좋은 문제를 만들 수 있을 거 같습니다.
https://dreamhack.io/wargame/challenges/1959
Trust the Client Filter
보안팀의 김보안 씨는 최근 웹 애플리케이션 소스코드 진단을 받게 되었습니다. 진단자는 말했습니다. “이거 SQL Injection 가능성 높습니다. 여기, 여기, 그리고 여기도요.” 지적사항은 무려 12건
dreamhack.io
혹시 여유가 있으신 분들은 문제 한 번 풀어보시는 거 어떨까요! 잘 안 팔려서 블로그에 홍보합니다..