목록분류 전체보기 (17)
starting point
Sign up을 클릭하면 회원가입 창으로 넘어간다. url을 보면 next변수에 confirm이라는 값이 들어가는 것을 볼 수 있다. 이곳에 다른 값을 넣어보고 변화하는 것을 개발자 도구를 통해 살펴보겠다. 입력되는 값에 따라 태그의 링크가 변화하는 것을 볼 수 있다. 이 곳에 onclick속성을 넣는 방법을 통해 문제를 해결할 수 있다. 힌트를 보면 onclick속성을 사용하는 방법 이외에 방법을 사용하라고 나와있다. 이를 해결하기 위해서 다른 방법을 찾아야 한다. 태그와 on속성을 사용하지 않고 자바스크립트를 실행시킬 수 있는 방법이 있다. javasciprt:(anycode)를 통해 자바스크립트를 실행시킬 수 있다. 원래는 태그를 통해서 자바스크립트가 실해되지만 이러한 방법으로도 간단한 자바스크립트..
입력된 시간만큼 타이머가 만들어지는 웹사이트이다. 또한 입력한 시간이 추력되느 것을 알 수 있다. 입력한 시간이 지나면 위와 같은 알림창이 나타난다. html코드를 보면 입력한 숫자가 startTimer()의 매개변수가 되고, 태그의 문자열로 입력되는 것을 볼 수 있다. 태그를 대상으로 우선 공격해 보았다. 스크립트 문이 그대로 출력되며 경고창이 뜨지 않는 것을 볼 수 있다. 태그안에 태그가 그대로 출력된 것을 보면 "
3개의 인덱스를 선택하면 각 인덱스에 해당하는 이미지를 출력해주는 페이지다. 그에 따라 url의 frame#(num1)에서 num1부분이 변화하는 것을 알 수 있다. 그리고 이번 문제는 입력할 수 있는 입력창이 없으므로 url을 이용해야 함을 알 수 있고, 아래의 그림같이 문제의 설명을 통해서도 알 수 있다. 각 인덱스를 선택했을 때 html문서에 어떤 변화가 있는지 살펴보기 위해 개발자 도구를 통해 알아보겠다. onclick속성으로 chooseTab(string)함수가 실행되고 그에 따라 Image (num2)와 cloud(num3)에서 num2, num3부분이 변화하는 것을 알 수 있다. 이를 통해 이 두 부분을 공략해야 함을 알 수 있다. chooseTab()함수가 구현된 것을 보니 전달된 매개변수..
입력한 문자열을 화면에 출력해주는 것처럼 보인다. 1번과 마찬가지로 를 입력하였다. 하지만 아무것도 출력되지 않았다. 이 부분을 확인하기 위해서 개발자도구를 통해 코드를 살펴보았다. 정확하게 태그로 감싸진 스크립트 문이 입력되었지만 코드가 실행되지 않는다. 그렇다면 태그가 아닌 html의 on속성을 이용해서 자바스크립트를 실행시키는 방법을 사용해 볼 수 있다. 를 입력했다. 태그를 이용하여 이미지 로드 시 에러를 유도하고 그 결과로 경고창을 띄우게 했다. 성공적으로 문제를 해결했다. 이 문제에서는 1번 문제에서 발생한 xss취약점을 막기 위해 태그를 사용을 막은 것을 확인할 수 있었다. 하지만 위처럼 html의 on속성을 이용한 자바스크립트를 막는 것에는 역부족임을 확인할 수 있었다. 또한 문자열이 DB..