ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • webhacking.kr 2번 [500p]
    $ 웹 해킹 $/webhacking.kr 2019. 4. 9. 23:24

    해당 화면이 문제를 들어가면 보이는 화면 입니다.

     

    일단 소스코드부터 확인 하겠습니다.

    주석으로 시간이 있습니다.

     

    목차의 BOARD 들어가 보면 oldzombie 이름으로 게시물이 하나 있는데 password 걸려 있습니다. 외에 아무것도 찾지 못했습니다.

    그렇다면 주어진 2가지를 가지고 문제를 접근 해야 하는데 쿠키 값을 보니

    Time 이라는 쿠키 값이 있습니다.

    SQL Injection 통해서 확인해 보도록 하겠습니다.

    ↓거짓

    거짓일때 <!--2070-01-01 09:00:00--> 입니다.

    ↓참

     

    <!--2070-01-01 09:00:01--> 입니다.

     

    그렇다면 해당 데이터베이스 테이블 명을 통해서 password 길이를 찾을 있습니다.

    하지만 테이블 명을 아무리 찾아도 없었는데 아는 분께서 예전에는 힌트로 줬다고 하셔서 받아 왔습니다.

     

    bbs 페이지의 테이블 : FreeB0aRd

    admin 페이지의 테이블 : admin

     

    그렇다면 쿠키 에다가 sql 구문을 이용해서 길이를 알아보겠습니다.

     

    만약 값이 참이라면 <!--2070-01-01 09:00:01--> 나올 입니다.

     

    ↓길이가 8일때 소스코드

    거짓이네요 9 10 등등 계속 해보겠습니다.

     

    ↓길이가 9일때 소스코드

    FreeB0aRd password 길이는 9였습니다.

    그렇다면 admin password 길이도 구해보겠습니다.

     

    ↓길이가 10일때 소스코드

     

    이제 FreeB0aRd admin password 길이를 알았으니

    Password 알아보겠습니다.

     

    python2 작성된 FreeB0aRd password 구하는 소스코드

     

    코드를 작성하지 않고 일일이 하나씩 넣어

    and (select ascii(substring(password,1,1)) from FreeB0aRd) = 97

    형식으로 33부터 126 까지 보내야 합니다.

     

    ascii() 문자열의 제일 왼쪽 문자를 ascii 코드로 변환해 줍니다.

    ) ascii('abc')  => a 문자를 ascii 코드로 변환.

     

    substring() 지정된 숫자를 기준으로 지정된 자리만큼 문자열을 자릅니다.

    ) substring(문자열, 시작 인덱스, 길이)

     

    and (select ascii(substring(password,1,1)) from FreeB0aRd) = 97 해석해 보자면

    substring으로 password 첫번째를 기준으로 1자리를 자른 값을 ascii코드로 변환하여 값이 97(아스키코드 ) 같은지 비교한다.

     

    처럼 (1,1) (2,1) (3,1) 이런 형식으로 모든 자리의 password 찾는 방법도 있다.

     

     

    admin manual이라는 파일이 있네요 다운 받아 보겠습니다.

     

    manual.html 있는데 암호가 걸려있습니다..

     

    아까 admin페이지 에서도 로그인 창이 있었습니다. 그래서 거기를 로그인 하면 압축파일의 password 있을 같습니다.

     

    위의 소스코드에서 from FreeB0aRd에서 from admin으로만 바꿔서 하시면 됩니다.

    admin페이지를 로그인 하니까 다음과 같이 출력되었습니다.

    매뉴얼 password 가지고 압축해제를 시켜보겠습니다.

     

    패스워드가 나오네요

    위의 패스워드를 인증해주면 Clear!

    '$ 웹 해킹 $ > webhacking.kr' 카테고리의 다른 글

    webhacking.kr 5번 [300p]  (0) 2019.04.09
    webhacking.kr 4번 [150p]  (0) 2019.04.09
    webhacking.kr 3번 [350p]  (0) 2019.04.09
    webhacking.kr 1번 [200p]  (0) 2019.04.09
    회원가입  (0) 2019.04.09

    댓글

Designed by Tistory.