<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>un-excogitate.org</title>
	
	<link>http://un-excogitate.org</link>
	<description>what was I thinking? (Christian Frichot's ad-lib on security and what-not)</description>
	<pubDate>Mon, 27 Apr 2009 03:07:13 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Un-excogitateorg" type="application/rss+xml" /><item>
		<title>Re-post: Australian Internet Censorship - Take The Power Back</title>
		<link>http://un-excogitate.org/archives/2009/04/27/re-post-australian-internet-censorship-take-the-power-back/</link>
		<comments>http://un-excogitate.org/archives/2009/04/27/re-post-australian-internet-censorship-take-the-power-back/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 03:07:13 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Privacy]]></category>

		<category><![CDATA[australia]]></category>

		<category><![CDATA[education]]></category>

		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=464</guid>
		<description><![CDATA[I have nothing to add to the great work that @irldexter and  @wadeis have done here. 
Read Drazen&#8217;s post now.
]]></description>
			<content:encoded><![CDATA[<p>I have nothing to add to the great work that <a href="http://www.twitter.com/irldexter">@irldexter</a> and  <a href="http://www.twitter.com/wadeis">@wadeis</a> have done <a href="http://www.nodecity.com/empower">here</a>. </p>
<p><a href="http://beastorbuddha.com/2009/04/27/australian-internet-censorship-take-the-power-back/">Read Drazen&#8217;s post now.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/04/27/re-post-australian-internet-censorship-take-the-power-back/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Can Information Security Professionals Work Four Days?</title>
		<link>http://un-excogitate.org/archives/2009/04/18/can-information-security-professionals-work-four-days/</link>
		<comments>http://un-excogitate.org/archives/2009/04/18/can-information-security-professionals-work-four-days/#comments</comments>
		<pubDate>Sat, 18 Apr 2009 10:11:54 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Profession]]></category>

		<category><![CDATA[Risk]]></category>

		<category><![CDATA[management]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=459</guid>
		<description><![CDATA[There&#8217;s been a lot of talk in the media recently about different ways in which companies can deal with the Global Financial Crisis (GFC). Redundancies, capping recruitment, capping pay, or perhaps promoting the four-day week. This last option has been getting quite a lot of press here in Australia and the rest of the world. [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s been a lot of talk in the media recently about different ways in which companies can deal with the Global Financial Crisis (GFC). Redundancies, capping recruitment, capping pay, or perhaps promoting the four-day week. This last option has been getting quite a lot of press here in Australia and the rest of the world. So does this work with info sec staff? I think it depends on the role and the current number of people filling that role.</p>
<p>Lets start with analysts/engineers/first-line-responders, the guys in the trenches who turn the gears and make sure our security technology is working and monitored. Depending on the business environment this is perhaps one of those roles that can&#8217;t easily be sliced down to 4 days. The conflict here is if your business requires 24/7 monitoring, or at least 24/7 on-call, either way you can&#8217;t easily make people redundant (how will you cover all your hours?) or ask people to work 4 days (to cover your time you will require more staff - which negates the 4 day working day). The risks here are if your monitoring area misses incidents or make mistakes managing your security infrastructure because of time constraints.</p>
<p>What if you employ security auditors or security testers? These types of roles, similar to security architects &#038; designers, will often see their workload ebb and flow depending on the number of projects. If the current GFC hasn&#8217;t impacted upon your project portfolio then your testers would probably still be required full-time, but whether or not they&#8217;re required for a full 5 days would entirely depend on how many projects there are, and the degree of detail that is required for each project. The issue here is that with your testers only working 4 days, then either the time dedicated to testing or the time they can focus on keeping abreast of testing techniques, may be impacted. This is of course taking into account that you employ these resources, as opposed to using consultants. These types of roles could probably pull back to four days without too much detriment, and knowing the types of people who perform these roles it&#8217;s not like they would simply fill their 5th day with veging out, they&#8217;d still be monitoring their feed readers and working on tools or other security related projects. The risk with your testers either not keeping on top of trends in the industry, or not focusing enough time on testing your systems is that vulnerabilities may make their way into production.</p>
<p>Employees involved with security architecture and design fall into the same area as your security testers. Depending on the project load, these roles could potentially work only 4 days, but would have to monitor their time spent on enhancing their knowledge and not falling behind the game. Similar with the testers, the risk of not having enough time for your designers is that perhaps systems are designed to a lesser degree of quality, or perhaps they will take longer to complete.</p>
<p>Your information risk specialists or analysts, perhaps not technical resources but sitting within a consulting or shared-service type of area, will potentially have a difficult time pulling back to four days. Core responsibilities here are advising the business of business and technical risks in the context of business-as-usual activities or changes and projects. Whilst the potentially dwindling number of projects may indicate that these roles can easily go to four days, with business trying to do the same amount of work as before, but with less time, they may have a tendency to look at riskier solutions. If this is the case, now is possibly the time for your risk specialists to refocus their efforts to ensure that risks are being considered and reviewed appropriately. The risk here of course is that activities get performed without the appropriate rigour being applied and &#8220;slip past the keeper&#8221; into production.</p>
<p>If your environment is fortunate to have dedicated security policy roles it would be fairly safe to say that the impact to the organisation wouldn&#8217;t be too great if they were asked to work 4 days. This is taking into consideration that the primary responsibilities include the maintenance and reviewing of policies and standard documentation. Depending on the size of your policy/standard set, the risk in reducing time in this area may lead to some of your documentation falling behind.</p>
<p>Security managers fall into a 50/50 bucket, depending entirely on the amount of people management they are currently doing, and how much time they work looking at the strategy of the security organisation (or if they leave that to the architects?). If your security managers&#8217; core responsibilities include just these two activities, then perhaps shifting to a four day week wouldn&#8217;t be too difficult. I&#8217;ve seen in a number of situations consultants acting as security managers at multiple locations. One of the key risks I see here is the impact of security management decisions not happening as fast as they should. Of course there are ways to deal with this situation.</p>
<p>Are any of you security professionals currently working four days? I would like to hear your feedback!</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/04/18/can-information-security-professionals-work-four-days/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sandboxing a Windows VM on Ubuntu</title>
		<link>http://un-excogitate.org/archives/2009/04/13/sandboxing-a-windows-vm-on-ubuntu/</link>
		<comments>http://un-excogitate.org/archives/2009/04/13/sandboxing-a-windows-vm-on-ubuntu/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 02:21:24 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Computers]]></category>

		<category><![CDATA[Profession]]></category>

		<category><![CDATA[Security]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[malware]]></category>

		<category><![CDATA[networking]]></category>

		<category><![CDATA[script]]></category>

		<category><![CDATA[virtualisation]]></category>

		<category><![CDATA[vmware]]></category>

		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=435</guid>
		<description><![CDATA[I recently had reason to examine some potentially malicious code at work and the safest way to perform this was to run the software within a VM. The problem was, how do you correctly configure a VM to limit how much network access it has, and thanks to LonnieOlsen&#8217;s blog on the topic it didn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>I recently had reason to examine some potentially malicious code at work and the safest way to perform this was to run the software within a VM. The problem was, how do you correctly configure a VM to limit how much network access it has, and thanks to <a href="http://lonnieolson.com/blog/2007/08/27/sandbox-a-vmware-virtual-machine-with-iptables/">LonnieOlsen&#8217;s blog</a> on the topic it didn&#8217;t turn out to be too difficult. My requirements were fairly simple:
<ul>
<li>The guest Windows XP machine must be able to resolve DNS names</li>
<li>The guest Windows XP machine must NOT be able to access the local network (except for accessing the local DNS server)</li>
<li>The guest Windows XP machine must be able to access the Internet using HTTP or HTTPS</li>
<li>The guest Windows XP machine must be able to SSH to the host Ubuntu machine (to copy files if required)</li>
</ul>
<p>As mentioned by Lonnie, the best way to do this is to configure the VM to use &#8220;Host Only&#8221; networking, then utilise the masquerading and other firewalling options of iptables on the Host Ubuntu system. This allows the Ubuntu system to limit, at the network layer, what the VM can access. My setup has the Ubuntu machine connecting to the network via wireless networking, the guest configured for &#8220;Host Only&#8221;, which uses the virtual interface vmnet1, and visually looks like this:</p>
<p><img src="http://un-excogitate.org/uploads/diagram1.jpg" alt="diagram1" title="diagram1" /></p>
<p>First up is configuring iptables. I&#8217;ve created a file called <em>firewall</em> and placed it in my /etc/init.d/ folder. The file has the following in it:</p>
<blockquote><p>#!/bin/bash -e</p></blockquote>
<p><em>The script is a bash script, not much to explain here.</em></p>
<blockquote><p>echo 1 > /proc/sys/net/ipv4/ip_forward</p></blockquote>
<p><em>Enable IP forwarding in the linux kernel - otherwise the IP traffic wouldn&#8217;t be routed through the Host Ubuntu system.</em></p>
<blockquote><p>iptables -t nat -F POSTROUTING<br />
iptables -F FORWARD</p></blockquote>
<p><em>Flush the tables before we set them up.</em></p>
<blockquote><p>iptables -t nat -A POSTROUTING -s 172.16.72.0/24 -o wlan0 -j MASQUERADE</p></blockquote>
<p><em>Enable routing out the wireless interface where the traffic comes from the &#8220;Host Only&#8221; virtual nat interface&#8217;s subnet.</em></p>
<p>Next we start the firewalling:</p>
<blockquote><p>iptables -A FORWARD -i vmnet1 -p UDP &#8211;dport 53 -j ACCEPT</p></blockquote>
<p><em>1. Allow DNS from the virtual nat interface. (requirement #1)</em></p>
<blockquote><p>iptables -A FORWARD -i vmnet1 -d 192.168.0.0/24 -j DROP</p></blockquote>
<p><em>2. Disallow traffic to enter the wireless network. (requirement #2)</em></p>
<blockquote><p>iptables -A FORWARD -i vmnet1 -p TCP &#8211;dport 80 -j ACCEPT</p></blockquote>
<p><em>3. Allow HTTP traffic out. (requirement #3)</em></p>
<blockquote><p>iptables -A FORWARD -i vmnet1 -p TCP &#8211;dport 443 -j ACCEPT</p></blockquote>
<p><em>4. Allow HTTPS traffic out. (requirement #3)</em></p>
<blockquote><p>itpables -A FORWARD -i vmnet1 -j DROP</p></blockquote>
<p><em>5. Drop everything else.</em></p>
<p>And that&#8217;s it (download the file from <a href="http://un-excogitate.org/uploads/firewall.txt">here</a>). Don&#8217;t forget to add a symlink to this file in your boot up scripts, because the Linux iptables rules do not return to their previous state after you reboot:</p>
<blockquote><p>$ <em>sudo ln -sf /etc/init.d/firewall /etc/rc2.d/S89firewall</em></p></blockquote>
<p>This puts the bash script into your default runlevel (2) and runs it after all the interfaces should be up.</p>
<p>Due to the way in which the forwarding works, the above rules will not prevent the Windows XP VM from SSHing to the Host Ubuntu box (requirement #4). But before we start up the VM, we have to configure the DHCP daemon settings for that &#8220;Host Only&#8221; virtual nat interface, vmnet1. The file we want to modify is <em>/etc/vmware/vmnet1/dhcpd/dhcpd.conf</em>, which I believe by default is read only, so the first thing I had to do was make it writeable with a:</p>
<blockquote><p>$ <em>sudo chmod o+w /etc/vmware/vmnet1/dhcpd/dhcpd.conf</em></p></blockquote>
<p>The only changes I made to this file were the addition or modification of the following lines in the <em>subnet 172.16.72.0 netmask 255.255.255.0</em> block:</p>
<blockquote><p>option domain-name-servers 192.168.0.254<br />
option routers 172.16.72.1</p></blockquote>
<p>This explicitly sets the DNS settings to the ADSL Router/DNS Server - as my Host Ubuntu server does not provide DNS resolution, and the second option sets up the gateway setting so the Windows XP VM will route traffic towards the Host Ubuntu server.</p>
<p>Next we adjust the Windows XP VM so it&#8217;s using &#8220;Host Only&#8221; networking and boot it up and voila. Your Windows XP VM should boot up and acquire its network settings from the vmnet1 DHCP daemon settings, it should be able to resolve internet hostnames and should be able to access Internet sites over HTTP and HTTPS but that&#8217;s it. If it tries to connect to any of the PCs on your wireless network it shouldn&#8217;t be able to.</p>
<p>(In the nature of always wanting to find better ways to do things, if anyone has any suggestions for how this could be done better, because I&#8217;m sure it could be, please leave me a comment!)</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/04/13/sandboxing-a-windows-vm-on-ubuntu/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Risks of Opera Mini</title>
		<link>http://un-excogitate.org/archives/2009/04/04/the-risks-of-opera-mini/</link>
		<comments>http://un-excogitate.org/archives/2009/04/04/the-risks-of-opera-mini/#comments</comments>
		<pubDate>Sat, 04 Apr 2009 11:12:47 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Computers]]></category>

		<category><![CDATA[Security]]></category>

		<category><![CDATA[browser]]></category>

		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=438</guid>
		<description><![CDATA[A few weeks ago, whilst trawling some interesting logs, I came across a bunch of HTTP traffic coming from f###-###.opera-mini.net. Performing a few more queries uncovered a bunch more traffic coming from other derivatives of this source. Until that point I hadn&#8217;t heard of Opera Mini, but according to their website, it&#8217;s &#8220;The world’s most [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago, whilst trawling some <del datetime="2009-04-04T04:02:11+00:00">interesting</del> logs, I came across a bunch of HTTP traffic coming from f<em>###-###.opera-mini.net</em>. Performing a few more queries uncovered a bunch more traffic coming from other derivatives of this source. Until that point I hadn&#8217;t heard of <a href="http://www.opera.com/mini/">Opera Mini</a>, but according to their website, it&#8217;s &#8220;The world’s most popular mobile Web browser with over 20 million users&#8221;. So what is Opera Mini?</p>
<p>Opera Mini is a compact web browser released by Opera Software that is designed for mobile devices, in particular, mobile phones. One of the primary features of the browser is its incredible speed. Opera boast more than 30% speed improvements for users in the US. But how exactly is a web browser able to boast such an incredible speed enhancement? Flux capacitor? FTL drive? No. Opera Mini is able to improve the speed of accessing websites by pulling them to their servers first, that then compress the content, before sending the content onto your phone (<a href="http://www.opera.com/press/releases/2006/11/28/">see press release</a>). This provides a few benefits:
<ol>
<li>Your browsing is faster over your traditionally slow mobile phone Internet connection</li>
<li>Your browsing is potentially cheaper, because instead of having to download a page that is 200KB in size, perhaps it&#8217;s only 100KB</li>
</ol>
<p>Another &#8220;feature&#8221; of Opera Mini, in the never-ending quest to provide an awesome browsing experience on a mobile phone, is that their servers will keep track of your cookies set by websites. This is so that if you visit a site that uses cookies, the Opera Mini server will submit it again for you (see Privacy under the <a href="http://www.opera.com/mini/help/faq/#privacy">faq</a>).</p>
<p>So does using this browser introduce any security or privacy risks to the user? I believe the simple answer is &#8220;yes&#8221;. Trying to expand on this to understand the potential impacts and likelihoods of these impacts is a little more complicated, and whilst I was going to take a <a href="http://fairwiki.riskmanagementinsight.com/">FAIR</a> approach to this, I don&#8217;t know enough of the internal controls to do it justice.</p>
<p>First of all what am I worried about, what assets are at risk? We all understand that your cookies, either in their short active lifetime or perhaps even beyond, hold some value to us users and generally we don&#8217;t want to share them with other people - so for this exercise I&#8217;m going to focus on <em>cookies</em> as the primary asset. Why is this? Primarily because cookies are often used as the mechanism to help provide state on an otherwise stateless protocol (thanks a lot HTTP). What this means is that, when you&#8217;re visiting facebook.com or yourbank.com, when you keep on hitting new pages the only way those web servers know who you are is because your requests often include a &#8220;session&#8221; identifier. Some web apps put that in the URL, but most will track your state through your cookies. I&#8217;m not going to put an actual dollar figure on what it would cost a user if those cookies are disclosed to a malicious, unauthorised third party, but let&#8217;s say it&#8217;s somewhere between all the personal information you store in your facebook profile and perhaps 10% of the money you have in your bank account. (this of course is entirely subjective - you may only ever use your Opera Mini browser to visit youtube.com?)</p>
<p>There are a handful of scenarios that may occur in which your cookies may be disclosed. Someone could compromise one of the multiple Opera Mini servers and milk them of their juicy, cookie information. Perhaps there&#8217;s a fault with the software running on those servers and Opera Mini users accidentally start seeing cookies from other users. Or perhaps an administrator of one of those servers has a bad day and decides to have a peek in their systems. To my knowledge (which I&#8217;m going to admit isn&#8217;t all that deep) none of these have occurred.</p>
<p>So what are Opera doing to prevent these sorts of issues? Well publicly they talk about encryption, and lots of it. According to the <a href="http://www.opera.com/mini/help/faq/#security">faq</a> the current version of the software will always encrypt data sent between their servers and your browser. This is actually a step above normal browsing, which would only encrypt traffic if the website is configured to use SSL/TLS (HTTPS). Of course, they also put in their faq:<br />
<code><strong>Can Opera Software see my passwords and credit card numbers in clear text? What is the encryption good for then?</strong><br />
The encryption is introduced to protect the communication from any third party between the client (the browser on your handset) and the Opera Mini transcoder server. If you do not trust Opera Software, make sure you do not use our application to enter any kind of sensitive information.</code><br />
The last statement certainly got me worried. They aren&#8217;t making any assurances on ensuring that your data is protected, even whilst being processed or stored on their infrastructure.</p>
<p>So what can you do? Well, I believe there is a balance between the benefits and potential negative impacting risks of this kind of service. Sure, if you&#8217;re only using Opera Mini to search Google and look up the weather then perhaps the browser is fine and doesn&#8217;t pose any risk to you. If on the other hand you want to ensure that no third party has access to cookies which are used to maintain your state with yourbank.com then maybe you use a different browser for those situations. The decision is mostly personal. For example, regardless of how much I enjoy browsing with Chrome, I still find myself only ever performing online banking with Firefox+NoScript, and often clearing out all settings after I&#8217;m done.</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/04/04/the-risks-of-opera-mini/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Urrrrgh</title>
		<link>http://un-excogitate.org/archives/2009/03/04/urrrrgh/</link>
		<comments>http://un-excogitate.org/archives/2009/03/04/urrrrgh/#comments</comments>
		<pubDate>Wed, 04 Mar 2009 00:54:50 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Security]]></category>

		<category><![CDATA[botnet]]></category>

		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=432</guid>
		<description><![CDATA[How the hell could I have missed this?
This week is National Zombie Awareness Week. Spread the word!
www.zombieweek.com
(Thanks @security4all)



]]></description>
			<content:encoded><![CDATA[<p>How the hell could I have missed this?</p>
<p>This week is National Zombie Awareness Week. Spread the word!</p>
<p><a href="http://www.zombieweek.com">www.zombieweek.com</a></p>
<p>(Thanks @security4all)</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/CEXypkBPXBk&#038;hl=en&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/CEXypkBPXBk&#038;hl=en&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/JQFz_KsbBsg&#038;hl=en&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/JQFz_KsbBsg&#038;hl=en&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/mUmJYg6sGtQ&#038;hl=en&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/mUmJYg6sGtQ&#038;hl=en&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/03/04/urrrrgh/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Self-signed Certificates in Burp</title>
		<link>http://un-excogitate.org/archives/2009/02/28/self-signed-certificates-in-burp/</link>
		<comments>http://un-excogitate.org/archives/2009/02/28/self-signed-certificates-in-burp/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 05:37:12 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Security]]></category>

		<category><![CDATA[Web Development]]></category>

		<category><![CDATA[security assessment]]></category>

		<category><![CDATA[web application]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=424</guid>
		<description><![CDATA[I&#8217;m happy to announce that I&#8217;ve got a guest blogger for the day. My guest blogger is David, a colleague of mine from work. He and I have been working together for about 2 years now and we&#8217;ve had some pretty interesting times.. so here it is:
Christian and I were recently asked to perform an [...]]]></description>
			<content:encoded><![CDATA[<p><em>I&#8217;m happy to announce that I&#8217;ve got a guest blogger for the day. My guest blogger is David, a colleague of mine from work. He and I have been working together for about 2 years now and we&#8217;ve had some pretty interesting times.. so here it is:</em></p>
<p>Christian and I were recently asked to perform an application security assessment on a .NET smart-client / web services application (<em><a href="http://blogs.msdn.com/dphill/articles/66300.aspx">What is a smart-client you ask?</a> -c</em>). This required a bit of hackery with certificates to get the traffic flowing through Burp. We figured this would be worth sharing, if only to save others a bit of time in future. So, I get to be guest blogger for the day.</p>
<p>The smart client was hardcoded with the address of the web services providers. Initially it seemed that this might require the intercepting proxy to run as a reverse (or transparent) proxy but it turned out that the app honoured IE proxy settings, so this was not necessary.</p>
<p>Next, we found that the client was failing to validate the SSL certificate provided by Burp, and there was no option to ignore the cert error and continue. To get around this, we generated a self-signed certificate for the correct server name, then this cert was loaded into Burp and imported into the certificate store on the client.</p>
<p><strong>The Short Way</strong></p>
<p>To generate the self-signed cert&#8230;</p>
<p><code>openssl genrsa 4096 > server.key<br />
openssl req -new -x509 -nodes -sha1 -days 1000 -key server.key > server.crt<br />
<em>(Common Name = FQDN for the SSL server)</em><br />
openssl pkcs12 -export -out server.p12 -in server.crt -inkey server.key</code></p>
<p>To load the cert into Burp&#8230;</p>
<p><code>Choose "Proxy" tab.<br />
Choose "Options" tab.<br />
Select the active listener.<br />
Click "edit" button.<br />
Tick "use a custom server SSL certificate".<br />
Specify path to server.p12 and password.<br />
Click "update" button.</code></p>
<p><img src="http://un-excogitate.org/uploads/burp-cert.jpg" alt="burp-cert" title="burp-cert" width="591" height="543" class="alignnone size-full wp-image-427" /></p>
<p>To load the cert into the client&#8217;s trusted store&#8230;</p>
<p><code>Copy either server.crt or server.p12 to the client machine.<br />
Right-click, “Install Certificate”.<br />
“Place all certificates in the following store” / “Trusted Root Certificate Authorities”</code></p>
<p>Restarting the smart client, it connected through Burp to the web services provider with no further problems.</p>
<p><strong>A Slightly Longer Way</strong></p>
<p>The above was sufficient for our purposes, but what if the smart client was using web services from a number of providers, all requiring SSL? So long as all the WS providers could be wildcarded to the same domain name, the above methodology can still be used with a couple of tweaks.</p>
<p>Or, what if you frequently needed to change the cert presented by Burp, but didn&#8217;t want the hassle of having to load a new certificate into the client machine each time.</p>
<p>First, generate a self-signed CA certificate&#8230;</p>
<p><code>openssl genrsa -des3 -out ca.key 4096<br />
openssl req -new -x509 -days 1000 -key ca.key -out ca.crt<br />
<em>(Make the CN whatever you like&#8230; &#8216;App Testing CA&#8217;)</em></code></p>
<p>Import the CA cert into the client machine as before. You shouldn&#8217;t need to repeat this step ever again; any certs subsequently signed by your CA cert will validate.</p>
<p>Then, generate the wildcard server cert, signed by your (self-signed) CA cert&#8230;</p>
<p><code>openssl genrsa -des3 -out server.key 4096<br />
openssl req -new -key server.key -out server.csr<br />
<em>(Make the CN something like&#8230; &#8216;*.yourdomain.com&#8217;)</em><br />
openssl x509 -req -days 1000 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt<br />
openssl pkcs12 -export -out server.p12 -in server.crt -inkey server.key</code></p>
<p>Finally, load the server.p12 file into Burp like before.</p>
<p><strong>Notes, restrictions, the potential for mischief&#8230;</strong></p>
<p>This all got me thinking that it might be nice to build a wildcard cert for something like “CN = *” that would be valid for any SSL site I might visit through Burp. This would save some time wading through pages of validation errors when testing browser-based apps. It would also present some interesting possibilities if one could, say, surreptitiously load a cert into the trusted store on a client then transparently proxy their web traffic&#8230;</p>
<p>Unfortunately (or fortunately), it turns out that this is not possible. Wildcard certs are only good for one level of wildcard. *.yourdomain.com is good for aaa.yourdomain.com and bbb.yourdomain.com, but not for some.thing.yourdomain.com. In the same way, a cert for “*” would presumably be good for “com” or “au”, but not mail.google.com or www.ebay.com. Foiled by the ITU-T. :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/02/28/self-signed-certificates-in-burp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New 2FA On The Block</title>
		<link>http://un-excogitate.org/archives/2009/02/17/new-2fa-on-the-block/</link>
		<comments>http://un-excogitate.org/archives/2009/02/17/new-2fa-on-the-block/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 11:03:49 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Security]]></category>

		<category><![CDATA[Web Development]]></category>

		<category><![CDATA[2FA]]></category>

		<category><![CDATA[authentication]]></category>

		<category><![CDATA[Internet]]></category>

		<category><![CDATA[phish]]></category>

		<category><![CDATA[sbn]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=420</guid>
		<description><![CDATA[&#8220;Hey girl in your eyes
I see a picture of me all the time
(step!)&#8221;
Which is roughly how this new mechanism works to provide a second factor of authentication using an out of band mechanism. After submitting a payment, a &#8220;Cronto Visual Cryptogram&#8221; (a picture) is displayed which has to be decrypted by your mobile phone (or [...]]]></description>
			<content:encoded><![CDATA[<p><em>&#8220;Hey girl in your eyes<br />
I see a picture of me all the time<br />
(step!)&#8221;</em></p>
<p>Which is roughly how this new mechanism works to provide a second factor of authentication using an out of band mechanism. After submitting a payment, a &#8220;Cronto Visual Cryptogram&#8221; (a picture) is displayed which has to be decrypted by your mobile phone (or other device) providing you with a code you then have to enter into your payment page.</p>
<p>Similar to SMS 2FA (or at least well implemented SMS 2FA), the &#8220;cryptogram&#8221; can include other textual information such as payment details. This should hopefully prevent fraudulent transactions from being &#8220;authorised&#8221; via the channel, such as those generated by a &#8220;man-in-the-browser&#8221; trojan.</p>
<p>Whilst I haven&#8217;t really had time to process the benefits and disadvantages (mobile phone compatibility?) of this mechanism I&#8217;m quite happy to hear that innovate research is still being done in this space. Interesting&#8230;</p>
<p>(Thank you <a href="http://www.securitybloggers.net/">SBN</a> <a href="http://feeds.feedburner.com/SecurityBloggersNetwork">feed</a> for bringing <a href="http://blog.cronto.com/index.php?title=out_of_band_authentication_rethought&#038;more=1&#038;c=1&#038;tb=1&#038;pb=1">this</a> article to my attention!)</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/02/17/new-2fa-on-the-block/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Security Bloggers Network and Lijit</title>
		<link>http://un-excogitate.org/archives/2009/02/14/security-bloggers-network-and-lijit/</link>
		<comments>http://un-excogitate.org/archives/2009/02/14/security-bloggers-network-and-lijit/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 01:54:48 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Web Development]]></category>

		<category><![CDATA[blog]]></category>

		<category><![CDATA[sbn]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=417</guid>
		<description><![CDATA[I just added the new &#8220;SBN Lijit&#8221; search form over there on the right. Had a quick play with it, seems pretty good at providing a site-wide search for my blog, and for the entire SBN community.
Alan has more information here.
]]></description>
			<content:encoded><![CDATA[<p>I just added the new &#8220;SBN Lijit&#8221; search form over there on the right. Had a quick play with it, seems pretty good at providing a site-wide search for my blog, and for the entire SBN community.</p>
<p>Alan has more information <a href="http://www.stillsecureafteralltheseyears.com/ashimmy/2009/02/the-sbn-goes-lijit-officially.html">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/02/14/security-bloggers-network-and-lijit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mark of the Phish</title>
		<link>http://un-excogitate.org/archives/2009/02/08/mark-of-the-phish/</link>
		<comments>http://un-excogitate.org/archives/2009/02/08/mark-of-the-phish/#comments</comments>
		<pubDate>Sun, 08 Feb 2009 08:21:07 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Computers]]></category>

		<category><![CDATA[Security]]></category>

		<category><![CDATA[Web Development]]></category>

		<category><![CDATA[greasemonkey]]></category>

		<category><![CDATA[Internet]]></category>

		<category><![CDATA[phish]]></category>

		<category><![CDATA[scam]]></category>

		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=406</guid>
		<description><![CDATA[Whilst phishers, or at least the guys who make and distribute the kits, have been relatively good at keeping their methods up to date with changes in Internet technology (Twitter phish anyone?), it&#8217;s still not uncommon to find the odd scammer who runs a phish site like we&#8217;re still the 90s. You can sometimes tell [...]]]></description>
			<content:encoded><![CDATA[<p>Whilst phishers, or at least the guys who make and distribute the kits, have been relatively good at keeping their methods up to date with changes in Internet technology (<a href="http://blog.twitter.com/2009/01/gone-phishing.html">Twitter phish anyone?</a>), it&#8217;s still not uncommon to find the odd scammer who runs a phish site like we&#8217;re still the 90s. You can sometimes tell these guys apart from the rest because of their general lack of HTML and CSS knowledge.</p>
<p>A couple of the tell tale signs I&#8217;ve noticed over the past year or so is things like their inability to recreate a HTML button which uses CSS to use a custom image. For example, where the HTML is similar to:</p>
<blockquote><p><code>&lt;input type="image" class="loginbutton" src="blank.gif" style="height:30px;width:80px;" /&gt;</code></p></blockquote>
<p>And the CSS is similar to:</p>
<blockquote><p><code>.loginbutton {background-image: url(<strong>actualbutton.jpg</strong>); background-repeat:no-repeat;}</code></p></blockquote>
<p>Because this prevents the user from right clicking the button and choosing &#8220;Save Image As..&#8221;, you&#8217;ll find that instead of going through the CSS to find where the ACTUAL button image is (actualbutton.jpg) they&#8217;ll take a screenshot of the page and recreate the image from there.</p>
<p>Another sign is the &#8220;<a href="http://msdn.microsoft.com/en-us/library/ms537628(VS.85).aspx">Mark of the Web</a>&#8221; (MotW). The MotW was created back in the days of IE 4.0 as a mechanism for a HTML page to run in a different security zone then what it actually is. For example, if you want to test a HTML page locally, but make sure it runs in the Internet zone you can set the MotW within the HTML page to &#8220;<code>about:internet</code>&#8220;. An example MotW is:</p>
<blockquote><p><code>&lt;!-- saved from url=(0022)http://www.google.com/ --&gt;</code></p></blockquote>
<p>The #### between the brackets indicates the length of the following URL.</p>
<p>Now you might be wondering whether or not this allows a page out there on the Internet to run in the &#8220;Local&#8221; security zone in IE, the MotW is configured such that it will only run the HTML in the prescribed MotW zone if it is more restrictive than the &#8220;Local&#8221; security zone.</p>
<p>So what&#8217;s this got to do with phishing? Well, when you save a page in IE, it inserts the MotW into the saved HTML as the URL of the site. So for example, if the login page the phishers want to impersonate is http://www.twitter.com, then the saved HTML would include</p>
<blockquote><p><code>&lt;!-- saved from url=(0023)http://www.twitter.com/ --&gt;</code></p></blockquote>
<p>Of course, when they setup their phishing site the URL won&#8217;t be that, it&#8217;ll be something like http://i.hacked.some.joomla.server.com/images/twitterphish/index.html. Naturally this URL does not match what is specified in the MotW within phished content at index.html.</p>
<p>Surely you&#8217;d think that the guys setting up these phishing kits would look at the HTML and remove these sorts of things? Sometimes yes, but sometimes no. Often the only thing they have to change is where the login form POSTs to. So instead of POSTing to itself, they&#8217;ll then change their phishing content to post to some mailer script at &#8220;mailer.php&#8221; or whatever.</p>
<p>As far as I know, none of the browsers look at the MotW for anything, except IE which looks at it for security zones. I&#8217;m unsure if any of the Google or Yahoo bars review the MotW for any discrepancies. Whilst not entirely accurate, and likely to lead to some false positives I thought it was worthwhile to look at anyway. This is where &#8220;<a href="http://un-excogitate.org/motp.user.js">Mark of the Phish</a>&#8221; (MotP) was born from.</p>
<p>MotP is a Greasemonkey script (that means Firefox only folks!) that looks at the MotW tag within HTML documents, and if it does NOT match the current URL pops up an alert asking if you want to continue. This is primarily a proof of concept to determine if this type of early detection would work at all in the real world. It&#8217;s difficult for me (or even perhaps anyone who reads this?) to tell, because as professional security folks we&#8217;re tuned to detect a dodgy site, regardless of what&#8217;s included within the HTML, MotW or not. </p>
<p>In an ideal world this functionality could be built into anti-phishing toolbars, or perhaps into the browser itself. I&#8217;m also aware that this is only a temporary detection, you would assume that Darwin&#8217;s theory of natural selection would eventually weed out all the phishers creating useless phishing kits, and slowly but surely the guys making the effective kits would get better at reviewing their HTML before rolling it out. Until that point though, perhaps every little bit helps. Tell me what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/02/08/mark-of-the-phish/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Happy Holidays and a New Look</title>
		<link>http://un-excogitate.org/archives/2009/01/17/happy-holidays-and-a-new-look/</link>
		<comments>http://un-excogitate.org/archives/2009/01/17/happy-holidays-and-a-new-look/#comments</comments>
		<pubDate>Sat, 17 Jan 2009 10:26:17 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
		
		<category><![CDATA[Security]]></category>

		<category><![CDATA[education]]></category>

		<category><![CDATA[owasp]]></category>

		<guid isPermaLink="false">http://un-excogitate.org/?p=399</guid>
		<description><![CDATA[Just a tiny update to check that everyone had a fantastic Christmas and New Years break, and that everything is back to normal. I&#8217;ve done a little bit of housecleaning around here, changed to a new theme and removed my delicious links from the side bar. The truth is, since it&#8217;s become trivial to &#8220;Note [...]]]></description>
			<content:encoded><![CDATA[<p>Just a tiny update to check that everyone had a fantastic Christmas and New Years break, and that everything is back to normal. I&#8217;ve done a little bit of housecleaning around here, changed to a new theme and removed my delicious links from the side bar. The truth is, since it&#8217;s become trivial to &#8220;Note in Reader&#8221;, there just isn&#8217;t any reason to use delicious any more.</p>
<p>The other thing that I&#8217;ve been finding myself use more and more each day is <a href="http://twitter.com">Twitter</a>. I&#8217;ve been using the service since April last year and I still find myself using it. I&#8217;m limited in my use of the service during working hours, but I still find it a valuable tool to get a quick &#8220;feel&#8221; of the security industry and also it&#8217;s great at asking short questions to a very wide audience. You can twit me at <a href="http://twitter.com/xntrik/">@xntrik</a>.</p>
<p>What&#8217;s coming up for Christian?<br />
I&#8217;m organising a presentation for Perth&#8217;s AISA slash OWASP on security in the SDLC focusing on threat modelling. I&#8217;m hoping to provide an overview of a few methodologies being advertised by the industry for securing the SDLC, including MS&#8217; SDL and OWASP&#8217;s own CLASP. The threat modelling section will probably focus on a more interactive session with the audience walking through a simple threat model scenario. The target audience I&#8217;m hoping for is developers, of course the room will probably be majority security folks. Ah well, hopefully they&#8217;ll be able to take the message back to their developers.</p>
<p>..hopefully.</p>
]]></content:encoded>
			<wfw:commentRss>http://un-excogitate.org/archives/2009/01/17/happy-holidays-and-a-new-look/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
