코드를 먼저 살펴 보자
유저에는 guest와 admin이 있다.
admin 으로 로그인하면 플래그를 얻을 수 있다고 한다. 그럼 admin의 비밀번호를 얻어야 한다.
아래는 guest로 로그인했을 때 보이는 화면이다.
csrf-1 를 풀었으면 조금만 응용해서 풀 수 있는 문제였다.
["frame", "script", "on"] 문자열이 * 로 치환되는 코드다.
csrf-1과 마찬가지로 /vuln 페이지에서 <img src="#"> 태그를 사용해 서버로 요청해보니 잘 가는 것이 확인된다. (서버는 Dreamhack Tools를 사용했다.)
pw 관련 코드는 /change_password 함수에서 볼 수 있었는데,
pw 인자에 원하는 값을 주어 바꿀 수 있게 되어 있다.
그래서 공격 코드는 아래와 같이 구성했다.
<img src="/change_password?pw=admin">
페이로드를 날린 후 /login 페이지에서 admin 로그인을 시도하니 플래그가 나왔다.
728x90
'Security > Write Up' 카테고리의 다른 글
[Dreamhack] Mango (0) | 2023.06.11 |
---|---|
[Dreamhack] simple_sqli (0) | 2023.06.04 |
[Dreamhack] csrf-1 (0) | 2023.05.31 |
[Dreamhack] XSS Filtering Bypass (2) | 2023.05.30 |
[Dreamhack] xss-2 (0) | 2023.05.30 |