Многие начинающие программисты задаются вопросом: «каким минимумом знаний по безопасности должен обладать каждый разработчик или студент IT-шник?». Попробуем ответить на этот вопрос.
Вещи, которые всегда нужно держать в уме, если вы хотите создать безопасное приложение:
- Не доверяйте входным данным! Проверяйте входные данные из ненадёжных источников — используйте белые списки, а не чёрные.
- Планируйте безопасность с самого начала — это не то, чем можно заняться напоследок.
- Делайте своё приложение простым — сложность увеличивает вероятность дыр в безопасности.
- Сведите вашу поверхность атаки к минимуму.
- Убедитесь, что ошибка во время работы приложения не поставит под угрозу его безопасность.
- Обеспечивайте безопасность приложения на каждом этапе разработки.
- Придерживайтесь принципа наименьших привилегий.
- Используйте моделирование угроз.
- Разделяйте привилегии, чтобы было проще отследить источник проблемы.
- Хранить секретные данные сложно, а все секретные данные, спрятанные в коде, быстро перестанут быть секретными.
- Не создавайте свои механизмы шифрования.
- Использование одного лишь шифрования не делает ваше приложение абсолютно безопасным — злоумышленники найдут другое слабое место, ведь безопасность любой системы всегда равна безопасности самого слабого звена.
- Знайте и помните о переполнении буфера и о том, как от него защититься.
Источник tproger.ru
Вступай в сообщества ITmentor Вконтакте, Facebook и Telegram