<?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>Eamonn's Ramblings &#187; Networking</title>
	<atom:link href="http://bogpeople.com/blog/?feed=rss2&#038;cat=3" rel="self" type="application/rss+xml" />
	<link>http://bogpeople.com/blog</link>
	<description>Sharing The Few Thoughts I Have With The World</description>
	<lastBuildDate>Tue, 06 Jan 2009 15:43:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The source of all network and security problems finally identified!!!</title>
		<link>http://bogpeople.com/blog/?p=13</link>
		<comments>http://bogpeople.com/blog/?p=13#comments</comments>
		<pubDate>Thu, 20 Dec 2007 12:01:42 +0000</pubDate>
		<dc:creator>eamonn</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://bogpeople.com/blog/?p=13</guid>
		<description><![CDATA[[This post is a slight departure from my stated policy of trying not to increase the average level of inane wittering on the Internet any further by keeping my opinions to myself in this blog, but this particular insight is just too penetrating not to share it with the world.  Like all of my [...]]]></description>
			<content:encoded><![CDATA[<p><em>[This post is a slight departure from my stated policy of trying not to increase the average level of inane wittering on the Internet any further by keeping my opinions to myself in this blog, but this particular insight is just too penetrating not to share it with the world.  Like all of my opinions, it is - of course - entirely correct <img src='http://bogpeople.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />    ]<br />
</em></p>
<p>I have had an epiphany.  I now know what causes pretty much all network problems:  <strong>GUIs</strong>.  At first blush, this may sound like a slightly sweeping statement but I have come to believe in it very deeply.  Stick with me here and I will explain why.</p>
<p>Take today for example:  Myself and one of my esteemed colleagues squandered an hour of our lives dealing with a guy in a secondary school where we support the Internet router.  His Internet access was broken.  I&#8217;ll spare you the long and painful details of the hour&#8230;suffice it to say that by the end of it we determined that there was a server sitting between his 140 snotty, insolent teenagers and our router.  It took a startlingly large fraction of that hour to glean from this barely-adequate specimen of humanity that this server even existed.  We also figured out that &#8211; somehow &#8211; the server was at the core of the problem.  After a conversation reminiscent of having teeth pulled, our hero volunteered that &#8211; infact &#8211; there had been a change to the server that morning:  he had uninstalled Microsoft ISA server off it !!  Somehow &#8211; and it completely eludes me how anyone can be quite this gormless &#8211; it never entered his head that perhaps uninstalling the proxy/firewall software off the server separating the hormonal masses from the Internet router might be <em>somehow </em>related to his current predicament (140 horny teenagers separated from their porn supply and becoming increasingly antsy about it).</p>
<p>So, how do I extrapolate from this to my theory about GUIs being the root of all evil ?  Well, if that server had been a Linux server, there is no way on earth that this guy would have taken it upon himself to touch it.  The slightly arcane (yes&#8230;I admit it) Linux command-line has a way of scaring off people like this who really need most of their brain power just so they remember to breathe regularly and are taking huge risks by trying to apply their limited stock of intelligence to anything else.  In short, command-lines have a way of making things appear a little harder to do than they actually are and therefore act as a built-in safety-net, preventing &#8220;special&#8221; people from trying to do things they are simply not equipped to do.  GUIs, have exactly the opposite effect:  they allow the dimmest of knuckle-dragging troglodytes to poke and prod at things they don&#8217;t really understand until eventually they manage to break it.</p>
<p>I formulated a more limited form of this theory some years ago when I formed the opinion that Checkpoint Firewall-1 was the source of all security problems on the Internet.  When I first started working in the field of data security I could never really understand how hackers seemed to be able to waltz past the best of access lists and firewalls as if they weren&#8217;t there.  How could it be that the hackers were all so clever and the developers of firewalls were all apparently dribbling idiots ?  Then, one day, I was on-site with a large multinational customer watching the guys in there trying to get an application working through a Checkpoint firewall.  So, they fired up Checkpoint&#8217;s very lovely GUI and they added the rule they thought should do the trick.  It didn&#8217;t, so the relaxed the rule a little further.  It still didn&#8217;t, so they relaxed it a little further again, and so the cycle continued through several iterations until eventually the application did work and the &#8220;firewall&#8221; was reduced to the functional equivalent of a piece of wire.  At that moment I understood for the first time that security holes were rarely caused by weaknesses in firewalls and far more often caused by mental deficiencies in those charged with configuring them.  I also understood that the GUI was at fault:  Checkpoint&#8217;s (lovely) GUI makes it very easy to set up rules without the bothersome inconvenience of having to have the remotest understanding of what the hell you are doing.  If they had a PIX rather than a Checkpoint (these were the halcyon days before PIX Device Manager, when all was right with the world), this would not have happened.  The only thing I didn&#8217;t grasp at the time was exactly how generally-applicable the GUI theory was.</p>
]]></content:encoded>
			<wfw:commentRss>http://bogpeople.com/blog/?feed=rss2&amp;p=13</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IPSec problems between Cisco PIX and WatchGuard Firebox</title>
		<link>http://bogpeople.com/blog/?p=5</link>
		<comments>http://bogpeople.com/blog/?p=5#comments</comments>
		<pubDate>Fri, 25 May 2007 22:29:10 +0000</pubDate>
		<dc:creator>eamonn</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://bogpeople.com/blog/?p=5</guid>
		<description><![CDATA[OK&#8230;this is my first useful post to this blog.
I have spent the better part of the day trying to diagnose an IPSec connectivity problem between a Cisco PIX (version 6.3.5) and a WatchGuard Firebox of some kind (I have no visibility of it).  The problem turns out to be rather subtle, so I thought [...]]]></description>
			<content:encoded><![CDATA[<p>OK&#8230;this is my first useful post to this blog.</p>
<p>I have spent the better part of the day trying to diagnose an IPSec connectivity problem between a Cisco PIX (version 6.3.5) and a WatchGuard Firebox of some kind (I have no visibility of it).  The problem turns out to be rather subtle, so I thought I would share it here.</p>
<p>The configuration on the PIX is fairly standard (IP addresses have been changed to protect the innocent !):-<br />
<code><br />
crypto ipsec transform-set Esp3DesMD5 esp-3des esp-md5-hmac<br />
:<br />
:<br />
access-list VPNToFirebox permit 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0<br />
:<br />
:<br />
crypto map VPN 60 ipsec-isakmp<br />
crypto map VPN 60 match address VPNToFirebox<br />
crypto map VPN 60 set pfs<br />
crypto map VPN 60 set peer 2.2.2.2<br />
crypto map VPN 60 set transform-set Esp3DesMD5<br />
crypto map VPN 60 set security-association lifetime seconds 86400 kilobytes 8192<br />
:<br />
:<br />
isakmp key ******** address 2.2.2.2 netmask 255.255.255.255 no-xauth no-config-mode<br />
</code></p>
<p>The ISAKMP (Phase 1) SA establishes just fine, but the IPSEC (Phase 2) SA never comes up.  Watching the debug information on the PIX, here&#8217;s what happens:-</p>
<p><code><br />
ISAKMP : Checking IPSec proposal 1<br />
ISAKMP: transform 1, ESP_3DES<br />
ISAKMP:   attributes in transform:<br />
ISAKMP:      SA life type in seconds<br />
ISAKMP:      SA life duration (VPI) of  0x0 0x1 0x51 0x80<br />
ISAKMP:      SA life type in kilobytes<br />
ISAKMP:      SA life duration (basic) of 8192<br />
ISAKMP:      group is 2<br />
<span style="color: red"><strong> ISAKMP:      encaps is 61433</strong></span><br />
ISAKMP:      authenticator is HMAC-MD5<br />
ISAKMP (0): atts not acceptable. Next payload is 0<br />
ISAKMP (0): SA not acceptable!<br />
ISAKMP (0): sending NOTIFY message 14 protocol 0<br />
return status is IKMP_ERR_NO_RETRANS<br />
</code></p>
<p>The key is the &#8220;encaps is 61433&#8243; line.  What this <em>should</em> say is &#8220;encaps is 61443&#8243; which is the (old, pre-RFC3947) encapsulation ID for ESP via NAT Traversal.  As it is, the PIX has no idea what &#8220;61433&#8243; is supposed to be and the SA negotiation fails.</p>
<p>Here&#8217;s what the debug output looks like when talking to another PIX (which sends the correct ID):-</p>
<p><code><br />
ISAKMP (0): processing SA payload. message ID = 177759204<br />
ISAKMP : Checking IPSec proposal 1<br />
ISAKMP: transform 1, ESP_3DES<br />
ISAKMP:   attributes in transform:<br />
<span style="color: red"><strong>ISAKMP:      encaps is 61443</strong></span><br />
ISAKMP:      SA life type in seconds<br />
ISAKMP:      SA life duration (VPI) of  0x0 0x1 0x51 0x80<br />
ISAKMP:      SA life type in kilobytes<br />
ISAKMP:      SA life duration (basic) of 8192<br />
ISAKMP:      authenticator is HMAC-MD5<br />
ISAKMP:      group is 1<br />
ISAKMP (0): atts are acceptable.IPSEC(validate_proposal_request): proposal part #1,</code></p>
<p>Here the encapsulation ID is correct and the tunnel comes up.</p>
<p>The problem only arises when NAT is detected on the path between the Firebox and the PIX&#8230;otherwise there is no need to encapsulate the ESP inside UDP.</p>
<p><strong>References</strong></p>
<ul>
<li><a href="http://http://tools.ietf.org/html/draft-ietf-ipsec-nat-t-ike-04"> Negotiation of NAT-Traversal in the IKE &#8211; http://tools.ietf.org/html/draft-ietf-ipsec-nat-t-ike-04</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://bogpeople.com/blog/?feed=rss2&amp;p=5</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
