0x02 Study :)/Webhacking

    webhacking.kr Level 7 문제풀이

    webhacking.kr Level 7 문제풀이

    ※ 2018. 07. 30. 기준 Webhacking.kr Level 7문제는 문제가 풀리지 않는 상태임을 알립니다. (카더라통신: 현재 서버가 union 명령어를 쓸 수 없다고 합니다.) Level 7 'auth' 버튼을 누르니 "Access_Denied!" 경고창이 뜬다. 소스코드를 살펴보자.

    webhacking.kr Level 5 문제풀이

    webhacking.kr Level 5 문제풀이

    Level 5 Login 버튼과 Join 버튼이 존재한다. 소스코드를 보자. 'Login' 버튼을 누르면 mem/login.php로 이동이 되고, 'Join'을 클릭하면 "Access_Denied" 경고창을 띄운다. 'Login' 버튼을 눌러보자. 로그인 창이 뜨길래 'test' 값을 둘다 넣어 login해보았다. admin으로 로그인해야 되는 것 같다. 그래서 admin으로 로그인 해봤다. 그래서 admin으로 로그인 해야 되나 싶어 SQL Injection을 했다. (이는 삽질이였다. 😢) 그래서 이것 저것 코드살펴보고 하다가 처음 화면에서 'Login' 버튼을 누르면 mem/login.php 로 이동되는 것을 보고 혹시 디렉토리 노출 취약점이 있나 싶어 접속해보았다. '혹시나' 가 '역시나'로 바뀌..

    webhacking.kr Level 3 문제풀이

    webhacking.kr Level 3 문제풀이

    Level 3 네모로직 문제가 나왔다. 네모칸을 클릭하면 검정색으로 변하게 된다. 매우 쉬운 네모로직이므로 풀고 'gogo'버튼을 눌러 보았다. 이름 입력 받는 창이 나오게 되고 입력하고 'write'를 누르면, 내 아이피와 아이디, 그리고 answer값이 표시된다. 여기서 answer값은 소스코드를 보면 알 수 있다. 소스코드에서 일부 코드만 가져왔다. 코드를 살펴보면 onclick이 일어났을 때, 배경을 검정으로 바꾸고, kk._1.value의 값을 1로 셋팅한다. 이런식으로 각 칸마다 _1, _2, _3 식으로 _25 까지 코딩되어 있다. function go() { var answer=""; for(i=1;i

    Webhacking.kr Level 61 문제풀이

    Webhacking.kr Level 61 문제풀이

    Level 61 소스코드만 덩그러니 던져준다. 이는 as를 이용하면 될 것같다. as는 테이블 컴럼의 이름을 임시로 변경할 수 있다. 이를 이용하여 ?id='admin' as id 를 입력하였더니 생각하던 대로 되지 않았다. 이유는 쿼리문을 보면 $_GET[id] 주위로 ' '가 있지 않다. 즉, 문자열로 들어가는 것이 아니라 정수값으로 들어가게 된다. 따라서 'admin'이라는 값을 정수값으로 넣어주어야 한다. >>> string='admin' >>> for x in string: ... hex(ord(x)) ... '0x61' '0x64' '0x6d' '0x69' '0x6e' id=0x61646d696e as id

    webhacking.kr Level 58 문제풀이

    webhacking.kr Level 58 문제풀이

    Level 58 58번 문제는 플래시로 이루어져 있다. "login"버튼을 누르면 "Wrong"이라고 뜬다. 크롬 개발자모드로 보면 hackme.swf 파일이 있는 걸 확인 할 수 있다. 이를 다운받아 'Sothink SWF Decompiler' 프로그램으로 살펴 보았다. Action 부분에 button에 대한 Action 이 정의 되어 있으며 pw값이 맞으면 'http://webhacking.kr/challenge/web/web-35/g1v2m2passw0rd.php' 링크로 이동되게 되어 있다. pw값을 찾을 필요도 없이 해당 링크로 이동하면 문제가 풀린다.

    webhacking.kr Level 56 문제풀이

    webhacking.kr Level 56 문제풀이

    Level 56 noidsubjectsecret 1adminreadme0 2guesthi~1 search : 소스 코드에서 불필요한 부분은 제거한 코드이다. 소스코드에 별다른게 없어 search 에 문자를 무작위로 넣고 제출해보았다. 테이블에 아무런 정보가 뜨지 않는다. 입력 값에 따라서 테이블에 나오는 값이 달랐다. '_'를 4개 넣어보니 admin만 출력 되었다. 즉, like 명령어를 통해 조회하고 있음을 알 수 있었다. 테스트 결과 쿼리문은 select * from broad where subject like '%$search%' 라고 생각되어진다. LIKE는 특정 문자열 정보가 포함된 데이터를 뽑을 때 사용한다. LIKE에서 '_' 를 이용하여 글자수를 나타낸다. 밑줄 문자 '_' 를 사용하여 ..