일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 파이썬
- 카카오프로젝트 100
- Oracle SQL
- 자바스크립트 기본 문법
- 자바스크립트
- oracle
- 깃허브
- 카카오프로젝트
- 자바스크립트 node
- 보안뉴스요약
- 자바스크립트 jQuery
- 카카오프로젝트100
- 보안뉴스한줄요약
- 자바스크립트 element api
- python
- 보안뉴스 한줄요약
- 보안뉴스 요약
- 자바스크립트 객체
- 다크웹
- 랜섬웨어
- 자바스크립트 API
- javascript
- 오라클
- numpy
- oracle db
- php
- 자바스크립트 prototype
- ES6
- 보안뉴스
- Today
- Total
FU11M00N
Lord of Injection troll(8)단계 본문
이번엔 8단계인 트롤입니다!!
그전에 제가 네이버 웨일 브라우저를 쓰는데
블랙 모드가 생겨 변경해봤습니다.. ㅎㅎ(헛소리)
자 이번 단계에서 금지된 것은 '이고
쿼리문에서는 id=admin이 되어야 troll가 뜨네요!!
그리고 처음 보는 함수 ereg() 함수가 나왔습니다!
이 함수가 아직 뭔지는 모르겠지만 admin을 금지시키는 것 같네요.
그럼 먼저 ereg() 함수에 대해 알아보겠습니다.
ereg()는 2가지 종류가 있는데,
정규식으로 문자열을 찾거나, 찾은 문자열을 바꾸거나 하는 함수입니다!
하지만 ereg()의 함수는 두 가지로 나눠지는데요,
ereg('찾고자 하는 문자', '필터링할 문자열')
대소문자를 구분하는 함수로 찾고자 하는 문자가 있으면 True, 없으면 False를 출력.
eregi('찾고자 하는 문자', '필터링할 문자열')
대소문자를 구분하지 않는 함수로 찾고자 하는 문자가 있으면 True, 없으면 False를 출력.
이렇게 대소문자를 구분하고 싶으면 ereg를 하고 싶지 않으면 eregi입니다.
MySQL에서는 대소문자 구분이 없는데요,
그래서 id= ADMIN이나 Admin 등 이렇게 대소문자를 구분하지 않고 써도 값은 얻을 수 있습니다.
어쨌든 이 문제에서 는 ereg() 함수를 유심히 봐야 하는데요,
아까도 말했듯이 ereg() 함수는 대소문자를 구분하지 않아서
만약 필터링(금지) 되어있는 단어인 admin을 쓰면 ture 값을 내버려서 HeHe를 출력하게 됩니다..
하지만 Admin이나 ADMIN을 쓰면 false 값을 내겠죠??!
그럼 답을 한번 써보겠습니다!
이렇게 flase값을 내버려서 Admin을 써도 답이 되고 ADMIN을 써도 답이 됩니다!!
'Web Hacking > Lord of injection' 카테고리의 다른 글
Lord of Injection skeleton(10)단계 (0) | 2019.10.30 |
---|---|
Lord of Injection vampire(9)단계 (3) | 2019.10.29 |
Lord Of Injection orge(7)단계 (0) | 2019.10.28 |
Lord Of Injection darkelf(6)단계 (0) | 2019.10.28 |
Lord Of Injection wolfman(5)단계 (0) | 2019.10.28 |