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