Защищены ли синтаксические анализаторы XML от внедрения XML External Entity (XML) в .NET Core?

Я пытаюсь определить, уязвимо ли приложение .NET Core для атак внедрения XML External Entity (XXE). Я прочитал памятку OWASP по предотвращению XXE, в которой, например, говорится, что XmlDocument небезопасно по умолчанию в версиях .NET Framework до 4.5.2. Я не могу найти аналогичную документацию для версий .NET Core. Я вижу, что .NET Core был выпущен через несколько месяцев после .NET Framework 4.6.2. Могу ли я поэтому предположить, что эти парсеры XML безопасны по умолчанию в .NET Core?


person srk    schedule 03.04.2020    source источник


Ответы (1)


Анализаторы XML, которые я тестировал, имеют те же характеристики в .NET Core 2.1, что и в .NET Framework 4.5.2 (по крайней мере, в отношении внедрения XXE). Чтобы ответить на конкретный пример, который я привел в вопросе, XmlDocument по умолчанию небезопасен в .NET Framework 4.5.1, но безопасен по умолчанию как в .NET Framework 4.5.2, так и в .NET Core 2.1.

Чтобы убедиться в этом, я провел тестирование для .NET Framework 4.5.1 и 4.5.2, а также для .NET Core 2.1. Мой код и результаты доступны на GitHub.

person srk    schedule 08.04.2020