Чтобы обнаружить ошибки управления доступом, ищите в коде места, где:

□ устанавливаются элементы управления доступом;

□ разрешение на запись дается низко привилегированным пользователям; или

□ создается объект, без явного задания прав доступа к нему;

□ этот объект создается в месте, к которому имеют разрешение на запись низкопривилегированные пользователи;

или

□ конфигурационные данные записываются в разделяемую область памяти; или

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

Чтобы найти грех «зашивания», проанализируйте те места программы, где производится шифрование или создаются исходящие аутентифицированные соединения, и определите, откуда берется пароль или ключ. Если он «зашит» в код, имеет место ошибка, которую необходимо исправить (см. следующий раздел).