Я получил результаты для оценки этического взлома на одном из моих сайтов asp.net. Одним из элементов был многошаговый способ, которым хакер изменил запрос, чтобы отобразить страницу, к которой у него не должно было быть доступа с его привилегиями пользователя. Ниже приведены шаги, которые он выполнил для выполнения взлома:
- авторизовался с правами администратора.
- перешел на страницу «А».
- используя его инструмент Burp, сохранил копию заголовков страниц.
- Затем он вошел в систему, используя учетную запись пользователя, которая не может видеть страницу «А».
- возвращается на домашнюю страницу, чтобы получить новый запрос.
- с помощью инструмента Burp открывает заголовки запросов для домашней страницы и заменяет их содержимым, которое он сохранил со страницы «A».
- он продолжает запрос и теперь может видеть содержимое страницы "A".
Я попытался программно проверить request.url и сравнить его с тем, какие страницы есть у пользователя, но хакер сказал, что это не исправило.
Есть ли способ предотвратить это в ASP.NET 4.x? Есть ли какое-либо свойство web.config, которое я могу установить, чтобы кто-то не мог изменить заголовки запроса и выполнить этот вид взлома?