728x90
오늘은 DreamHacker의 웹 해킹 워게임 중 하나인 tmitter를 함께 풀어볼 예정입니다.
## 문제 설명:
문제 정보를 살펴보면 'admin' 계정으로 로그인하면 되는 것으로 보인다.
## 문제 풀이
사이트에 접속해보니 다음과 같은 화면이 보인다.
"Sign in"과 "Sign Up" 버튼이 있는데, "Sign in" 버튼을 클릭하여 admin 계정에 대해서 SQL Injection 공격을 시도했으나 잘 뚫리지 않는다.
"Sign Up" 버튼을 클릭하니 다음과 같은 화면이 출력되었다.
버프 스위트를 활용해서 소스 코드를 분석해보니 맨 아래줄에 다음과 같은 주석이 보인다.
admin으로 먼저 회원가입하라는 힌트가 보인다. 그러나 admin은 이미 있는 계정이니 admin 문자 그대로 사용하여 가입할 수는 없다.
문제 설명으로 돌아가서 확인해보니 id값의 길이가 32Byte로 되어있는 것을 알 수 있다. Mysql 같은 경우에는 문자의 정해진 길이를 벗어나는 문자를 입력할 경우, 해당 길이까지만 입력을 받고 나머지 부분은 자른다는 특징이 있다. 이 특징을 활용하여 다음과 같이 쿼리문을 작성할 수 있다.
정상적으로 가입된 것을 확인할 수 있다.
마지막으로 방금 가입한 아이디와 비밀번호로 로그인을 시도해보겠다.
flag가 성공적으로 출력되는 것을 확인할 수 있다.
'Wargame > DreamHack' 카테고리의 다른 글
[DreamHack 워게임] login filtering (0) | 2023.03.09 |
---|---|
[DreamHack 워게임] md5 password (0) | 2023.03.08 |
[DreamHack 워게임] Mango 풀이 (0) | 2022.02.07 |
[DreamHack 워게임] devtools-sources 풀이 (0) | 2022.02.06 |
[DreamHack 워게임] session 풀이 (0) | 2022.02.05 |