워게임/Root Me

[Root Me] Javascript - Authentication 2 - 웹해킹 / 자바스크립트

SecurityMan 2022. 3. 8. 07:30

 

 
Javascript - Authentication2
 
자바스크립트 인증 관련 두번째 문제이다.

아까 문제랑 다르게 배점이 10점이다. 

조금 어렵지 않을까 기대했으나 그렇게 어렵지는 않았다.

 

 
문제페이지에 들어가면 로그인 버튼이 하나 나온다.
 
버튼을 클릭해서 로그인을 하면 되는 문제이다.
 
이전문제처럼 f12를 눌러서 개발자 도구를 보면 iogin.js 에서 인증 관련된 부분을 찾울 수 있다.
 
 
필요한 부분만 잘라내서 좀 보면
var TheLists = ["GOD:HIDDEN"];

for (i = 0; i < TheLists.length; i++)
{
	if (TheLists[i].indexOf(username) == 0)
	{
		var TheSplit = TheLists[i].split(":");
		var TheUsername = TheSplit[0];
		var ThePassword = TheSplit[1];
		if (username == TheUsername && password == ThePassword)
		{
        	alert("~~~~~~")
		}
	}
}

TheLists라는 배열에 GOD:HIDDEN 이라는 값이 들어가 있다.

밑에 있는 if 문에서

이것을 split을 이용해 ":" 을 기준으로 앞 뒤로 나눈다.

 

나눠진 값을 각각 TheSplit 배열에 집어넣고

첫번째 인덱스의 값은 username에, 두번째 인덱스의 값은 password에 넣는다.

 

결국 TheUsername에는 GOD 값이, ThePassword에는 HIDDEN 값이 들어가게 된다.

 

로그인창에 GOD / HIDDEN 각각 쳐주면

문제를 해결할 수 있다.
반응형