[29] phantom 문제 풀이 no=1 레코드의 email을 찾는 문제이다. 먼저, 준비된 쿼리문을 보겠다. $query = "insert into prob_phantom values(0,'{$_SERVER[REMOTE_ADDR]}','{$_GET[joinmail]}')"; 쿼리문으로부터 추측할 수 있는 바는 다음과 같다. ...
Total (107)
Lord of SQL Injection › LOS - 28번 frankenstein
[28] frankenstein 문제 풀이 LoS 28번 Python 자동화 코드이다. import requests url = "https://los.rubiya.kr/chall/frankenstein_b5bab23e64777e1756174ad33f14b5db.php" cookie = {"PHPSESSID":"2evml88c628kabc2j...
Lord of SQL Injection › LOS - 27번 blue_dragon
[27] blue_dragon 문제 풀이 싱글쿼터와 역슬래시를 필터링하고 있다. pw를 알아내야하는 Blind SQLi 문제이다. 이전 문제들과 뭔가 다른 점은 다음 부분이다. $result = @mysqli_fetch_array(mysqli_query($db,$query)); if(preg_ma...
Lord of SQL Injection › LOS - 26번 red_dragon
[26] red_dragon 문제 풀이 딱히 필터링 없음 id값이 7자 이내여야함 solve 조건은 admin 계정의 no를 알아내는 것이다. 주어진 쿼리문이다. $query = "select id from prob_red_dragon where id='{$_GET['id']}' and no...
PHP › 한글 종성 유무의 판별
한글 종성 유무의 판별 1. 전체 코드 $last = iconv_substr($search, -1, 1, "utf-8"); $dec = substr(mb_convert_encoding($last,'HTML-ENTITIES','UTF-8'),2,-1); $nums = array("3","6","0"); if($dec>=44032 &&a...
Lord of SQL Injection › LOS - 25번 green_dragon
[25] green_dragon 문제 풀이 [1] id 페이로드 \ [2] pw 페이로드 union select char(92), char(117,110,105,111,110,32,115,101,108,101,99,116,32,99,104,97,114,40,57,55,44,49,48,48,44,49,48,57,44,49,48,53,44...
Lord of SQL Injection › LOS - 24번 evil_wizard
[24] evil_wizard 문제 풀이 소스 코드만 보면 이전 문제와 완전히 같다. 물론 같은 문제일리가 없으니 테이블 내부 데이터를 확인해본다. 다음은 order=1을 페이로드로 전달했을 때 볼 수 있는 테이블이다. 이번 문제는 id ASC로 정렬해도, score ASC로 정렬해도 그 결과가 같을 것임을 예상할 수 있다. ...
Lord of SQL Injection › LOS - 23번 hell_fire
[23] hell_fire 문제 풀이 LoS 23번 Python 자동화 코드이다. import requests def send(param): url = "https://los.rubiya.kr/chall/hell_fire_309d5f471fbdd4722d221835380bb805.php" cookie = "sdrjk57hqa4...
Lord of SQL Injection › LOS - 22번 dark_eyes
[22] dark_eyes 문제 풀이 이번 문제에서는 col, if, case, when, sleep, benchmark를 필터링하고 있다. 전체적인 구조는 이전 문제와 크게 다르지 않은 Error Based Blind SQLi 문제이다. 이전 문제와는 달리 에러가 발생할 시 에러 메시지를 보여주지는 않지만 exit됨으로 인해 빈 ...
Lord of SQL Injection › LOS - 21번 iron_golem
[21] iron_golem 문제 풀이 solve 조건은 admin 계정의 pw를 알아내는 것이다. preg_match를 살펴보면 sleep과 benchmark를 필터링하고 있다. 두 함수 모두 Time Based Blind SQLi에 쓰이는 함수다. .과 _등을 함께 필터링하므로 헤비쿼리도 사용이 불가능하다. Timed Based로...