Перейти к содержанию

Broken Access Control


Большинство web приложений содержат разделы, доступ к которым должен быть ограничен рядовым пользователям. Некорректно настроенные права доступа к таким разделам могут привести к тому, что рядовой пользователь получит доступ к конфиденциальной информции/функционалу со всем вытекающими.

Кроме вышеописанного, доступ к кофиденциальной информации может быть получен через некорректную обработку параметров функций:

pstmt.setString(1, request.getParameter("acct"));
ResultSet results = pstmt.executeQuery( );
в этом примере acct никак не подготавливается перед передачей в executeQuery. Следовательно достаточно лишь подставить нужное значение: http://example.com/app/accountInfo?acct=notmyacc Фактически это очередной пример инъекции к которому привел IDOR (Insecure Direct Object Reference).

В двух словах - Broken Access Control позволяет атакующему обойти авторизацию и получить доступ к конфиденциальной информации или выполнять функции доступные только привелегированным пользователям.

Способы противодействия

Главное: Корректно настраивать права. Остальное здесь - owasp.org