<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Casaba Security &#187; fuzzing</title>
	<atom:link href="http://www.casaba.com/blog/tag/fuzzing/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.casaba.com/blog</link>
	<description>Building and breaking software and robots</description>
	<lastBuildDate>Wed, 11 Jan 2012 18:08:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>To fuzz or not to fuzz web services…</title>
		<link>http://www.casaba.com/blog/2007/01/to-fuzz-or-not-to-fuzz-web-services%e2%80%a6/</link>
		<comments>http://www.casaba.com/blog/2007/01/to-fuzz-or-not-to-fuzz-web-services%e2%80%a6/#comments</comments>
		<pubDate>Sat, 13 Jan 2007 08:00:00 +0000</pubDate>
		<dc:creator>Chris Weber</dc:creator>
				<category><![CDATA[Security Testing]]></category>
		<category><![CDATA[fuzzing]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Is it worth the time to run input fuzzing tests against web services? When engaging a client for a security review I’m often the one to pose this question. Sure, why not… right? Well honestly there’s a more precise way to answer this question. First we really need to understand the goals of the security [...]]]></description>
			<content:encoded><![CDATA[<p>Is it worth the time to run input fuzzing tests against web services? When engaging a client for a security review I’m often the one to pose this question. Sure, <strong>why not</strong>… right? Well honestly there’s a more precise way to answer this question. First we really need to understand the <strong>goals </strong>of the security review, so a few questions are in order.</p>
<ol>
<li>Has <strong>threat modeling </strong>been done or is this my job?</li>
<li>How much <strong>time and budget </strong>do we have for a security review?</li>
<li>How complex are the web services? e.g. how many parameters do they take and in what format</li>
<li>Are the web services written in managed code?</li>
<li>Is user-input passed to unmanaged code?</li>
</ol>
<p>Let’s take these answers from a common scenario:</p>
<ol>
<li>Yes threat modeling is complete</li>
<li>We have about 2 or 3 weeks that you can use to test</li>
<li>Very complex, they use WS-Security, take hundreds of parameters, some encrypted, using custom formats, SOAP, as well as embedded XML blobs</li>
<li>Yes, they’re written in C# using the .NET Framework</li>
<li>Some specific elements of user-input are handled by unmanaged code modules</li>
</ol>
<p>Some things not obvious in these questions are:</p>
<ul>
<li>that the client is highly interested in finding Denial of Service (<strong>DoS</strong>) issues</li>
<li>that millions of people will be using these Web Services whether they know it or not</li>
<li>that no input fuzzing has been done to date</li>
</ul>
<p>With 2-3 weeks we could get a lot done in a security review focused just one the web services. It’s becoming clear that fuzzing input would be a <strong>worthwhile </strong>venture. We’ll likely turn up some DoS issues, possibly some unmanaged code issues as well. Since we have a decent timeframe, we’ll be checking for the following issues, not all of which fuzzing is good for:</p>
<ul>
<li>elevation of privilege (<strong>EoP</strong>)</li>
<li><strong>repurposing </strong>attacks</li>
<li>cross-site scripting (yes, even web services in some cases)</li>
<li>information disclosure</li>
<li>session replay</li>
<li>SQL Injection</li>
<li>DTD attacks</li>
<li>XML validation</li>
<li>script injection</li>
<li>repudiation</li>
<li>denial of service</li>
<li>buffer overrun</li>
</ul>
<p>Fuzzing will help with some of these, so at this point the answer is yes, let’s do it. We’ll also be doing some <strong>code review</strong>, which is great for identifying issues such as DoS, XML validation, and DTD attacks quickly. And we’ll be studying the specs and architecture along the way to keep a clear <strong>understanding </strong>of the system and help identify repurposing attacks, which will be tested for confirmation.</p>
<p>Ok let’s go!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.casaba.com/blog/2007/01/to-fuzz-or-not-to-fuzz-web-services%e2%80%a6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

