Privilege Escalation – еще один тип недостатка, который достаточно часто можно встретить в бизнес-логике приложений.



Повышение привилегий принято разделять на 2 части:

1. Вертикальное повышение привилегий – это когда мы с правами юзера, можем получить доступ к правам админа.

2. Горизонтальное повышение привилегий – это когда мы с правами пользователя, можем получить доступ к объектам другого пользователя. Но я такое поведение обычно называю Improper Access. Сейчас нам больше интересен первый пункт.



Почему такое вообще происходит? Причин несколько, по крайней мере те, которые знаю я:

- Всему виной Mass Assignment,

- Кривая реализация ролевой модели



С кривой реализацией ролевой модели на проектах сталкиваемся очень часто. Чаще всего это довольно простые и примитивные баги. Из всех таких простых багов можно выделить некоторые по крутому импакту, например, под сессией обычного пользователя можем создавать новых пользователей, в том числе админских или повышать себя до админа. Но встречаются и интересные кейсы, где для достижения цели нужно выполнить несколько шагов. Про некоторые подробнее расскажу позже.



А можно это как-то автоматизировать?

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



#logic #privilege #pentest