Я думаю самая главная ошибка — между креслом и клавиатурой, но если разбирать больше чем «не заметил» и предположить что новички не совсем знают о критических ошибках которые могут вызвать серъёзные последствия типа потери данных, вызова инородного кода, недоступность сервиса или кражи данных, то чёрный список выстроится следующим образом:
- Неверная валидация ввода данных
- Неправильная кодировка или отсутсвие обработки данных вывода
- SQL-инъекция
- Cross-site scripting
- Неограниченность в консольном доступе (OS-инъекция)
- Передача личных данных по малозащищённому каналу
- Межсайтовый запрос как подделка внутреннего запроса
- Соревнование потоков использующих один ресурс и неверное закрытие его использования
- Слишком информативное содержание об ошибке
- Выход указателя программы за пределы отведённой памяти
- Внешнее управление внутренними переменными и файловыми путями
- Генерируемый код и его потенциальная инъекция
- Автообновление программы полученным кодом без подтверждения источника
- Грязная инициализация — доступны данные предыдущих инициализаций
- Математика с ограниченными числами
- Ненадёжная авторизация и за-hard-коденые пароли
- Использование подверженного риску или взломанному алгоритму криптографии
- Исполнение с повышенными привилегиями
- Использование недостаточно случайных чисел
- Валидация на стороне клиента но не на стороне сервера