Распространенные уязвимости для приложений WinForms

Я не уверен, есть ли это в теме -или нет здесь, но это настолько специфично для.NET WinForms, что я считаю, что здесь это имеет больше смысла, чем на сайте обмена стеками безопасности.

(Кроме того, он строго связан с безопасным кодированием , и я думаю, что он относится к теме -, как и любой вопрос о распространенных уязвимостях веб-сайтов, которые я встречаю повсюду на сайте.)

В течение многих лет наша команда занималась моделированием угроз в проектах веб-сайтов. Часть нашего шаблона включает в себя OWASP Top 10, а также другие хорошо -известные уязвимости, поэтому при моделировании угроз мы всегда удостоверяемся, что у нас есть задокументированный процесс устранения каждой из этих распространенных уязвимостей. уязвимости.

Пример:

SQL-инъекция (Owasp A -1)

  • Общепринятая практика
    • По возможности используйте хранимые параметризованные процедуры для доступа к данным
    • . Используйте параметризованные запросы, если хранимые процедуры невозможны.(Использование сторонней базы данных, которую мы не можем изменить)
    • Избегайте одинарных кавычек только в том случае, если вышеуказанные варианты невозможны
    • Права доступа к базе данных должны быть разработаны с учетом принципа наименьших -привилегий
    • . По умолчанию пользователи/группы не имеют доступа
    • При разработке задокументируйте доступ, необходимый для каждого объекта (Таблица/Представление/Хранимая процедура )и потребность бизнеса в доступе.
    • [надрез]

Во всяком случае, мы использовали OWASP Top 10 в качестве отправной точки для общеизвестных уязвимостей, специфичных для веб-сайтов.

(Наконец, к вопросу)

В редких случаях мы разрабатываем приложения WinForms или службы Windows, когда веб-приложение не соответствует потребностям. Мне интересно, есть ли эквивалентный список широко известных уязвимостей безопасности для приложений WinForms.

Навскидку я могу вспомнить несколько...

  • SQL-инъекция по-прежнему вызывает беспокойство.
  • Переполнение буфера обычно предотвращается средой CLR, но это более вероятно при использовании неуправляемого -кода, смешанного с управляемым кодом
  • . Код.NET можно декомпилировать, поэтому конфиденциальная информация хранится в коде, а не в зашифрованном виде в файле app.config...

Существует ли такой список или даже несколько версий такого списка, из которых мы можем позаимствовать, чтобы создать свой собственный? Если да, то где я могу найти его?

Мне не удалось его найти, но если он есть, это было бы большим подспорьем для нас, а также для других разработчиков WinForms.

12
задан David 13 July 2012 в 13:19
поделиться