Неправильное ограничение XML Ссылка на внешнюю сущность - PullRequest
0 голосов
/ 20 января 2020

XML документы могут дополнительно содержать определение типа документа (DTD), которое, помимо других функций, позволяет определять XML объекты. Можно определить сущность, предоставив строку подстановки в форме URI. Синтаксический анализатор XML может получить доступ к содержимому этого URI и встроить его обратно в документ XML для дальнейшей обработки. злоумышленник может заставить приложение отправлять исходящие запросы на серверы, к которым злоумышленник не может обратиться напрямую, что может использоваться для обхода ограничений брандмауэра или скрытия источника атак, таких как сканирование портов.

Следуя моему фрагменту кода для что плагин Veracode показывает ошибку, пожалуйста, помогите мне, как я могу обойти эту проверку.

        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        dbf.setValidating(true);
        dbf.setNamespaceAware(true);

        try {
            FEATURE = "http://apache.org/xml/features/nonvalidating/load-external-dtd";

            dbf.setFeature(FEATURE, true);

            DocumentBuilder db = dbf.newDocumentBuilder();
            inputStream = new BufferedInputStream(new 
            FileInputStream(sourceFile.getSourceFile()));
            Document doc = db.parse(inputStream);```


...