일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- numpy
- 카카오프로젝트 100
- 깃허브
- Oracle SQL
- 보안뉴스요약
- 자바스크립트 prototype
- 보안뉴스 요약
- oracle
- 보안뉴스한줄요약
- 자바스크립트 기본 문법
- php
- 랜섬웨어
- 파이썬
- 자바스크립트 node
- 다크웹
- 카카오프로젝트
- GIT
- 오라클
- 카카오프로젝트100
- 보안뉴스
- 보안뉴스 한줄요약
- ES6
- 자바스크립트 객체
- 자바스크립트
- python
- 자바스크립트 API
- 자바스크립트 element api
- oracle db
- javascript
- 자바스크립트 jQuery
- Today
- Total
FU11M00N
Lord of Injection vampire(9)단계 본문
자 이번에는 9단계인 뱀파이어입니다!! 바로 코드 보겠습니다.
이번에 금지시키는 것은 '입니다.
그리고 str_replace 함수가 나왔는데요! 일단 뭔진 모르겠지만 admin이 나왔습니다
그 후 밑에 들은 전 단계의 문제와 비슷하게 간단한 코드입니다
자 그럼 먼저 str_replace가 뭔지 알아야겠는데요!!
str_replace는 문자열을 바꿔주는 함수입니다!
간단히 예를 들자면
<?php
$abc = "고양이 강아지 소"; //대상 문자열
$result = str_replace('고양이' , '돼지', $abc);
// str_replace('바뀌어서 없어질 문자' , '변경 완료될 문자', '대상 문자열');
echo " 바꾸기 전 ".$abc.;
echo " 바꾼 후".$result;
?>
그럼.$abc의 결괏값은 고양이 강아지 소가 되겠고 .$result의 결과 값은 돼지 강아지 소 가 됩니다!
그럼 {$_GET[id]} = str_replace("admin","", $_GET[id]); 코드에서
('변경될 문자' , '변경 완료될 문자', '해당하는 문자열') 순서 이니깐,
admin은 없어질 문자 ""은 변경될 문자 $_GET [id] 은 해당하는 문자열입니다.
결국 admin은 공백("")이 된다는 것인데요.
그럼 아까도 저번 단계에서도 말했듯이 MYSQL은 대소문자를 구분하지 않아 ADMIN을 써도 답이 됩니다..!
한번 답을 적어보도록 하겠습니다 ?id=ADMIN
자 이렇게 정답이 되었는데요 하지만 이 문제에서 요구하는 답은 이게 아닌 것 같습니다.
str_replace는 아까도 말했듯 형식이
('바껴서 없어질 문자' , '변경 완료 될 문자', '대상 문자열') 입니다.
그럼 제가 여기서 ?id=adadminmin 이렇게 적어준다면 중간에 있는 admin은 필터링이 되고,
결국 남은 admin이 인식이 될 것입니다!
자 이렇게 제가 분명 파라미터 창에는? id=adadminmin을 쳤지만
결국 admin만 정상 인식되어 정답이 됐습니다!
하지만 ADMIN도 틀린 답은 아니니 둘 다 정답입니다!
'Web Hacking > Lord of injection' 카테고리의 다른 글
Lord of injection golem(11)단계 (0) | 2019.11.01 |
---|---|
Lord of Injection skeleton(10)단계 (0) | 2019.10.30 |
Lord of Injection troll(8)단계 (0) | 2019.10.29 |
Lord Of Injection orge(7)단계 (0) | 2019.10.28 |
Lord Of Injection darkelf(6)단계 (0) | 2019.10.28 |