? Уязвимости обхода директорий в приложениях ASP.NET

Father

Professional
Messages
2,605
Reputation
4
Reaction score
588
Points
113
Нашли параметр, содержащий путь или имя файла? Разработчики иногда используют "Path.Combine(path_1,path_2)" для указания полного пути. Этот метод предназначен для объединения отдельных строк в одну строку, представляющую путь к файлу.

Path.Combine имеет странное поведение: если параметр №2 является абсолютным путем, то параметр №1 игнорируется.

Это можно использовать для обхода директорий и получения доступа к закрытым ресурсам.

Самый простой способ проверить это - посмотреть DNS SSRF. Путь к файлу, начинающийся с «\\», инициирует DNS-поиск предполагаемого общего файлового ресурса. Если это сработает, вы знаете, что проблема существует. Получаем ссылку на pingb.in или используем Burp Collaborator и подставляем в тестируемый параметр:

Code:
https://example.org/download?filename=\\3ce0f3fcba9527b7dfa2785f14df.ns.pingb.in\a

1.jpg
 
Top