Web/Lord of SQL Injection

Lord of SQL Injection 11단계 (golem)

jh117jh 2023. 3. 15. 10:16
728x90

이번에 처지할 몬스터는 golem!

달팽이 껍질 던지기로 잡으면 쾌감 굿!

이번 코드를 봐보면

핵심인 내용은 and와 or 뿐 아니라 등호(=), 우리가 비밀번호를 찾을 때 사용했던 substr함수도 필터링되어 있는 것을 알 수 있다.

 

등호(=)의 우회법은 여러가진데

 

1. like

 - 사용하는 법은 =와 같다. ex) or 1 like 1

2. in

 - =대신 사용하며 뒤에 ()을 붙인다. ex) or id = ("admin")

3. instr

 - instr 함수로 instr(id, "admin") 같이 사용한다.

4. <,>

 - 부등호로 범위를 줄여가며 추측할 수 있다. ex) length(pw) > 7 이 참이고 < 9 도 참이면 length(pw)는 8.

 

 

이 문제에서 사용할 방법은 like이다.

먼저 pw의 길이를 알아내보자.

 

지금까지 계속 8인 것을 기반으로 8을 바로 넣어봤더니 역시 길이는 8이었다.

 

이제 두 번째 문제는 substr인데 

 

1. mid , substring

 - 사용법은 substr과 같다 ex) mid(문자, 시작 위치, 가져올 개수)

2. left, right

 - 왼쪽이나 오른쪽에서 가져올 개수를 정해주면 된다. ex) right(문자, 가져올 개수)

 

이 문제에서는 left를 써보겠다.

첫 글자를 시작으로 

여덟 번째 글자까지 알아냈다.

 

굿굿!

 

다음 몬스터 잡으러 가자~!

728x90