On Mon, Aug 10, 2009 at 3:06 PM, Michael
Glavassevich<mrgla...@ca.ibm.com> wrote:
> Hi Jeff,
>
> The specific problem reported to Apache only applied to Apache Xerces C++.
> Xerces-J does not have the bug that was fixed in the C++ impl.
>
> As a side note, for applications which do not want to trust documents
> containing DTDs there's been a feature [1] available in Xerces-J for years
> which will block them. There's also the JAXP secure processing feature [2]
> which folks should also be enabling if they're concerned about DoS attacks.
>
> Thanks.
>
> [1] http://xerces.apache.org/xerces2-j/features.html#disallow-doctype-decl
> [2]
> http://xerces.apache.org/xerces2-j/javadocs/api/javax/xml/XMLConstants.html#FEATURE_SECURE_PROCESSING

http://xerces.apache.org/xerces2-j/features.html#disallow-doctype-decl
simply rejects documents containing DOCTYPEs. That might or might not
block the attack, depending on whether the parser actually tries to
parse the DTD before throwing the error. I would hope it throws the
error as soon as it sees <!DOCTYPE, in which case it's likely safe.
However it is exceedingly draconian.

There aren't a lot of details on the attack yet, but from what little
has been released I doubt
http://xerces.apache.org/xerces2-j/javadocs/api/javax/xml/XMLConstants.html#FEATURE_SECURE_PROCESSING
would have any effect on this. That feature protects against parsers
following the spec, and expanding entity references. It sounds like
the problem here is a failure to follow the spec, and blowing up on
malformed, recursive entity declarations; though, as I said, I'm only
guessing about that.

-- 
Elliotte Rusty Harold
elh...@ibiblio.org

---------------------------------------------------------------------
To unsubscribe, e-mail: j-users-unsubscr...@xerces.apache.org
For additional commands, e-mail: j-users-h...@xerces.apache.org

Reply via email to