본문 바로가기

wargame/suninatas

[suninatas]challanges 02

challenges 02


문제


페이지 소스의 일부를 가져왔다.

<script>
	function chk_form(){
		var id = document.web02.id.value ;
		var pw = document.web02.pw.value ;
		if ( id == pw )
		{
			alert("You can't join! Try again");
			document.web02.id.focus();
			document.web02.id.value = "";
			document.web02.pw.value = "";
		}
		else
		{
			document.web02.submit();
		}
	}
</script>
<!-- Hint : Join / id = pw -->


Hint를 보면 id와 pw가 같으면 문제를 해결할 수 있는 것 같다.
하지만 join 버튼을 눌러 chk_form()을 실행하면 다시 id, pw가 초기화되어 원점으로 돌아온다.

자바스크립트 관련해서 검색해보니 XSS 기법, 프록시 툴을 이용해서 값을 변조시키는 방법 등이 있었다.
이 문제에는 프록시 툴이 효과적일 거라 판단하여 burp suite를 이용해서 문제를 풀기로 했다.

우선 프록시 설정을 해야 한다.
크롬에서 설정에 들어가 프록시 설정 열기를 클릭한다.


연결 > LAN 설정을 클릭한다.


프록시 서버를 클릭하고 다음과 같이 설정한다


기존에 설치했던 burp suite를 실행하고 id와 pw를 아무렇게나 입력하고 join 버튼을 클릭한다.


burp suite에서 파라미터로 전달되는 값들을 확인할 수 있다.

더블클릭하여 pw에 해당하는 값을 수정한다.

forward를 누르면 진행되고 다시 웹페이지로 돌아가면 Authkey가 나온 것을 확인할 수 있다.


auth 창에 입력하면 문제 해결

'wargame > suninatas' 카테고리의 다른 글

[suninatas]challenges 05  (0) 2019.10.03
[suninatas]challenges 04  (0) 2019.10.01
[suninatas]challenges 03  (0) 2019.09.18
[suninatas]challenges 01  (0) 2019.09.04