Как этот URL может работать?

Как этот URL может работать?

Мне досталась в наследство система, которую я пытаюсь реверсировать, чтобы внести изменения.

Есть программа, которая генерирует URL для прослушивания записей. Выглядит она так:

http://recordings.myserver.com/archive/http://127.0.0.1/completed/MP3/2019-12-23/имя_файла_записи.mp3

URL работает, и я могу слушать записи, я просто не понимаю, КАК это работает. Это выглядит как URL внутри URL. Насколько я могу судить, "архив" не является ссылкой или псевдонимом на recordings.myserver.com. Определенно нет "http://127.0.0.1" каталог на сервере.

Эта ссылка также работает:

http://recordings.myserver.com/completed/MP3/2019-12-23/имя_файла_записи.mp3

Это также имеет больше смысла, просто не то, что существующая программа записывает в таблицу.

В .htaccess есть:

RewriteEngine On
RewriteCond %{HTTPS}  !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]

Но обратите внимание, что URL-адрес HTTP и остается таким после любой перезаписи. Страница, содержащая ссылку, на которую нажали, чтобы прослушать запись, просто

Как может работать ссылка, подобная первой, если нет ссылки на архив или папки?http://127.0.0.1в первом URL заставить его работать?

решение1

Есть разные способы добиться этого. Один из них — HTTP Rewrite, как вы и предполагали — он переписывает /archive/*, скажем, в , /archive/redirect.phpкоторый затем считывает остальную часть URL и делает обратный прокси-запрос.

Другой способ сделать это — манипулировать обработкой ошибок 404 приложениями. В случае возникновения ошибки 404 веб-сервер перехватывает ее перед отправкой клиенту, а затем выполняет обратный прокси-запрос, пересылая результат клиенту.

В любом случае это выглядит как превосходный эксплойт для доступа к ресурсам, которые являются внутренними для сети компании извне. Я бы поспорил, что если бы вы заменили этот http://127.0.0.1/URL буквально на что угодно, он бы вернул содержимое этого URL.

Связанный контент