Note that there are some explanatory texts on larger screens.

plurals
  1. POIs it an acceptable practice to enable UnsafeHeaderParsing by default?
    primarykey
    data
    text
    <p>This is a somewhat subjective question, but I'd like to hear the pros/cons for doing this. I manage an open source project called <a href="http://qdfeed.codeplex.com/" rel="noreferrer">Quick and Dirty Feed Parser</a> and the objective of the project is to make it as seamless as possible to consume RSS and Atom feeds in .NET.</p> <p>One of the issues I ran into fairly early on in the development of the project was that some of the feeds I was using as test cases (namely the <a href="http://news.ycombinator.com/rss" rel="noreferrer">Hacker News RSS feed</a>) used improperly formatted HTTP headers, and the HttpWebRequest class in .NET 1.1 and up promptly throws an "unsafe header" exception whenever you receive one of these headers in a GET request.</p> <p><a href="http://blogs.msdn.com/b/gzunino/archive/2004/09/05/225881.aspx" rel="noreferrer">This change was added in order to put a stop to split-response attacks that were raising security issues at the time .NET 1.1 was released</a>.</p> <p>My issue is thus - I can enable the "useUnsafeHeader" configuration option programmatically, but it does it across ALL HttpWebRequests in that application's context. I have users who've complained about QD Feed Parser being unable to consume valid feeds, and this header issue is why.</p> <p>Right now I have my library set up in such a way that developers who use it have to enable unsafe header parsing themselves, although most of them aren't aware that this is the problem and it creates a support overhead for me. </p> <p>I can simply have Quick and Dirty Feed Parser enable unsafe header parsing by default and force security-concious users to disable it, but I don't want to open up users who don't know any better to security attacks either. What's the best option here?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload