Некоторые основные принципы информационной безопасности, которые следует учитывать при разработке программного обеспечения:
- Конфиденциальность. 5 Цель — сохранить личную информацию в тайне и обеспечить доступ к ней только тем лицам, которые владеют ею или нуждаются в ней для выполнения своих функций. 5
- Целостность. 5 Включает в себя защиту от несанкционированных изменений данных. 5 Принцип обеспечивает точность и надёжность данных и исключает их некорректное изменение, как случайное, так и злонамеренное. 5
- Доступность. 5 Это защита способности системы делать программные системы и данные полностью доступными, когда они нужны пользователю (или в определённое время). 5
- Принцип изоляции. 2 Нужно свести данные, доступные одновременно нескольким компонентам или передаваемые между ними, к минимуму, необходимому для обеспечения решения ими своих задач. 2
- Принцип минимизации поверхности атаки. 2 Нужно свести к минимуму количество компонентов, напрямую взаимодействующих с внешними системами или пользователями и получающих извне необработанные или непроверенные данные. 2
- Принцип минимизации привилегий. 2 Нужно выдавать каждому компоненту или процессу минимальные привилегии, необходимые ему для решения его задач, и избегать неоправданного расширения привилегий. 2
- Принцип эшелонированной защиты. 2 Нужно стараться обеспечить определённый уровень защиты при каждом переходе управления и/или данных между слоями функциональности системы, не доверяя полностью защите каждого отдельного компонента или сервиса и защищаясь от возможного внедрения злоумышленника в любой из них. 2
- Принцип обеспечения безопасности по умолчанию. 2 Установленные по умолчанию настройки, значения данных и алгоритмы работы должны обеспечивать безопасное функционирование системы, даже если пользователи или администраторы никак не будут вмешиваться в её работу. 2
- Принцип обеспечения безопасности сбоев. 2 Нужно стараться предусмотреть возможные сбои и ошибки в различных компонентах системы (включая возможные успешные атаки на них) и сделать возможным безопасное продолжение или, при невозможности такового, безопасное завершение работы системы при их возникновении. 2
- Принцип прозрачности решений по защите. 2 Нужно стараться аккуратно определять возможные атаки и в полном и однозначном виде описывать принимаемые проектные решения для противодействия им, избегая неопределённых возможных угроз и невнятных решений по защите. 2