본문 바로가기

1. Web hacking (웹 해킹)/1) Write UP

(19)
[2020.04.14] XSS Game Level5 첫페이지에서 Sign up을 누르면 이메일을 입력하는 창으로 넘어간다 이때 url을 보면 변수 next에 인자값으로 confirm이 들어가는 것을 볼 수 있다 아무 값이나 입력하고 next를 누르면 위의 페이지로 이동하고 몇초 후 첫 페이지로 다시 넘어간다 소스코드를 보면 Next>>의 링크 값이 next변수값에 의해 결정되는 것을 볼 수 있다 따라서 url에서 netx=confirm 이라고 되어있는 값에 confirm값을 조작해 문제를 해결한다 url로 스크립트를 전달하기 위해서 javascript: 를 사용한다 javascript:alert("hello");를 입력하고 go를 누른 후에 Next>>버튼을 누르면 ​ 스크립트가 동작하며 문제가 해결된다
[2020.03.31] XSS Game Level 1,2,3 ​1번 Level 1은 alert()으로 팝업창을 띄우면 풀리는 문제입니다. 입력창에 Hello라고 입력하고 Serch 버튼을 눌러보니 사용자가 입력한 값이 GET 방식으로 전달되는 것을 확인할 수 있었습니다. 더 자세한 분석을 위해 코드를 확인해보았습니다. 사용자가 검색하려고 입력한 값이 query라는 변수에 담기고 그 변수가 message에 들어가는 것을 확인할 수 있었습니다. HTML에 들어가는 변수를 사용자가 입력할 수 있는 취약점을 이용하여 입력창에 를 넣고 serch를 누르면 다음과 같이 alert 창이 뜨면서 문제가 해결됩니다. --------------------------------------------------------------------------------------------..
[2020.04.07] XSS Game Level 4.Context matters alert() 함수를 호출하는 문제이다. 처음 화면에서 입력창에 3이 적혀있는 것을 볼 수 있다. 그대로 입력해보면, 3초 안에 타이머가 실행된다면서 Time is up! 이라는 alert 창이 뜨는 것을 볼 수 있다. 이전과 같은 방식으로 onerror 이벤트도 써보았다. 당연히 풀리지 않았다. 힌트는 이렇게 주어져 있었다. 마지막 힌트대로 '(작은 따옴표)를 입력하여 실행시켜보니, 무한루프에 빠진 듯 alert함수가 실행되지 않았다. 'alert('1')' 이라는 문장을 HTML 코드로 인코딩하여 넣어보았다. (hint 2 활용) 입력 값: alert('1')' 하지만 여전히 풀리지 않았다. 소스코드를 살펴봤을 때 21번째줄에서 startTimer 함수가 호출되는 것을 볼 수 있었다..