728x90
이번에 처치할 몬스터는 vampire!
코드를 빠르게 봐보자
이번 코드에서 중요한것은 strtolower과 str_replace 이다.
먼저 strtolower은 문자열을 소문자로 바꿔주는 역할을 한다.
이렇게 되면 우리가 지난 문제에 했던 Admin처럼 대문자를 섞어 우회하는 방법은 사용 할 수 없게 된다. (제작자가 밀당 고수다.)
그리고 str_replace는 총 3개의 인수를 받는데 (변경 대상 문자,변경하려는 문자,바꾸고자 하는 문자열) 이렇게 구성된다.
문제를 예를 들면 우리가 입력한 id값을 에서 admin을 찾아 공백(" ")으로 바꿔주는것 이다. (글자색을 참고하여 보면 이해가 쉬울것 같다.)
그렇게 되면 우리가 아무리 id값에 admin을 입력해도 공백으로 치환되어 입력되지 않는다.
이렇게 되면 어떻게 해야 되냐!
약간의 센스가 필요한데 str_replace 함수는 정확히 admin이라는 단어만 필터링 하므로
adadminmin 이라 입력하면 중간의 admin만 필터링 되어 사라지게 되고 그러면 양쪽 ad와 min이 붙게된다.
그렇게 되면 자연스럽게 admin이라는 단어가 생성된다.
확인해 보면
id값에는 adadminmin을 입력하여 중간의 admin이 사라져 ad+min으로 admin이 넣어지는것을 알수있다.
굿굿!
다음 몬스터 잡으러 가자~!
728x90
'Web > Lord of SQL Injection' 카테고리의 다른 글
Lord of SQL Injection 11단계 (golem) (2) | 2023.03.15 |
---|---|
Lord of SQL Injection 10단계 (skeleton) (0) | 2023.03.13 |
Lord of SQL Injection 8단계 (troll) (0) | 2023.03.09 |
Lord of SQL Injection 7단계 (orge) (0) | 2023.03.09 |
Lord of SQL Injection 6단계 (darkelf) (0) | 2023.03.09 |