HTTP - Improper redirect Write-up

Ccr3t·2026년 3월 6일

Wargame

목록 보기
65/76

[Solved in under 4 minutes]

왕과사는 남자를 봤다.
역사에 대한 영화이다보니 아주 좋은 것 같다.

근데 개연성이 조금 부족했다.

가보자



로그인 페이지가 뜬다.

나는 로그인 페이지만 보이면 SQLI인가 하는 정신병에 걸려있다.

일단 소스코드를 보자.


<html>

<body><link rel='stylesheet' property='stylesheet' id='s' type='text/css' href='/template/s.css' media='all' /><iframe id='iframe' src='https://www.root-me.org/?page=externe_header'></iframe>

<p>You must be authenticated in order to access this page !</p>
<form method="post" name="form" action="login.php">
    <p>Login : <input type="text" name="login" ></p>
    <p>Password : <input type="password" name="password" ></p>
    <p><input type="submit" value="Log in" ></p>
</form>

</body>

</html>

별건없으니 패스

그 외 진짜 SQLI 문제인가 싶어서 간단하게 시도하다가 패킷을 봤다

단순 로그인이다.

이때만 해도 SQLI 문제인가 다시 한번 생각하다가,
상단에 login.php?redirect라고 나와있는걸 이제 발견했다.
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

SQLI라고 계속 생각을 한 내가 저거에 꽂혀서 다른게 안 보였나 보다.

근데 보통은 redirect 파라미터를 이용해서 문제를 풀 생각을 할 텐데,
왜 인지 나는 login.php에 꽂혀서 왠지 저거 지우면 디렉토리 인덱싱이 될 것만 같았다
진짜 감.

뭔가 싶어서 Burp Suite로 패킷을 잡고 보았다.

예?

아. 유레카.

역시나, 접속 시 login.php가 바로 접속이 되는데 login.php를 지움으로써 /으로 설정된 기본 페이지로 로딩이 되고 로딩 즉시 리다이렉트 되는 구조인 것 같다.

그래서 index.php를 요청을때리면 플래그가 그대로 보이는 이유도 이거다.

이거를 삽입하면~?

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 답 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

ExecutionAfterRedirectIsBad

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

약간 뇌피셜로 내가 푼 방식이 살짝 다른 것 같기도 하지만 이런 방법도 있다~
하지만, 이해가 안되는 부분이 있으면 꼭 짚고 넘어가자.
그때 공부가 엄청 된다.

여하튼

RootMe HTTP - Improper redirect Write-up

이상 보고 끝!

profile
웹해킹을 잘 못 하지만 좋아 하려고 노력하는 한 젊은이.

0개의 댓글