


url 부분에 첫번째 파라미터로 "/"을 전달한다면 ''http://localhost:8000''+url이 됨
url 쓰는 부분에 "localhost" , "127.0.0.1"이 있다면 error.png을 반환함
img = base64.b64encode(data).decode("utf8")
-> 값을 base64로 디코딩함
local_host = "127.0.0.1"
local_port = random.randint(1500, 1800)
-> localhost의 IP 주소는 127.0.0.1이고, 포트 번호는 1500~1800 사이의 랜덤 값임

flaf.txt는 127.0.0.1이 필터링이 된 Hex 인코딩을 사용하는(=0x7f000001)
http://0x7f000001:????/static/dream.png을 적용해야 함
포트 번호를 알아내기 위해 위의 코드를 작성하고, 1751이라는 것을 알 수 있음
즉, http://0x7f000001:1751/static/dream.png임
여기서 이미지 data 값으로 전달된 base64가 인코딩되어 있으므로 디코딩을 하면 DH의 값을 찾아낼 수 있음
인코딩 값: REh7NDNkZDIxODkwNTY0NzVhN2YzYmQxMTQ1NmExN2FkNzF9

DH{43dd2189056475a7f3bd11456a17ad71}
'인터루드' 카테고리의 다른 글
| file-download-1 (0) | 2022.11.06 |
|---|---|
| image-storage (0) | 2022.11.06 |
| MANGO-2 (0) | 2022.09.30 |
| MANGO-1 (0) | 2022.09.30 |
| Simple SQLi (0) | 2022.09.30 |