1
我試圖保護一個.NET web服務對XXE漏洞利用。 對於基礎SOAP消息是XML,它可能存在風險。如何保護.NET Web服務免受XXE漏洞攻擊?
可以找到一種禁止XML文檔的DTD處理的方法here和here。 但是,SOAP消息的XML解析由框架完成。
如何修改XML閱讀器的設置以關閉DTD處理?
我還尋找一個掛鉤來直接訪問XML內容,但在WebService的文檔中找不到任何適合的內容。
我試圖保護一個.NET web服務對XXE漏洞利用。 對於基礎SOAP消息是XML,它可能存在風險。如何保護.NET Web服務免受XXE漏洞攻擊?
可以找到一種禁止XML文檔的DTD處理的方法here和here。 但是,SOAP消息的XML解析由框架完成。
如何修改XML閱讀器的設置以關閉DTD處理?
我還尋找一個掛鉤來直接訪問XML內容,但在WebService的文檔中找不到任何適合的內容。
我做了一些測試,表明ASP.NET web服務受保護免受XXE攻擊。 框架似乎默認關閉DTD處理。
我用Soap UI進行測試。 只要添加一個DOCTYPE定義,就像
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root[
<!ENTITY laugh "hahahahaha">
]>
導致錯誤的請求錯誤(HTTP狀態400)。
爲了確保我不只搞亂SOAP消息,我還單獨驗證了 XML內容。