<?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>wiresharklympics &#8211; Fredrik Holmberg</title>
	<atom:link href="/tag/wiresharklympics/feed/" rel="self" type="application/rss+xml" />
	<link>/</link>
	<description>Network Consultant</description>
	<lastBuildDate>Thu, 10 Nov 2016 19:39:24 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.7.3</generator>

<image>
	<url>/wp-content/uploads/2016/04/cropped-2601-32x32.png</url>
	<title>wiresharklympics &#8211; Fredrik Holmberg</title>
	<link>/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Packet Analysis Challenge #2 – Solution</title>
		<link>/2016/11/packet-analysis-challenge-2-solution/</link>
		<comments>/2016/11/packet-analysis-challenge-2-solution/#respond</comments>
		<pubDate>Wed, 09 Nov 2016 20:00:26 +0000</pubDate>
		<dc:creator><![CDATA[Fredrik Holmberg]]></dc:creator>
				<category><![CDATA[challenge]]></category>
		<category><![CDATA[packet analysis]]></category>
		<category><![CDATA[wireshark]]></category>
		<category><![CDATA[wiresharklympics]]></category>

		<guid isPermaLink="false">/?p=533</guid>
		<description><![CDATA[While we wait for Magnus Karlsen to make his first move (E4?), here&#8217;s a solution walk-through of the second Packet Capture Analysis challenge. Spoilers ahead 🙂 Here we go #1 &#8211; How many hops can we assume there are between the client and the server? If we assume a default minimum IP datagram TTL of 64 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter wp-image-469 " src="/wp-content/uploads/2016/08/birds-209280_1920-1024x699.jpg" alt="birds-209280_1920" width="455" height="310" srcset="/wp-content/uploads/2016/08/birds-209280_1920-1024x699.jpg 1024w, /wp-content/uploads/2016/08/birds-209280_1920-300x205.jpg 300w, /wp-content/uploads/2016/08/birds-209280_1920-768x524.jpg 768w, /wp-content/uploads/2016/08/birds-209280_1920-676x462.jpg 676w" sizes="(max-width: 455px) 100vw, 455px" /></p>
<p>While we wait for Magnus Karlsen to make <a href="https://worldchess.com/nyc2016/">his first move</a> (E4?), here&#8217;s a solution walk-through of the <a href="/2016/10/packet-analysis-challenge-2/">second</a> Packet Capture Analysis challenge.</p>
<p>Spoilers ahead <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><span id="more-533"></span></p>
<h3>Here we go</h3>
<h4>#1 &#8211; How many hops can we assume there are between the client and the server?</h4>
<p>If we assume a default minimum IP datagram TTL of 64 (WHAT? See <a href="https://tools.ietf.org/html/rfc1700#page-64">https://tools.ietf.org/html/rfc1700#page-64</a>), the server 204.152.184.134 is <strong>14 hops</strong> away because the IP datagram TTL is 50 in all TCP segments received by the client.</p>
<p><em>hops = def.ttl &#8211; rcv.ttl</em></p>
<p>How to find the IP TTL value:</p>
<p><img class="alignnone wp-image-542 size-full" src="/wp-content/uploads/2016/11/ws_chal2_q1.png" alt="ws_chal2_q1" width="633" height="436" srcset="/wp-content/uploads/2016/11/ws_chal2_q1.png 633w, /wp-content/uploads/2016/11/ws_chal2_q1-300x207.png 300w" sizes="(max-width: 633px) 100vw, 633px" /></p>
<h4>#2 &#8211; Using fingerprinting techniques, what OS is the server likely running? (1 point per technique)</h4>
<p>One way is to look at the HTTP 200 OK response from the server. Usually the application give away some hints on OS and software used:</p>
<p><img class="alignnone size-full wp-image-543" src="/wp-content/uploads/2016/11/ws_chal2_q2_1.png" alt="ws_chal2_q2_1" width="612" height="455" srcset="/wp-content/uploads/2016/11/ws_chal2_q2_1.png 612w, /wp-content/uploads/2016/11/ws_chal2_q2_1-300x223.png 300w" sizes="(max-width: 612px) 100vw, 612px" /></p>
<p>It claims to be a <strong>FreeBSD</strong> host.</p>
<p>Another indicator of OS type/version can be found by looking at the advertised IP TTL and TCP Window Size values:</p>
<p><img class="alignnone size-full wp-image-544" src="/wp-content/uploads/2016/11/ws_chal2_q2_2.png" alt="ws_chal2_q2_2" width="663" height="512" srcset="/wp-content/uploads/2016/11/ws_chal2_q2_2.png 663w, /wp-content/uploads/2016/11/ws_chal2_q2_2-300x232.png 300w" sizes="(max-width: 663px) 100vw, 663px" /></p>
<p>A combination of IP TTL 64 and Window Size 65535 is often found in *nix/FreeBSD systems. More information <a href="http://www.netresec.com/?page=Blog&amp;month=2011-11&amp;post=Passive-OS-Fingerprinting">here</a> and <a href="http://subinsb.com/default-device-ttl-values">here</a>.</p>
<p>But wait, the Windows client is using the exact same values!? Yes, implementation &#8220;standards&#8221; are nice <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<h4>#3 &#8211; What is the average RTT delay between the client and the server? (1 point)</h4>
<p>Start off by changing <strong>View &gt; Time Display Format</strong> to <strong>Time Since Previous Displayed Packet.</strong></p>
<p>Then we can look at the SYN/ACK response during a TCP handshake to determine the RTT, <strong>around 20 ms</strong> in this case.</p>
<p><img class="alignnone size-full wp-image-545" src="/wp-content/uploads/2016/11/ws_chal2_q3.png" alt="ws_chal2_q3" width="610" height="207" srcset="/wp-content/uploads/2016/11/ws_chal2_q3.png 610w, /wp-content/uploads/2016/11/ws_chal2_q3-300x102.png 300w" sizes="(max-width: 610px) 100vw, 610px" /></p>
<p>Why the SYN/ACK handshake step? Because that segment is generated by the remote end TCP/IP stack, without any added application delay.</p>
<h4>#4 &#8211; Following frame #14886, what TCP sequence number (relative) is the client expecting to receive next? (1 point + 1 bonus)</h4>
<p>Looking at frame #14886 we see a TCP sequence number of 4641056. That segment had a payload of 1460 Bytes. The next sequence number in the stream is 4641056 + 1460 = <strong>4642516</strong>.</p>
<p>As we see in frame #14889 the client does not receive the expected segment and TCP SACK kicks in.</p>
<p><img class="alignnone size-full wp-image-546" src="/wp-content/uploads/2016/11/ws_chal2_q4.png" alt="ws_chal2_q4" width="737" height="339" srcset="/wp-content/uploads/2016/11/ws_chal2_q4.png 737w, /wp-content/uploads/2016/11/ws_chal2_q4-300x138.png 300w, /wp-content/uploads/2016/11/ws_chal2_q4-676x311.png 676w" sizes="(max-width: 737px) 100vw, 737px" /></p>
<h4>Bonus – In what frame does it receive the expected TCP segment?</h4>
<p>Since we know that the sequence number is 4642516, we can apply a specific Display Filter using <strong>tcp.seq</strong>:</p>
<p><img class="alignnone size-full wp-image-547" src="/wp-content/uploads/2016/11/ws_chal2_q4_b.png" alt="ws_chal2_q4_b" width="873" height="97" srcset="/wp-content/uploads/2016/11/ws_chal2_q4_b.png 873w, /wp-content/uploads/2016/11/ws_chal2_q4_b-300x33.png 300w, /wp-content/uploads/2016/11/ws_chal2_q4_b-768x85.png 768w, /wp-content/uploads/2016/11/ws_chal2_q4_b-676x75.png 676w" sizes="(max-width: 873px) 100vw, 873px" /></p>
<p><strong>Frame #14981!</strong></p>
<h4>5# &#8211; At the beginning of the file transfer there is a delay lasting around 3 seconds. Why? (2 points)</h4>
<p>A graphical representation of the transfer halting<br />
<strong>Statistics &gt; TCP Stream Graphs &gt; Time Sequence (Stevens):</strong></p>
<div id="attachment_548" style="width: 789px" class="wp-caption alignnone"><img class="wp-image-548 size-full" src="/wp-content/uploads/2016/11/ws_chal2_q5_1.png" alt="ws_chal2_q5_1" width="779" height="566" srcset="/wp-content/uploads/2016/11/ws_chal2_q5_1.png 779w, /wp-content/uploads/2016/11/ws_chal2_q5_1-300x218.png 300w, /wp-content/uploads/2016/11/ws_chal2_q5_1-768x558.png 768w, /wp-content/uploads/2016/11/ws_chal2_q5_1-676x491.png 676w" sizes="(max-width: 779px) 100vw, 779px" /><p class="wp-caption-text">Awkward silence.</p></div>
<p><span style="font-weight: 400;">The client TCP receive buffer is considered full in frame #8662. The client is reporting a window size of 536 Bytes which does not allow for a full TCP segment of 1460 Bytes. For some reason the client application (browser) is not pulling data fast enough from its buffer.</span></p>
<p><img class="alignnone size-full wp-image-549" src="/wp-content/uploads/2016/11/ws_chal2_q5_2.png" alt="ws_chal2_q5_2" width="703" height="338" srcset="/wp-content/uploads/2016/11/ws_chal2_q5_2.png 703w, /wp-content/uploads/2016/11/ws_chal2_q5_2-300x144.png 300w, /wp-content/uploads/2016/11/ws_chal2_q5_2-676x325.png 676w" sizes="(max-width: 703px) 100vw, 703px" /></p>
<p><span style="font-weight: 400;">The transfer halts for around 3 seconds until the client has finished processing the data and reports a window of 64 KB (256KB as seen in Wireshark is due to Window Scaling). The server continues transferring at frame #8665.</span></p>
<h3>That&#8217;s it!</h3>
<p>Hope you had some fun solving these. More to come <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>Have a nice day! <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f596.png" alt="🖖" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>/2016/11/packet-analysis-challenge-2-solution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Packet Analysis Challenge #2</title>
		<link>/2016/10/packet-analysis-challenge-2/</link>
		<comments>/2016/10/packet-analysis-challenge-2/#respond</comments>
		<pubDate>Thu, 06 Oct 2016 09:43:58 +0000</pubDate>
		<dc:creator><![CDATA[Fredrik Holmberg]]></dc:creator>
				<category><![CDATA[packet analysis]]></category>
		<category><![CDATA[wireshark]]></category>
		<category><![CDATA[challenge]]></category>
		<category><![CDATA[wiresharklympics]]></category>

		<guid isPermaLink="false">/?p=518</guid>
		<description><![CDATA[Round two of #Wiresharklympics is here! Having survived round one, you know the drill. The tiny specs of data that allow services like Facebook and the Internet to work will be put under heavy scrutiny. Wireshark has reached a stable release of 2.2.1 and is eagerly awaiting new challenges. We will yet again use a sample packet [&#8230;]]]></description>
				<content:encoded><![CDATA[<div style="width: 415px" class="wp-caption aligncenter"><img class="" src="https://upload.wikimedia.org/wikipedia/commons/e/ea/Prionace_glauca_1.jpg" alt="The Sharkminator returns." width="405" height="270" /><p class="wp-caption-text">The Sharkminator returns.</p></div>
<p>Round two of <strong>#Wiresharklympics</strong> is here! Having survived <a href="/2016/08/packet-analysis-challenge-1/">round one</a>, you know the drill. The tiny specs of data that allow services like Facebook and the Internet to work will be put under heavy scrutiny.</p>
<p><a href="https://www.wireshark.org/">Wireshark</a> has reached a stable release of <a href="https://www.wireshark.org/docs/relnotes/wireshark-2.2.1.html">2.2.1</a> and is eagerly awaiting new challenges.</p>
<p><span id="more-518"></span></p>
<p>We will yet again use a sample packet capture from Netresecs <a href="http://www.netresec.com/?page=PcapFiles">list</a>.</p>
<p>The packet capture sample can be downloaded here:<br />
<a href="https://dl.dropboxusercontent.com/u/1185688/blog/wireshark2.pcapng">https://dl.dropboxusercontent.com/u/1185688/blog/wireshark2.pcapng</a></p>
<p>It&#8217;s safe to download. <a href="https://www.virustotal.com/nb/url/db7477fc363776d14277b0678d16cf88955a951d209812f7c57bfa7d82a48f44/analysis/1475743936/">VirusTotal concur</a>.</p>
<h3>Enough yada yada</h3>
<p>Five questions. Should be at least 8 points up for grabs <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f590.png" alt="🖐" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>Start off by applying this display filter &#8220;tcp.stream == 16&#8221;.</p>
<ol>
<li>How many hops can we assume there are between the client and the server? (1 point)</li>
<li>Using fingerprinting techniques, what OS is the server likely running? (1 point per technique)</li>
<li>What is the average RTT delay between the client and the server? (1 point)</li>
<li>Following frame #14886, what TCP sequence number (relative) is the client expecting to receive next? (1 point + 1 bonus)<br />
Bonus &#8211; In what frame does it receive the expected TCP segment?</li>
<li>At the beginning of the file transfer there is a delay lasting around 3 seconds. Why? (2 points)</li>
</ol>
<h3>Easy peasy?</h3>
<p>Please send me your questions and answers via a communication transport of your liking. A comment here, the <a href="http://twitter.com/holmahenkel">social medias</a> or <a href="mailto:mail@fredrikholmberg.com">email</a>. Doesn&#8217;t matter!</p>
<p>The winner will of course receive loads of <a href="http://www.urbandictionary.com/define.php?term=street%20cred">street cred</a>. Way better than Facebook likes.</p>
<p>Have a great day <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f43c.png" alt="🐼" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>/2016/10/packet-analysis-challenge-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Packet Analysis Challenge #1</title>
		<link>/2016/08/packet-analysis-challenge-1/</link>
		<comments>/2016/08/packet-analysis-challenge-1/#comments</comments>
		<pubDate>Tue, 02 Aug 2016 09:02:53 +0000</pubDate>
		<dc:creator><![CDATA[Fredrik Holmberg]]></dc:creator>
				<category><![CDATA[packet analysis]]></category>
		<category><![CDATA[wireshark]]></category>
		<category><![CDATA[challenge]]></category>
		<category><![CDATA[wiresharklympics]]></category>

		<guid isPermaLink="false">/?p=384</guid>
		<description><![CDATA[Vacation&#8217;s over. Your networks have been underutilized for a good long month now. Time to get back to the trenches. Why not start things off with a proper packet analysis challenge? At least fire up Wireshark to see if there&#8217;s an auto-update waiting for you? Thank you Netresec for providing a huge list of packet captures to play with! [&#8230;]]]></description>
				<content:encoded><![CDATA[<div style="width: 468px" class="wp-caption aligncenter"><img src="https://upload.wikimedia.org/wikipedia/commons/e/ea/Prionace_glauca_1.jpg" width="458" height="305" /><p class="wp-caption-text">The Sharkminator</p></div>
<p>Vacation&#8217;s over. Your networks have been underutilized for a good long month now. Time to get back to the trenches. Why not start things off with a proper packet analysis challenge? At least fire up <a href="https://wireshark.org/">Wireshark</a> to see if there&#8217;s an auto-update waiting for you?</p>
<p><span id="more-384"></span></p>
<p>Thank you Netresec for providing <a href="http://www.netresec.com/?page=PcapFiles">a huge list</a> of packet captures to play with!</p>
<p>We will borrow a 13 MB packet capture from the excellent book &#8220;<a href="https://www.amazon.com/Practical-Packet-Analysis-Wireshark-Real-World/dp/1593272669">Practical Packet Analysis</a>&#8220;.</p>
<blockquote>
<pre>$ <strong>shasum wireshark1.pcapng</strong>
b8060f2b946f33b79833710db458368cd382d06c wireshark1.pcapng</pre>
</blockquote>
<p>Please go ahead and <a href="https://dl.dropboxusercontent.com/u/1185688/wireshark1.pcapng">download</a> the pcap file. Yes, it&#8217;s <a href="https://www.virustotal.com/en/file/1ec10a7f08ffe6e597f5ecde13c120003f75b8a96d6eb1680006f9b786406521/analysis/1470058599/">safe</a> to download.</p>
<p>Ready?</p>
<h3>&lt;gong sound&gt;</h3>
<p>Five questions + one bonus. One point per question:</p>
<ol>
<li>How many non-broadcast IPv4 nodes is Wireshark seeing?</li>
<li>The client downloads an EXE file, twice. From which countries is it downloading the file from?</li>
<li>How many Bytes is the client expecting to download for each EXE file?</li>
<li>Looking at the fastest of the two transfers, at what speed is the file downloaded on average in kbps, kilobit per second?</li>
<li>One node is not accepting the use of full TCP segments. Which one?
<ol>
<li>BONUS &#8211; How many Bytes is the client potentially missing out on per round-trip?</li>
</ol>
</li>
</ol>
<h3>Easy peasy?</h3>
<p>Please send me your answers via a communication platform of your liking. The <a href="http://twitter.com/holmahenkel">social medias</a> or <a href="mailto:mail@fredrikholmberg.com">email</a>. Doesn&#8217;t matter!</p>
<p>The winner will get loads of street cred as defined by <a href="http://www.urbandictionary.com/define.php?term=street%20cred">Urban Dictionary</a>:</p>
<blockquote><p>He&#8217;s been thru it all. His street cred is undeniable.</p></blockquote>
<p>That&#8217;s all you need. Get to it! <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f44a.png" alt="👊" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>/2016/08/packet-analysis-challenge-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
