Wargame
-
[Webhacking.kr] 14번 풀이Wargame/webhacking.kr (old) 2019. 4. 18. 18:04
뭔가 값을 입력하여 지정된 답이랑 동일하면 풀리는 문제이다.소스 코드에 지정된 답이 있을 것이다. 소스 코드를 보자!! 역시 ck라는 함수가 정의되어 있고, ckeck 버튼을 누르면 ck함수가 호출된다.ck함수를 해석해보면,ul에 URL에서 .kr의 인덱스 값에 30을 곱한 값을 넣어준다.그렇게 나온 ul 값이랑 입력된 값이 같으면 password를 alert창을 통해 알려준다. document.URL : http://webhacking.kr/challenge/javascript/js1.htmlul.indexOf(".kr") : 17ul * 30 : 510 사실 값을 입력하지 않아도 password를 예상할 수 있다.ul * pw.input_pwd.value = 510 * 510따라서, password는..
-
[Webhacking.kr] 13번 풀이Wargame/webhacking.kr (old) 2019. 4. 16. 04:33
php 소스 코드가 주어져있지 않은 SQL Injection 문제이다. get 방식으로 no의 값과 password의 값 전송이 가능한 것을 확인하였다. 우선, password는 모르겠으니 쉬운 no의 값으로 숫자들을 마구잡이로 입력해 보자..,,! 1. no=0 2. no=1 3. no=1 이외의 모든 수 page에 출력되는 결과들을 보면, no=1인 Data만 존재하는 것으로 추측할 수 있다. hint에 주어진 쿼리 문을 보니 password는 주어진 테이블의 flag 값인 것 같다. 우선, Injection Vector를 no라고 가정하고, no에 or을 사용한 후 페이지의 반응을 보았다. 아래와 같이 아무 이상없이 출력된다. (%20이 필터링되어 있는 관계로 ()를 사용하였다.) flag를 알아내..
-
[Webhacking.kr] 12번 풀이Wargame/webhacking.kr (old) 2019. 4. 16. 03:33
페이지에는 힌트가 없다.. 그저 자..바스크립트 도전..이라고만 적혀있다..;;그렇다면 도전..! 우리에겐 아주 유용한 개발자 도구(F12)가 있다.이 도구를 사용하여 소스를 보자!! Char 함수로 뭔가 문자열이 저장되어 있고, 그 문자열이 eval 함수에 의해 자바스크립트 코드로 실행된다.그렇다면, 문자열은 아마 소스 코드일 것이다. - eval("문자열")문자열을 자바스크립트 코드로 실행하는 함수로,식 형태로 된 문자열을 실수로 바꾸어 반환해주는 자바스크립트 내장함수 Char의 값을 하나하나 비교해서 소스를 알아내도 되지만..,,우리에겐 뭐다? 아주 유용한 개발자 도구가 있다..!개발자 도구의 Console 창을 이용하면 아주 쉽게 Char 함수의 문자열을 해석할 수 있다. 알아볼 수 있게 소스 코..
-
[Webhacking.kr] 11번 풀이Wargame/webhacking.kr (old) 2019. 4. 16. 02:58
- preg_match("정규표현식", "검사할 문자열")입력받은 문자열이 주어진 정규표현식과 검사하여 일치하면 True 문제를 보면 $pat에 지정된 정규표현식의 값과 val으로 보내준 문자열이 일치하면password를 echo를 통해 알려준다.따라서, $pat에 해당되는 문자열을 먼저 알아내야 한다.우선, 정규 표현식에 대해 알아보자. 정규 표현식(Regular Expression) 이란?특정 규칙을 가진 문자열의 집합을 표현하는 언어로 문자열의 검색과 치환을 위한 용도로 사용[정규 표현식] : http://www.nextree.co.kr/p4327/ 이제 $pat의 정규 표현식을 분석해보자,,!$pat="/[1-3][a-f]{5}_.*내IP주소.*\tp\ta\ts\ts/"// : 정규식에 필요한 경..
-
[Webhacking.kr] 10번 풀이Wargame/webhacking.kr (old) 2019. 3. 3. 00:20
뭘 해야 할지 모르겠어서 마우스로 방황하다가.. 글자위에 마우스를 가져다 놓았다. O부분에 마우스가 올라가면 yOu로 바뀌고 buy lotto 부분은 아무런 변화가 없다.일단 소스 코드를 보았다. onclick마우스 왼쪽 클릭 이벤트 onmouseover마우스가 개체 위로 올라갔을 때 발생하는 이벤트 onmouseout마우스가 개체에서 빠져 나갈 때 발생하는 이벤트 O의 id가 hackme인 것을 보니 이것을 해킹하는 문제이다.한 번 클릭하면 위치가 왼쪽으로 1칸 이동하고, O의 위치가 800이 되면 '현재 URL?go=800'으로 이동한다. 일단 O를 클릭해 왼쪽으로 이동하는지 해보니 아무런 변화가 없다...;;찾아보니 Chrome에서 안된단다....ㅠInternet Explorer를 통해 O를 클릭해..