<?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/"
xmlns:cc="http://creativecommons.org/ns#" > <channel><title>Flavio&#039;s Technotalk</title> <atom:link href="http://www.flaviostechnotalk.com/feed/" rel="self" type="application/rss+xml" /><link>http://www.flaviostechnotalk.com</link> <description>Been around cutting edge technology for too long...</description> <lastBuildDate>Sat, 21 May 2011 05:01:21 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <cc:license >Creative Commons Attribution-ShareAlike CC BY-SA</cc:license><dc:rights  >Creative Commons Attribution-ShareAlike CC BY-SA</dc:rights><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /> <item><title>Of darknets, onion routing and online anonymity</title><link>http://www.flaviostechnotalk.com/2011/05/21/of-darknets-onion-routing-and-online-anonymity/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=of-darknets-onion-routing-and-online-anonymity</link> <comments>http://www.flaviostechnotalk.com/2011/05/21/of-darknets-onion-routing-and-online-anonymity/#comments</comments> <pubDate>Sat, 21 May 2011 04:04:48 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[Information Security]]></category> <category><![CDATA[Network]]></category> <category><![CDATA[Technology]]></category> <category><![CDATA[Darknet]]></category> <category><![CDATA[Freenet]]></category> <category><![CDATA[I2P]]></category> <category><![CDATA[Security]]></category> <category><![CDATA[Tor]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=73</guid> <description><![CDATA[Darknets are usually defined as closed, often decentralized and hidden, networks that overlay a public medium such as the Internet. Although common knowledge gives this term a &#8220;peer-to-peer file sharing&#8221; connotation, exchange of information, frequently anonymously, across multiple parties would &#8230; <a
href="http://www.flaviostechnotalk.com/2011/05/21/of-darknets-onion-routing-and-online-anonymity/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://en.wikipedia.org/wiki/Darknet_(file_sharing)" target="_blank">Darknets</a> are usually defined as closed, often decentralized and hidden, networks that overlay a public medium such as the Internet. Although common knowledge gives this term a &#8220;<a
href="http://en.wikipedia.org/wiki/Peer-to-peer_file_sharing" target="_blank">peer-to-peer file sharing</a>&#8221; connotation, exchange of information, frequently anonymously, across multiple parties would be a more accurate depiction.</p><p><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/darkside.jpg"><img
class="alignleft" title="darkside" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/darkside-300x240.jpg" alt="" width="300" height="240" /></a>Darknets are not the only way to preserve privacy for online activities. <a
href="http://en.wikipedia.org/wiki/Anonymizer" target="_blank">Anonymizer</a> proxy services, both free and commercial, are possibly the best known vehicles to achieve online privacy up to a certain degree. However, they all suffer from a key weakness of this model: the entity controlling the proxy has access, either transient or permanent, to activity records for all the users of that particular service. This poses an interesting question: is your privacy better preserved when your information is only known to a few, potentially interested, parties? The obvious response from privacy purists is that this is not the case.</p><p><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/darkside.jpg"></a>Darknets, by nature, tend to be decentralized, leading themselves to a paradigm where no single party can control or eavesdrop the information moving across the network. Most of them go to great extents to encrypt data and network identifiers so that they can not be accessed by the transporting parties. Some of them even provide for distributed data storage, allowing for fragments or whole data elements to reside encrypted in permanent storage contributed by participants.</p><p><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/darknets.jpg"><img
class="size-medium wp-image-79 alignright" title="darknets" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/darknets-300x163.jpg" alt="" width="300" height="163" /></a>Based on how open or closed a Darknet is, there are essentially three models; all these models can physically and logically coexist within the same Darknet:</p><p>1. Closed or pure Darknets, also known as F2F (for friend-to-friend), characterized by the fact that connections are only established between nodes based on extrinsic arrangement or prior knowledge. These are the ones that clearly provide the highest confidentiality; in many cases these Darknets can operate undetected by extended periods of time. However, accessibility is limited to those who know one or more participants <em>before they can connect to the network</em>. Requestor and resource are both contained within the Darknet itself, and no traffic abandons the Darknet, ever.</p><p>2. Open Darknets, where new nodes more or less randomly establish connections with existing nodes. This model provides for easy access for new participants to join, but also offers more possibilities for third parties intending to snoop in or subvert the network. Similar to the previous case, both, requestors and resources are internal to the Darknet.</p><p>3. Darknets with gateways or “exit nodes”, which allow access to external services not contained in the Darknet itself. As soon as traffic abandons the Darknet, it becomes vulnerable to information leakage, either to attacks by third parties in the way of the traffic (man in the middle) or to compromise by the final recipients. SSL or any other encryption protocol can provide a veil of confidentiality to the data contained in the transmission, but it cannot prevent a third-party from discovering that the transmission itself happened. The third-party may not know who the original sender for the request was (if the Darknet operates as expected <em>and masks the original source network identifier replacing it with the gateway network identifier</em>), but will undoubtedly realize that there was a transmission between the gateway and the destination at a particular time and using specific network protocols and ports.</p><p>We’ll go over three of the most popular Darknets including their fundamentals, applicability and limitations.</p><p
style="text-align: center;"><a
href="http://www.torproject.org/" target="_blank"><strong>Tor</strong></a></p><div
id="attachment_71" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/tor-concentric-layers-of-encryption.jpg"><img
class="size-medium wp-image-71" title="Concentric layers of encryption in Tor" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/tor-concentric-layers-of-encryption-300x214.jpg" alt="Concentric layers of encryption in Tor" width="300" height="214" /></a><p
class="wp-caption-text">Concentric layers of encryption in Tor</p></div><p>The most popular forms of Darknets are usually those that allow for some type of anonymous access to external resources. Since the Internet offers a significantly larger pool of resources than any Darknet in existence, most people just look for ways to conceal their online identities while accessing these resources in the open Internet. Tor, based on a model known as &#8220;onion routing&#8221;, which provides for multiple concentric layers of encryption for every transmission, is possibly the most prevalent form of Darknet. Nodes relaying data for other nodes within the Darknet are oblivious to the content of the transmissions and the identity of the original sources of the requests, thanks to these multiple encryption layers. Although Tor offers internal resources too (in the &#8220;onionland&#8221; or <a
href="http://en.wikipedia.org/wiki/.onion" target="_blank">.onion</a> URL domain), accessing these resources is conditioned to the existence of prior knowledge of their URI&#8217;s, and the fact that there is no central directory of resources doesn&#8217;t make finding any given resource a simple task (try to imagine an Internet with no search engines and incomplete indices to sites and information). This limitation is also shared by other Darknets that provide in-network services. Using Tor is extremely simple, and <a
href="https://www.torproject.org/download/download.html.en" target="_blank">self-contained installation packages</a> are available for the most common operating systems. Tor is not exempt of challenges as two potential problems have been identified in the past:</p><p>1. DNS resolution can, if not properly routed through Tor, expose the identities of requestor and resource (not a weakness in Tor itself and it has been addressed and corrected by a relatively recent update);</p><p>2. If you could identify the requester beforehand by exploiting a vulnerability on the user’s system or otherwise, you could trace the path within the Tor network for any future request from that user. While the former is not a weakness in Tor itself, the latter is a limitation in the way Tor works. This is known as <a
href="https://www.usenix.org/events/leet11/tech/full_papers/LeBlond.pdf" target="_blank">&#8220;the bad apple attack&#8221;</a>.</p><p
style="text-align: center;"><strong><a
href="http://www.i2p2.de" target="_blank">I2P</a></strong></p><div
id="attachment_80" class="wp-caption alignleft" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/endToEndEncryption.png"><img
class="size-medium wp-image-80" title="I2P routing and encryption" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/endToEndEncryption-300x150.png" alt="I2P routing and encryption" width="300" height="150" /></a><p
class="wp-caption-text">I2P routing and encryption</p></div><p>The Invisible Internet Project is, in some sense, similar to Tor as it uses multiple encryption layers to encapsulate the requests and that it also replaces the sender information as the message is relayed through the network. However, there are differences between the two, particularly regarding the following two aspects:</p><p>1. I2P also replaces the destination information to conceal the identity of the receiver;</p><p>2. I2P is based on the so called &#8220;<a
href="http://en.wikipedia.org/wiki/Garlic_routing" target="_blank">garlic routing</a>&#8221; which aggregates multiple messages together in an attempt to prevent attacks that could use traffic information to identify sender and receiver of a particular transmission.</p><p>I2P also allows for in-the-network anonymous website publishing. These sites are called &#8220;eepsites&#8221; and use a .i2p domain (similar to the .onion domain for Tor). Since I2P hasn&#8217;t been adequately peer reviewed and it has a relatively small group of participants, anonymity can not be guaranteed.</p><p
style="text-align: center;"><strong><a
href="http://freenetproject.org/" target="_blank">Freenet</a></strong></p><div
id="attachment_77" class="wp-caption alignleft" style="width: 214px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/freenet.jpg"><img
class="size-full wp-image-77" title="Freenet logo" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/freenet.jpg" alt="Freenet logo" width="204" height="122" /></a><p
class="wp-caption-text">Freenet logo</p></div><p>Originally developed by Ian Clarke in the late 90’s, Freenet advocates a different model. The paradigm behind it is based on ensuring a censor resistant anonymous information store. In order to achieve this goal, a combination of a hashed distributed information store and strong cryptography are utilized. Each participant voluntarily contributes permanent storage space which is used to host encrypted data blocks. These blocks are referenced by identifiers based on their hashes, which serve the dual purpose of validating that the data hasn’t been tampered with, and indexing the specific block for later retrieval. Any new data injected into the network is decomposed into blocks and these blocks are migrated to nodes that tend to concentrate that particular portion of the hashing space. The more these blocks are accessed, the more copies of them in existence and the higher the availability for the particular data element. This distributed storage behaves as an LRU (least recently used) cache, so data blocks that have not been recently accessed can be overwritten to make room for new data, effectively expiring uninteresting data in lieu of content in higher demand. One interesting aspect of this approach is the fact that the publisher can disappear almost immediately after the data has been injected into Freenet without affecting the availability of the data itself. In addition to data store, Freenet also provides for peer to peer communication, although latencies vary depending on the actual topology. There is also the inconvenience that there is no delivery assurance (although there is a high probability that if peers are close enough, they will be able to communicate). Moreover, Freenet is based on the &#8220;<a
href="http://en.wikipedia.org/wiki/Small-world_network" target="_blank">small-world</a>” network theory which sustains that the topology of the network is such that any node can be reached in a small number of hops, with only knowledge of immediately adjacent participants.</p><p>As of its latest version (0.7), Freenet can be configured in either one of two modes: <a
href="http://en.wikipedia.org/wiki/Friend-to-friend" target="_blank">F2F</a> or pure Darknet mode, and open Darknet. The former provides for the highest degree of anonymity, while the latter allows for easier joining if there is no prior knowledge of nodes in the network</p><p
style="text-align: center;"><strong>Ethical considerations and conclusion</strong></p><p
style="text-align: left;">The right to privacy and the right to freedom are fundamental rights, and part of many countries&#8217; privacy laws and, in some cases, Constitutions. However, by their own nature, Darknets also provide for a fertile ground for cyber crime, as they hamper the investigators&#8217; ability to perform forensic analysis. In any case, Darknets can be a powerful tool against totalitarian and oppressive regimes.</p><p
style="text-align: left;">At the end, Darknets are just a tool: what you do with them is what counts.</p><p
style="text-align: left;">&nbsp;</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/05/21/of-darknets-onion-routing-and-online-anonymity/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Howto: Linux on your wireless router</title><link>http://www.flaviostechnotalk.com/2011/05/15/howto-linux-on-your-wireless-router/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=howto-linux-on-your-wireless-router</link> <comments>http://www.flaviostechnotalk.com/2011/05/15/howto-linux-on-your-wireless-router/#comments</comments> <pubDate>Sun, 15 May 2011 19:31:21 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[DD-WRT]]></category> <category><![CDATA[E3000]]></category> <category><![CDATA[OpenWRT]]></category> <category><![CDATA[wireless router]]></category> <category><![CDATA[wndr3700]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=59</guid> <description><![CDATA[Perhaps you have decided that you need a feature that your old wireless router doesn&#8217;t support: How about the ability to provide a VPN service to access your home network securely from remote? Or maybe a guest network for those relatives &#8230; <a
href="http://www.flaviostechnotalk.com/2011/05/15/howto-linux-on-your-wireless-router/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<div
id="attachment_60" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/e3000-1vo3-460__27430_zoom.jpg"><img
class="size-medium wp-image-60" title="Linksys E3000 dual-band wireless router" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/e3000-1vo3-460__27430_zoom-300x225.jpg" alt="Linksys E3000 dual-band wireless router" width="300" height="225" /></a><p
class="wp-caption-text">Linksys E3000 dual-band wireless router</p></div><p>Perhaps you have decided that you need a feature that your old wireless router doesn&#8217;t support: How about the ability to provide a VPN service to access your home network securely from remote? Or maybe a guest network for those relatives coming over for Memorial day weekend? Wouldn&#8217;t IPv6 support come handy for this upcoming World IPv6 day event?. Or maybe you want to upgrade your home network to make your media server stutter free (300-450 Mbps would be cool, wouldn&#8217;t it?). In any case, running an alternative third-party firmware can provide you with a plethora of additional options at no cost (well, if you feel generous enough you could donate some money to one of these projects, but philanthropy is not cost, isn&#8217;t it?) and infuse new life into your older wireless router. In many cases, a third-party firmware is also more reliable, less buggy and runs smoother than the original vendor firmware included with the device.</p><div
id="attachment_61" class="wp-caption alignleft" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/OpenWRT.png"><img
class="size-medium wp-image-61" title="OpenWRT Backfire release" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/OpenWRT-300x143.png" alt="OpenWRT Backfire release" width="300" height="143" /></a><p
class="wp-caption-text">OpenWRT Backfire release</p></div><p>There are several projects focused on building quality third-party software for wireless routers; some of the most well known and active projects are <a
href="http://www.dd-wrt.com" target="_blank">DD-WRT</a>, <a
href="http://openwrt.org/" target="_blank">OpenWRT</a>, <a
href="http://www.polarcloud.com/tomato" target="_blank">Tomato</a> and <a
href="http://www.sveasoft.com/" target="_blank">Sveasoft</a>. While the last two projects only support older wireless routers <a
href="http://en.wikipedia.org/wiki/Linksys_WRT54G_series" target="_blank">(WRT54G</a> and family), <a
href="http://www.dd-wrt.com/site/support/router-database" target="_blank">DD-WRT</a> and <a
href="http://wiki.openwrt.org/toh/start" target="_blank">OpenWRT</a> are constantly adding new routers to their lines and have a very active community. One caveat, Sveasoft uses a business model that requires a current subscription before you can try their latest firmware versions (and the older/stable versions tend to be quite limited), so I advice you to look to the other three projects first and resort to Sveasoft if none of them work for you.</p><div
id="attachment_62" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/DD-WRT.png"><img
class="size-medium wp-image-62 " title="DD-WRT web interface" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/DD-WRT-300x245.png" alt="DD-WRT web interface" width="300" height="245" /></a><p
class="wp-caption-text">DD-WRT web interface</p></div><p>Although these projects are all based on <a
href="http://en.wikipedia.org/wiki/Linux" target="_blank">GNU/Linux</a>, there are differences that go beyond the surface of the <a
href="http://en.wikipedia.org/wiki/Graphical_user_interface" target="_blank">graphical user interface</a> (GUI). The DD-WRT software tends to have a more thorough and consistent web based user interface, which minimizes the need for configuration through the <a
href="http://en.wikipedia.org/wiki/Command-line_interface" target="_blank">command line interface</a> (CLI). Support is usually very good through the DD-WRT forums, either from the active community or the developers themselves; documentation is also very high quality and gets regularly updated. DD-WRT also offers a good set of newbie friendly additional packages (<a
href="http://www.dd-wrt.com/wiki/index.php/Optware%2C_the_Right_Way" target="_blank">Optware</a>) to introduce additional features in a way that is mostly plug and play.</p><div
id="attachment_63" class="wp-caption alignleft" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/OpenWRT-console.png"><img
class="size-medium wp-image-63" title="OpenWRT console" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/OpenWRT-console-300x188.png" alt="OpenWRT console" width="300" height="188" /></a><p
class="wp-caption-text">OpenWRT console</p></div><p>OpenWRT is more oriented towards the power user. Although the web interface (<a
href="http://luci.subsignal.org/" target="_blank">LuCI</a>) is quite complete, advanced functionality can only be achieved using the command line interface; the filesystem layout is more in line with the standard <a
href="http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/Linux-Filesystem-Hierarchy.html" target="_blank">Linux Filesystem Hierarch</a>y so Linux folks should feel at home. OpenWRT has a large library of additional packages which can be installed directly from the central repository, either by using the opkg command line utility or through the LuCI web interface. <a
href="http://wiki.openwrt.org/doc/start" target="_blank">Documentation</a> is also good, with a substantial list of recipes and howtos guiding the users through basic and advanced topics, with an emphasis on command line configuration. On the downside, questions in the OpenWRT project forums are sometimes left unanswered, especially if they are not good questions, and there is typically less tolerance for newbies (see this <a
href="https://openwrt.org/support.html" target="_blank">document</a> before asking for support) than in the DD-WRT project. However, if IPv6 support is a must and you don&#8217;t want the hassle of compiling your own ip6tables kernel modules, OpenWRT is your best option as these kernel modules are included in the standard backfire release; compiling any kernel module for a 2.6 DD-WRT kernel can be tricky if the version of the svn source code that your are using to build the kernel modules doesn&#8217;t match the exact svn version that you are running in your router (hint: 2.6 kernels require exact module symbol version matching in order to load the module, and the busybox insmod command seems not to allow to force modules without module symbol versions, giving back an &#8220;invalid module format&#8221; message).</p><div
id="attachment_65" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/netgear-wndr3700.jpg"><img
class="size-full wp-image-65" title="Netgear WNDR3700" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/netgear-wndr3700.jpg" alt="Netgear WNDR3700" width="300" height="300" /></a><p
class="wp-caption-text">Netgear WNDR3700</p></div><p>If you haven&#8217;t purchased your router yet, you should stop now and head over to the supported hardware lists from <a
href="http://www.dd-wrt.com/site/support/router-database" target="_blank">DD-WRT</a> and <a
href="http://wiki.openwrt.org/toh/start" target="_blank">OpenWRT</a>; and since making head or tails of such a long list can be difficult, I&#8217;ll give you a few tips. If you&#8217;re looking for the fastest supported router that can do simultaneous dual band and operate on a/b/g/n, then look no more: the Netgear WNDR3700 is probably the best option there (but make sure that the packaging of the unit you are buying indicates that it contains a wndr3700<strong>v2</strong>, as there have been reports of dead 2.4Ghz radios with some models of the first version running under DD-WRT). It is Atheros based, and with a very fast CPU, 8MB of flash and 64MB of RAM it is the clear performance king among supported routers. A close second choice would be the Linksys E3000 (with a slower Broadcom CPU, but otherwise similar features). Each one of these routers will set you back around $130-150 at current retail prices but considering that a wireless routers should last you for a good two to four years, you wouldn&#8217;t probably set for less. Do not select the Netgear WNDR4000 nor the Linksys E4200: these models are still not supported by either project, and although there may be ongoing efforts to support them, there is no guarantee that they will be supported at all.</p><div
id="attachment_64" class="wp-caption alignleft" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/WRT54GS.jpg"><img
class="size-full wp-image-64 " title="Linksys wrt54gs" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/WRT54GS.jpg" alt="Linksys wrt54gs" width="300" height="300" /></a><p
class="wp-caption-text">Linksys wrt54gs</p></div><p>If you plan on reusing existing hardware instead, and you have an older Linksys WRT54g/gs or similar device, this is your lucky day: every version has excellent support from DD-WRT (except for version 7, which is not and will probably never be supported). Tomato, OpenWRT and Sveasoft have all also good support for these devices, particularly for versions 1 through 4.</p><p>In any case, the list of supported devices by OpenWRT and DD-WRT covers hundreds of models across dozens of vendors. Chances are that your existing wireless router is supported by one of these projects and, if not, you can probably pick up an older/used supported unit for just a few dollars.</p><p>Depending on the specific router, the steps to upload the third-party software can involve a combination of either the web interface and/or tftp from a command line prompt. In very rare cases you may need a <a
href="http://en.wikipedia.org/wiki/Jtag" target="_blank">JTAG</a> cable either to install the new software or to de-brick a modified router. I recommend that you stay away from any routers that require creating and soldering a JTAG cable for a third party software to work.</p><p>Before you start the process of deploying a third party software to your wireless router, you should ensure that you have a good backup of the settings for your network, including your PPPoE passwords, IP addresses and static DHCP leases, port forwards (in case you need support for incoming calls on a SIP phone, etc.) and recursive DNS settings if these are not dynamically configured by the provider. Some routers also have specific flash partitions containing calibration data, required if you want to ensure that your radios come back alive after a catastrophic flash overwrite or wipe, so go ahead and backup your caldata too (this is especially true for the WNDR3700). Information on how to backup your caldata is available on the DD-WRT forums.</p><p>After you covered these initial steps, head over to the particular project for the specific documentation on how to install that third party software on your device. For the OpenWRT project, you can use the <a
href="http://wiki.openwrt.org/toh/start" target="_blank">hardware support table</a> to identify your device and access the documentation for it. For the DD-WRT project, there is a <a
href="http://www.dd-wrt.com/wiki/index.php/Supported_Devices" target="_blank">similar table</a> but you&#8217;re probably better off by looking it up in the <a
href="http://www.dd-wrt.com/site/support/router-database" target="_blank">hardware database</a>.</p><p>Once you have installed the new software, sit back, relax and make yourself familiar with the myriad of options and open possibilities. Now it&#8217;s time to configure your router, enable those functions that were unavailable with the stock firmware, test everything and possibly donate to the project of your choice to demonstrate your appreciation.</p><p>Above all, enjoy and happy hacking!</p><p>&nbsp;</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/05/15/howto-linux-on-your-wireless-router/feed/</wfw:commentRss> <slash:comments>14</slash:comments> </item> <item><title>World IPv6 day @ home</title><link>http://www.flaviostechnotalk.com/2011/05/11/world-ipv6-day/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=world-ipv6-day</link> <comments>http://www.flaviostechnotalk.com/2011/05/11/world-ipv6-day/#comments</comments> <pubDate>Wed, 11 May 2011 23:32:33 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[IPv6]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[howto]]></category> <category><![CDATA[World IPv6 day]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=45</guid> <description><![CDATA[In case you haven&#8217;t heard about it yet, the Internet Society (ISOC) is planning an IPv6 &#8220;test flight&#8221; with some large organizations, on June 8th, 2011. The event will last for 24 hours and is intended to raise awareness about &#8230; <a
href="http://www.flaviostechnotalk.com/2011/05/11/world-ipv6-day/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<div
id="attachment_47" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/600px-Ipv4-exhaust.svg_.png"><img
class="size-medium wp-image-47" title="IPv4 address exhaustion from 1995 to 2011. Graph shows number of available &quot;/8&quot; blocks, each containing 16777216 addresses. From Wikipedia." src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/600px-Ipv4-exhaust.svg_-300x240.png" alt="" width="300" height="240" /></a><p
class="wp-caption-text">IPv4 address exhaustion from 1995 to 2011. Graph shows number of available &quot;/8&quot; blocks, each containing 16777216 addresses. From Wikipedia.</p></div><p>In case you haven&#8217;t heard about it yet, the <a
href="http://www.isoc.org/" target="_blank">Internet Society</a> (ISOC) is planning an <a
href="http://en.wikipedia.org/wiki/Ipv6" target="_blank">IPv6</a> &#8220;test flight&#8221; with some large organizations, on June 8th, 2011. The event will last for 24 hours and is intended to raise awareness about the impending migration to IPv6.</p><p>This is by no means the &#8220;launch of IPv6&#8243; (IPv6 has been available for over a decade since the early days of the <a
href="http://en.wikipedia.org/wiki/6bone" target="_blank">6bone</a>). Instead, this is the opportunity for some large-scale service and content providers to test their IPv6 readiness with a sizable audience over a 24 hours period. Although not the first of its kind, since this event is sponsored by the ISOC and supported by several core content and network providers (some of the participants are big names such as <a
href="http://www.google.com" target="_blank">Google</a>, <a
href="http://www.yahoo.com" target="_blank">Yahoo</a>, <a
href="http://www.akamai.com" target="_blank">Akamai</a> and <a
href="http://www.facebook.com" target="_blank">Facebook</a>) it has a good chance of becoming the largest IPv6 awareness raising event in history. It is no coincidence that IANA has just allocated the last few available IPv4 blocks to the regional registries, marking the depletion of the IPv4 space (at least when it comes to global allocations, but regional allocation exhaustion will follow soon).</p><div
id="attachment_48" class="wp-caption alignleft" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/760px-Ipv6_address_leading_zeros.svg_.png"><img
class="size-medium wp-image-48" title="Decomposition of an IPv6 address into its binary form. From Wikipedia." src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/760px-Ipv6_address_leading_zeros.svg_-300x177.png" alt="" width="300" height="177" /></a><p
class="wp-caption-text">Decomposition of an IPv6 address into its binary form. From Wikipedia.</p></div><p>At this point, you may be wondering how to participate. It is quite simple: just ask your network provider to supply you with IPv6 and you should be all set. You wish it was so simple! Unfortunately the majority of the network providers around the world are still not ready to provide a so-called dual stack (IPv4/IPv6) connectivity to their consumers, so this approach is probably not viable for you (unless you&#8217;re part of the elite able to receive native IPv6 service as we speak). Instead, you would probably need to either ask your provider if they have an alternative service for IPv6 (<a
href="http://en.wikipedia.org/wiki/6rd" target="_blank">6rd</a> comes to mind) or just set up an IPv6 over IPv4 tunnel from one of the IPv6 tunnel brokers (there are many and they tend to be free, for now). Some of these providers offer <a
href="http://en.wikipedia.org/wiki/6to4" target="_blank">6to4</a> as the protocol to deliver these IPv6 packets up to your IPv4 destination. <a
href="http://en.wikipedia.org/wiki/Teredo_tunneling" target="_blank">Teredo</a> is another mechanism to provide IPv6 connectivity over IPv4 networks, but only provides access to a single endpoint (your windows workstation, for example) and not the entire network, as 6to4 can do with a /48 prefix, for example.</p><div
id="attachment_49" class="wp-caption alignright" style="width: 198px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/homepage-smallcert.png"><img
class="size-full wp-image-49 " title="HE sample IPv6 certificate." src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/homepage-smallcert.png" alt="HE sample IPv6 certificate" width="188" height="147" /></a><p
class="wp-caption-text">HE sample IPv6 certificate</p></div><p>There are several IPv6 tunnel brokers, but two of the best known are <a
href="http://www.he.net" target="_blank">Hurricane Electric</a> (HE) and <a
href="http://www.sixxs.net" target="_blank">SixXS</a> which have been providing free IPv6 tunneling services for over a decade. In the case of Hurricane Electric, which is the one that I have the most experience with (used them back in the mid nineties when 6bone was the sandbox to play in), you need to go through a simple registration process at their <a
href="http://tunnelbroker.net/" target="_blank">tunnel broker portal</a>; the whole tunnel creation process is self managed and can be completed in a matter of minutes (it will take more time to configure your endpoint than to configure theirs). What makes HE even more fun is that you can go through their free IPv6 <a
href="http://ipv6.he.net/certification/" target="_blank">certification</a> to demonstrate your IPv6 knowledge and the IPv6 capabilities of a domain that you register for this certification process.</p><p>The next thing that you need to decide is where to terminate the tunnel on your side. Although you could terminate it directly on a host (Windows, Linux or BSD workstation, for example), it would probably be more useful to do so at your network external router (assuming that you have one). Remember that although your regular ISP may only assign you one IP address forcing you to play <a
href="http://en.wikipedia.org/wiki/Network_address_translation" target="_blank">Network Address Translation</a> (NAT) tricks to work around the fact that your other computers will only have private IP addresses (assigned according to <a
href="http://tools.ietf.org/html/rfc1918" target="_blank">RFC 1918</a>), IPv6 has no such limitations (and in fact discourages any network address translation). Any tunnel broker will assign you a whole /64 segment (allowing for millions of hosts in a single network segment) and most (like HE, for example) will even assign /48 segments (allowing for 65536 networks with millions of hosts each).</p><p>Since there are many available resources when it comes to configuring IPv6 in your devices, and most (all) modern operating systems have the ability to use and route IPv6 addresses, it would be silly to describe each one in detail here too.</p><p>However, I maybe able to suggest things to make this undertaking more fruitful. If you want to truly learn IPv6 in this process, I recommend that you configure your home router as the endpoint for the tunnel, and that you set up a <a
href="http://www.ietf.org/rfc/rfc4241.txt" target="_blank">dual stack</a> IPv4/IPv6 lan segment for all your machines to have access to IPv6 natively. It would also be useful to set up a couple of servers (HTTP and DNS, for example) in one of those machines to get used to some of the configuration differences between IPv4 and IPv6. To really go the extra mile, you could also try some multicast services (hint, there is no <a
href="http://www.cisco.com/en/US/tech/tk828/technologies_white_paper09186a0080203e90.shtml" target="_blank">IGMP in IPv6</a>, but<a
href="http://www.ietf.org/rfc/rfc2710.txt" target="_blank"> ICMPv6</a> performs Multicast Listener Discovery quite well) and, why not, do some packet captures and understand how <a
href="http://www.tcpipguide.com/free/t_IPv6DatagramSizeMaximumTransmissionUnitMTUFragment-4.htm" target="_blank">packet fragmentation</a> works a bit different in IPv6.</p><p>What is important to remark, in any case, is that your run of the mill IPv4 firewall will not have you covered. You will need to explicitly configure IPv6 rules (ip6tables in Linux, for example) to block or allow specific IPv6 traffic. Moreover, the 6to4 tunnel itself (if you decide to go this route) uses <a
href="http://www.cisco.com/web/about/ac123/ac147/ac174/ac197/about_cisco_ipj_archive_article09186a00800c830a.html" target="_blank">IPv4 Protocol 41</a> to encapsulate the IPv6 packet into an IPv4 packet, so any firewall rules must be applied at the endpoint of the tunnel, after extracting the IPv6 packet from their encapsulation.</p><p>If your Internet router runs any flavor of Linux (OpenWRT, DD-WRT, etc.) and you are not intending to run any servers on your network, then you just may need a few rules to block any unsolicited communication from the outside over IPv6 (slightly modified from the OpenWRT documentation) while allowing your hosts full access to the Internet:</p><blockquote><p># start with a clean slate</p><p>ip6tables -F</p><p># allow icmpv6</p><p>ip6tables -I INPUT -p ipv6-icmp -j ACCEPT</p><p>ip6tables -I OUTPUT -p ipv6-icmp -j ACCEPT</p><p>ip6tables -I FORWARD -p ipv6-icmp -j ACCEPT</p><p># allow loopback</p><p>ip6tables -A INPUT -i lo -j ACCEPT</p><p>ip6tables -A OUTPUT -o lo -j ACCEPT</p><p># allow anything out to the tunnel</p><p>ip6tables -A OUTPUT -o 6in4-henet -j ACCEPT</p><p># allow LAN</p><p>ip6tables -A INPUT -i br-lan -j ACCEPT</p><p>ip6tables -A OUTPUT -o br-lan -j ACCEPT</p><p># drop packets with a type 0 routing header</p><p>ip6tables -A INPUT -m rt &#8211;rt-type 0 -j DROP</p><p>ip6tables -A OUTPUT -m rt &#8211;rt-type 0 -j DROP</p><p>ip6tables -A FORWARD -m rt &#8211;rt-type 0 -j DROP</p><p># allow link-local</p><p>ip6tables -A INPUT -i br-lan -s fe80::/10 -j ACCEPT</p><p># allow multicast</p><p>ip6tables -A INPUT -s ff00::/8 -j ACCEPT</p><p>ip6tables -A OUTPUT -s ff00::/8 -j ACCEPT</p><p># allow forwarding</p><p>ip6tables -A FORWARD -i br-lan -j ACCEPT</p><p>ip6tables -A FORWARD -m state &#8211;state ESTABLISHED,RELATED -j ACCEPT</p><p># forward ident requests</p><p>ip6tables -A FORWARD -p tcp &#8211;dport 113 -j ACCEPT</p><p># default policy&#8230;</p><p>ip6tables -P INPUT DROP</p><p>ip6tables -P FORWARD DROP</p><p>ip6tables -P OUTPUT DROP</p></blockquote><p>If you instead plan on running a web server or a DNS server, you&#8217;ll need to add the proper ALLOW rules in the FORWARD chain (which should be  easy to do based on the example above).</p><p>So what is next after you have configured your home network to route IPv6, and that you officially declare yourself ready for World IPv6 day (don&#8217;t forget stocking some beer and snacks for the celebration, of course)? Well, you can go ahead and follow the <a
href="http://ipv6.he.net/certification/" target="_blank">HE certification link</a> for your bragging rights and above all, enjoy your World IPv6 day @ home!</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/05/11/world-ipv6-day/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Of OpenBSD 4.9, Linux and licenses&#8230;</title><link>http://www.flaviostechnotalk.com/2011/05/06/of-openbsd-4_9-linux-and-licenses/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=of-openbsd-4_9-linux-and-licenses</link> <comments>http://www.flaviostechnotalk.com/2011/05/06/of-openbsd-4_9-linux-and-licenses/#comments</comments> <pubDate>Fri, 06 May 2011 21:39:15 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[Licenses]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[OpenBSD]]></category> <category><![CDATA[Opensource]]></category> <category><![CDATA[Operating Systems]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=36</guid> <description><![CDATA[Roughly 20 years ago, around the time the first versions of Linux started seeing the light, a couple other efforts in the Opensource Operating System arena were underway. On one side, the mythical GNU own kernel (HURD) was discussed about (two &#8230; <a
href="http://www.flaviostechnotalk.com/2011/05/06/of-openbsd-4_9-linux-and-licenses/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<div
id="attachment_39" class="wp-caption alignleft" style="width: 74px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/boxes-redrawn.png"><img
class="size-full wp-image-39" title="GNU Hurd logo" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/boxes-redrawn.png" alt="" width="64" height="64" /></a><p
class="wp-caption-text">GNU Hurd logo</p></div><p>Roughly 20 years ago, around the time the first versions of Linux <a
href="https://netfiles.uiuc.edu/rhasan/linux/" target="_blank">started seeing the light</a>, a couple other efforts in the Opensource Operating System arena were underway. On one side, the mythical GNU own kernel (<a
href="http://www.gnu.org/software/hurd/hurd.html" target="_blank">HURD</a>) was discussed about (two decades later, we have just started to see one or two viable <a
href="http://www.archhurd.org/" target="_blank">distributions</a> based on the HURD kernel); on the other hand, the first versions of the Opensource derivatives from 386BSD (<a
href="http://www.netbsd.org/" target="_blank">NetBSD</a>, <a
href="http://www.freebsd.org/" target="_blank">FreeBSD</a> and <a
href="http://www.openbsd.org/" target="_blank">OpenBSD</a>)  were released.</p><div
id="attachment_38" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/Puffer_fish.jpg"><img
class="size-medium wp-image-38" title="Puffer fish, OpenBSD project mascot" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/Puffer_fish-300x206.jpg" alt="" width="300" height="206" /></a><p
class="wp-caption-text">Puffer fish, OpenBSD project mascot</p></div><p>OpenBSD, the <a
href="http://en.wikipedia.org/wiki/OpenBSD#History_and_popularity" target="_blank">&#8220;youngest&#8221;</a> member of the BSD family has just released its <a
href="http://www.openbsd.org/49.html" target="_blank">latest version</a>. The OpenBSD project, led by <a
href="http://en.wikipedia.org/wiki/Theo_de_Raadt" target="_blank">Theo De Raadt</a>, one of the co-founders of the NetBSD project, focuses on proactive security, code correctness and portability. Some of the software components created by the OpenBSD team, such as OpenSSH, have transcended beyond OpenBSD and have been adopted at large by other Operating Systems.</p><p>Despite having a relatively modest team of developers, the OpenBSD project has managed to release a minor version <a
href="http://www.youtube.com/watch?v=i7pkyDUX5uM" target="_blank">exactly every 6 months</a> for many years. Many of these minor releases only differentiate from the previous release by a few new features and/or drivers and a slew of bugfixes (for example, some of the main new features of 4.9 are read only access to NTFS filesystems in the default kernels, SMP kernels can now boot on machines with up to 64 cores, there can be more than 4000 processes in x86 architectures and OpenSSH 5.8 has been included).</p><div
id="attachment_41" class="wp-caption alignleft" style="width: 235px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/newrack.jpg"><img
class="size-medium wp-image-41 " title="OpenBSD development/testing lab at Theo's basement" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/newrack-225x300.jpg" alt="" width="225" height="300" /></a><p
class="wp-caption-text">OpenBSD development/testing lab at Theo&#39;s basement</p></div><p>What are the key features of OpenBSD? Above all, it&#8217;s simple in the most purist BSD/Unix style and makes all its source code freely available (it is Opensource after all, what would you expect?). Special care is put on code correctness and security, including bug fixes and even specific functions (<a
href="http://www.gratisoft.us/todd/papers/strlcpy.html" target="_blank">strlcat and strlcopy</a> are good examples in the string manipulation arena) to prevent common coding mistakes. It has a good set of network tools (including dynamic routing protocols support through <a
href="http://www.openbgpd.org/" target="_blank">openbgpd</a> and <a
href="http://en.wikipedia.org/wiki/OpenOSPFD" target="_blank">openospfd</a>), a solid packet filtering implementation through <a
href="http://www.openbsd.org/faq/pf/" target="_blank">pf</a> and a reliable redundancy protocol (<a
href="http://www.openbsd.org/faq/faq6.html#CARP" target="_blank">CARP</a>). I also offers a sizable library of binary <a
href="http://www.openbsd.org/faq/faq15.html#PkgMgmt" target="_blank">packages</a> and a larger set of available applications in source code form through their <a
href="http://www.openbsd.org/faq/faq15.html#Ports" target="_blank">ports</a> repository.</p><p>Although OpenBSD and Linux are both Opensource, there are substantial differences in the way they are licensed. The <a
href="http://en.wikipedia.org/wiki/BSD_licenses" target="_blank">BSD license</a> (under which OpenBSD is distributed) makes source code available to anyone willing to use it, sell it or create derivatives, either for commercial or non-commercial use. There is no obligation to redistribute the source code for any modification, and the only condition is for the original copyright notice to be included with the binary code (the distributor is not bound by any specific license). The <a
href="http://www.gnu.org/licenses/gpl.html" target="_blank">GPL license</a> (under which Linux is distributed) makes source code available to anyone willing to use it, sell it or create derivatives, either for commercial or non-commercial use, with the obligation to also re-distribute the source code for the derivatives and to provide them under the same license.</p><div
id="attachment_43" class="wp-caption alignleft" style="width: 254px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/Richard_Stallman.jpeg"><img
class="size-full wp-image-43 " title="&lt;a href=&quot;http://en.wikipedia.org/wiki/Richard_Stallman&quot;&gt;Richard Stallman&lt;/a&gt;, head of the Free Software Foundation, house of the GNU project" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/Richard_Stallman.jpeg" alt="" width="244" height="300" /></a><p
class="wp-caption-text">Richard Stallman, head of the Free Software Foundation, house of the GNU project</p></div><p>While the general consensus is that BSD licenses are &#8220;less restrictive&#8221; (they don&#8217;t impose a particular license to the entity distributing derivatives), it all depends on whose rights are being considered: as a company deriving a commercial and closed source product from a BSD licensed code base, the BSD license is certainly less restrictive. But as the consumer who is acquiring and using that product <em>without the rights to access the source code for the modifications performed by that company</em>, the consequences of the BSD license in the first place are an effective further restriction of the consumer rights, <em>because derivatives can be distributed under any license including proprietary closed source models</em>. In the spirit of full disclosure, as a consumer I always prefer Opensource, and a GPL license always guarantees that. BSD licensing supporters (and GPL detractors) argue that GPL impairs the ability for businesses to make money off their software (as they need to release the source code for the modifications and can not impose a license more restrictive than the GPL license that they received).</p><p>Which license is better? I guess it all depends: if you are developer expecting to get funding (mostly through donations) from your direct users -especially corporate ones-, and you don&#8217;t care about the end user access to the source code for the products that they use, then a BSD License may be a good choice.  If, on the other hand, you sit on the idealist side and want to ensure that nobody can restrict the rights of the end users, GPL is the clear winner.</p><p>When comparing the evolution in market share of Linux and OpenBSD, two Operating systems that were born around the same time, a question comes to mind: why is there such a difference in market penetration? Linux, on one side of the spectrum, with a License that apparently impairs commercial venues, has enticed companies and organizations to adopt and support it under varying commercial models, while the BSD derivatives (FreeBSD, OpenBSD and NetBSD), with a larger history and an allegedly more commercial friendly license haven&#8217;t been as successful to gather a large installed base and widespread adoption.</p><div
id="attachment_40" class="wp-caption alignright" style="width: 263px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/Linux-penguin-huge-704931.jpg"><img
class="size-medium wp-image-40" title="Tux, the Linux mascot" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/Linux-penguin-huge-704931-253x300.jpg" alt="" width="253" height="300" /></a><p
class="wp-caption-text">Tux, the Linux mascot</p></div><p>This difference probably obeys to several reasons. One of the possibly most clearly defined is the eclectic leadership style of <a
href="http://en.wikipedia.org/wiki/Linus_Torvalds" target="_blank">Linus Torvalds</a> who tends to choose practical over doctrine (in the BSD world in general there is normally a higher adherence to rules on how things should be, based on the &#8220;BSD tradition&#8221;).</p><p>The GPL itself seems to be (despite the opinions of some of its detractors) another important reason: if consumers seem to prefer GPL (and consumers are not only you and me, but also large companies and organizations) because they have access to the source code, why wouldn&#8217;t companies (developers, integrators, resellers, etc.) make a business out of it? In addition to this, any company releasing an Opensource product wants to reasonably ensure that they will have access to the source code of any potential competitive product derived from their code base. In this sense, GPL levels the field by giving everyone access to everyone else&#8217;s source code.</p><p>A third important reason goes along the <a
href="http://en.wikipedia.org/wiki/Self-fulfilling_prophecy" target="_blank">&#8220;self-fulfilling prophecy&#8221;</a>: as soon as the development community grows enough to reach and exceed the critical mass, the accelerated development pace allows for a continuous and significant amount of contributions in every imaginable direction; the widespread adoption also guarantees innumerable use cases and thorough testing across diverse hardware; the commercial focus provides for code auditing and general security improvements, and the use by Colleges and Government Agencies supplies interesting domain specific features (take <a
href="http://www.nsa.gov/research/selinux/" target="_blank">SELinux</a>, for example).</p><p>So, now that OpenBSD 4.9 is out, should you consider migrating to it? Well, that depends. If you are already a user of OpenBSD and are still on an older version, I would say: why not? You get a few new features, some additional drivers and a ton of bug fixes. If you have been looking into OpenBSD before and you decided that it wasn&#8217;t for you, unless your only reason was the inability to access an NTFS partition (you can&#8217;t be serious!) or running more than 4000 processes on an x86 server, then you should still be looking somewhere else. If you are a Unix lover and have never been interested in OpenBSD before, maybe you should consider taking it for a spin on a Virtual Machine or an older piece of hardware. It is a reliable, secure, traditional in the BSD sense and simple Operating System, ideal for a firewall (or maybe two thanks to <a
href="http://www.openbsd.org/faq/pf/carp.html" target="_blank">CARP</a>), a SOHO router or even an unpretentious workstation.</p><p>&nbsp;</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/05/06/of-openbsd-4_9-linux-and-licenses/feed/</wfw:commentRss> <slash:comments>21</slash:comments> </item> <item><title>Is there a blue pill for Qubes OS?</title><link>http://www.flaviostechnotalk.com/2011/05/01/is-there-a-blue-pill-for-qubes-os/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=is-there-a-blue-pill-for-qubes-os</link> <comments>http://www.flaviostechnotalk.com/2011/05/01/is-there-a-blue-pill-for-qubes-os/#comments</comments> <pubDate>Sun, 01 May 2011 08:48:05 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[Distributions]]></category> <category><![CDATA[Information Security]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[Opensource]]></category> <category><![CDATA[Virtualization]]></category> <category><![CDATA[Containers]]></category> <category><![CDATA[Intel TXT]]></category> <category><![CDATA[Joanna Rutkowska]]></category> <category><![CDATA[Qubes OS]]></category> <category><![CDATA[Security]]></category> <category><![CDATA[virtualization]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=27</guid> <description><![CDATA[Those who regularly follow the Black Hat briefings probably remember Joanna Rutkowska who presented a novel attack against Windows Vista (and any Operating System running on an x86 architecture, in general). She was the first researcher to demonstrate a piece of &#8230; <a
href="http://www.flaviostechnotalk.com/2011/05/01/is-there-a-blue-pill-for-qubes-os/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Those who regularly follow the Black Hat briefings probably remember <a
href="http://en.wikipedia.org/wiki/Joanna_Rutkowska">Joanna Rutkowska</a> who presented a novel attack against Windows Vista (and any Operating System running on an x86 architecture, in general). She was the first researcher to demonstrate a piece of malware (<a
href="http://en.wikipedia.org/wiki/Blue_Pill_(malware)" target="_blank">bluepill</a>) that could run in root or host mode in a current x86 architecture and push the Operating System one layer (ring) below. This technique makes the malware extremely difficult to detect (there are methods to detect that an Operating System has been virtualized, but it would be close to impossible to differentiate a Xen or VMWare hypervisor from bluepill). The name &#8220;Bluepill&#8221; is indeed quite appropriate as the operating systems (and any anti-malware protection that it could have) continues to run blissfully after taking the &#8220;<a
href="http://en.wikipedia.org/wiki/Redpill_and_bluepill" target="_blank">blue pill</a>&#8220;, while its integrity is compromised (&#8220;<a
href="http://www.imdb.com/title/tt0133093/quotes" target="_blank">Neo&#8230; You take the blue pill and the story ends. You wake up in your bed and believe whatever you want to believe</a>&#8220;).</p><p>A few years passed and Joanna created a company called <a
href="http://www.invisiblethingslab.com" target="_blank">Invisible Things Labs</a> to develop a secure Operating System (<a
href="http://qubes-os.org" target="_blank">Qubes OS</a>) based on isolation and containment. Joanna herself <a
href="http://www.eweek.com/c/a/Security/Rutkowska-AntiVirus-Software-Is-Ineffective/" target="_blank">commented</a> that she doesn&#8217;t believe in antivirus and that she doesn&#8217;t run one herself. While traditional antivirus are undeniably better than nothing, due to the fact that they rely on pattern matching against <em>known </em>threats they are always one step behind the malware authors. Nowadays, antivirus vendors started to realize this fact and are pursuing other paradigms to improve their effectiveness (behavioral and reputation based systems, for example).</p><p>Qubes OS comes from an elegant <a
href="http://qubes-os.org/files/doc/arch-spec-0.3.pdf" target="_blank">concept</a>: if you can isolate functional components within disposable containers, and you can separate those components that can be <em>tainted</em> through their interaction with the outside world from the core subsystems, you stand a good chance to preserve the integrity and security of the base Operating System at the possible expense of needing to jump through some hoops to move data around the system. All in all it sounds like a good proposition if it can be demonstrated to be practical.</p><div
id="attachment_28" class="wp-caption alignright" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/qubes-partitioning-data-flows.jpg"><img
class="size-medium wp-image-28" title="Qubes partitioning - data flows" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/qubes-partitioning-data-flows-300x225.jpg" alt="" width="300" height="225" /></a><p
class="wp-caption-text">How Joanna partitions her digital life (from the Invisible Things Labs blog)</p></div><p>In its current inception, Qubes OS is based on Fedora core 14, and uses a Xen hypervisor to provide isolation across security domains. Domain 0 is the administrative and management domain and has no networking at all (quite clever!), networking is isolated in its own domain as has a relatively high chance of getting compromised, and user applications can run in their own domains (i.e. a random browsing session running in its own domain can never compromise a secure home banking browsing session). Joanna <a
href="http://theinvisiblethings.blogspot.com/2011/03/partitioning-my-digital-life-into.html" target="_blank">describes</a> in her own blog how she partitions her digital life across multiple security domains as an example of a possible layout.</p><p>The selection of Xen over KVM/Qemu obeys to the fact that it would be very hard to security proof the entire linux kernel and associated utilities to prevent any &#8220;leakage&#8221; or compromise across virtualized containers, but the codebase for Xen is quite compact and easy to audit.</p><p>The current version of Qubes OS is <a
href="http://wiki.qubes-os.org/trac/wiki/InstallationGuide" target="_blank">Beta 1</a> and was released last March. While it&#8217;s far from being ready for general consumption (I have tried it in a couple of systems and got it to different running stages, but none of them could be really considered ready for general use), it provides for a good showcase of what this technology is capable of. Essentially, the user logs into a graphical environment, can set up different security domains based on an existing template (provided by the system) and label them with colors indicating their security/trust level (from red to black). Regardless of the color, the security domains are isolated among each other.</p><p>As it stands now, Qubes OS can run only Linux applications, but there is nothing inherently preventing it from running MS Windows applications (probably a must for adoption in corporate environments) so this could be a feature expected to come up in future releases. In addition to this, data flows in Qubes OS seem to be currently loosely defined or discretionary at best (it is up to the user to move data among domains and there are no hard rules of what can and cannot be accessed and/or copied to/from different level security domains). One could expect some sort of mandatory access control that could help implement some of the formal security models (Bell-LaPadula, Biba, Clark-Wilson, etc.) to appear in future releases, in order to foster Corporate and possibly Government adoption, particularly in multi-user environments.</p><div
id="attachment_29" class="wp-caption alignleft" style="width: 310px"><a
href="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/techrefresh-info-txtfull.gif"><img
class="size-medium wp-image-29 " title="techrefresh-info-txtfull" src="http://www.flaviostechnotalk.com/wp-content/uploads/2011/05/techrefresh-info-txtfull-300x227.gif" alt="" width="300" height="227" /></a><p
class="wp-caption-text">Intel Trusted Execution Technology (from Intel&#39;s website)</p></div><p>From a security standpoint, of course Qubes OS is still susceptible to attacks, and the most radical being Bluepill itself, which could be preventing by resorting to <a
href="http://www.intel.com/technology/malwarereduction/index.htm" target="_blank">Intel Trusted Execution Technology</a> (TXT). Traditional malware, albeit not as frequent in Linux environments, could exploit the exposed security domains, but this should not lead to the compromise of the integrity of the entire system thanks to the isolation among domains. And, of course, attacks to the user (social engineering or otherwise) are still effective as only a discretionary security model is implemented in Qubes as of today.</p><p>All in all, Qubes OS is a new and refreshing approach to system security. It is based on a few sound and well proven security principles: concise and auditable code at the core/hypervisor, containment and isolation at the heart (a compromised domain can be disposed of without affecting the integrity of the complete system) and an intuitive graphical interface to allow users to model the segmentation based on their needs. Where it still falls short is in its ability to protect the users from themselves, and history has proven maybe too well that end users can be their worst enemies.</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/05/01/is-there-a-blue-pill-for-qubes-os/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Modern Linux distributions and their innate feature creep</title><link>http://www.flaviostechnotalk.com/2011/04/29/modern-linux-distributions-and-their-innate-feature-creep/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=modern-linux-distributions-and-their-innate-feature-creep</link> <comments>http://www.flaviostechnotalk.com/2011/04/29/modern-linux-distributions-and-their-innate-feature-creep/#comments</comments> <pubDate>Fri, 29 Apr 2011 04:13:03 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[Distributions]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[Bloatware]]></category> <category><![CDATA[Feature creep]]></category> <category><![CDATA[Featurism]]></category> <category><![CDATA[Linux History]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=24</guid> <description><![CDATA[Ubuntu 11.04 has been released today. Why is that despite the announcement of a new and innovative user interface (Unity) and the inclusion of critical building blocks for private clouds (among others) I don&#8217;t get the excitement I used to &#8230; <a
href="http://www.flaviostechnotalk.com/2011/04/29/modern-linux-distributions-and-their-innate-feature-creep/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.canonical.com/content/ubuntu-transforms-your-pc-experience" target="_blank">Ubuntu 11.04 has been released today.</a> Why is that despite the announcement of a new and innovative user interface (<a
href="http://unity.ubuntu.com/" target="_blank">Unity</a>) and the inclusion of <a
href="http://www.canonical.com/content/latest-ubuntu-offers-business-added-cloud-features-and-sleek-new-desktop-interface" target="_blank">critical building blocks for private clouds</a> (among others) I don&#8217;t get the excitement I used to have when a new release of a major distribution came out?</p><p>Maybe I just grew numb of the claims of revolutionary features and disruptive technologies. Or it could just be that I believe that &#8220;featurism&#8221; doesn&#8217;t equate to software quality, usability and future proofing.</p><p>I&#8217;ve been involved with Linux in one way or another for far too long now (ever since I saw the original message posted by Linus in the comp.os.minix newsgroup back in 1991), and I&#8217;ve played with every <a
href="http://upload.wikimedia.org/wikipedia/commons/9/9a/Gldt1009.svg" target="_blank">major distribution</a> under the sun. You name it: <a
href="http://en.wikipedia.org/wiki/Softlanding_Linux_System" target="_blank">SLS</a>, Slackware, <a
href="http://en.wikipedia.org/wiki/Yggdrasil_Linux/GNU/X" target="_blank">Yggdrasil</a>, RedHat, SuSE, Conectiva, Mandrake, Debian, Gentoo, Ubuntu, etc., all got their fair share of the flavor of the month hardware that I had at the moment (still remember running the first few of these on a 386SX 20Mhz). And there was a time when I could literally recite from memory the complete boot process including every executable and config file, and remember the layout of the init rc system for each of these installations. There was also a time when I could quickly take a look a the kernel source code to understand certain behavior, or even fix an annoying bug.</p><p>Nowadays things have grown significantly more sophisticated. The diversity in hardware has increased by orders of magnitude, generating additional kernel complexity (and this not only affects the drivers subsystems), the multitude of commercially supported distributions striving to survive and make money compete for the latest and greatest differential feature that will allow them to see their market share increase by a slim percentage, and the overzealous competition with Microsoft forces the proliferation of capabilities that most of the end users will never need.</p><p>And the additional complexity doesn&#8217;t stop there: software engineering became increasingly more complex by adding layers of abstraction on top of layers of abstraction under the (false) pretension of &#8220;more efficient programming models&#8221;, for dubious programming productivity gains at best in many cases. I am not saying that taking away pointer arithmetic from the average developer responsibilities doesn&#8217;t help avoid common mistakes and potentially increases software reliability, but it seems that nowadays programmers can&#8217;t even code a simple <a
href="http://en.wikipedia.org/wiki/Quicksort" target="_blank">quicksort</a> without resorting to the latest and greatest class part of their favorite object oriented language toolkit library (and maybe some of those people should not call themselves programmers either, but that is beyond the point).</p><p>There is nothing inherently wrong with having options, particularly when you don&#8217;t need to pay for them (at least directly), and with squeezing a few more drops of productivity out of every programmer, but bloat comes at a price: complexity is the natural enemy of software reliability (and usability). And when I say reliability, I also mean security, code maintainability and general system stability.</p><p>Going back to the central topic of Linux distributions: what is that a Linux distribution must absolutely provide? A relatively easy way to install a stable system, a good package management system that handles package dependencies (even reverse dependencies) well,reasonable defaults, a consistent strategy to the installation of additional packages and timely updates. This is not much more than what you could get with RedHat 3.0 about 15 years ago. So how did Linux distributions spend the last 15 years?</p><p>I am not advocating throwing away what we have and installing OpenBSD (BTW, Theo, source code patches and recompilation as the official method of updating your kernel and your basic distribution in 2011 truly sucks!); what I am really saying is that we should seriously spend some time understanding what is absolutely needed and cleaning house in the major Linux distributions. Is there a reason why we need several word processors? And why is that we would want to have 2 or 3 different window managers?</p><p>And to the developers: I&#8217;m not saying that everyone should become a <a
href="http://en.wikipedia.org/wiki/Demoscene" target="_blank">demoscene</a> wizard, but thinking and coming up with an algorithm on your own once every a while, rather than gluing classes together all the time can be a quite fulfilling experience.</p><p>Opensource is based on the noble idea of diversity tolerance, but it&#8217;s also based on less altruist principles such as Darwinism and &#8220;benevolent dictatorships&#8221;. It seems to me that the Linux Kernel benevolent dictatorship works (at least to a point), but the survival of the fittest principle is definitively not working when it comes to modern Linux distributions.</p><p>&nbsp;</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/04/29/modern-linux-distributions-and-their-innate-feature-creep/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>This time is PSN. Who&#8217;s next?</title><link>http://www.flaviostechnotalk.com/2011/04/27/this-time-is-psn-whos-next/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=this-time-is-psn-whos-next</link> <comments>http://www.flaviostechnotalk.com/2011/04/27/this-time-is-psn-whos-next/#comments</comments> <pubDate>Thu, 28 Apr 2011 02:38:48 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[Fraud]]></category> <category><![CDATA[Information Security]]></category> <category><![CDATA[PCI DSS]]></category> <category><![CDATA[Breach]]></category> <category><![CDATA[Credit Card Industry]]></category> <category><![CDATA[PSN]]></category> <category><![CDATA[Regulations]]></category> <category><![CDATA[Security]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=13</guid> <description><![CDATA[A week after taking down PlayStation Network, Sony finally explains that it did so due to a breach. And this is no ordinary breach either. Some analysts estimate that personal information of over 75 million of Sony&#8217;s users has been &#8230; <a
href="http://www.flaviostechnotalk.com/2011/04/27/this-time-is-psn-whos-next/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>A<a
href="http://www.pcworld.com/article/226500/what_does_sony_owe_consumers_after_psn_nightmare.html"> week after taking down PlayStation Network</a>, Sony finally explains that it did so due to a breach. And this is no ordinary breach either. Some analysts estimate that personal information of over 75 million of Sony&#8217;s users has been exposed. What makes this incident even worse is that credit card data for a large percentage of those users could have been also compromised.</p><p>While Sony is undeniably responsible for the security of its systems and the personal information exposed, it is only fair to also put significant responsibility on the credit card industry for what could be the largest credit card compromise in history. This event is yet another sign that <a
href="https://www.pcisecuritystandards.org/index.php">PCI DSS</a> is just a bit more than patchwork around a broken process.</p><p>Who would ever think that a secret shared across hundreds or thousands of people is still a secret? Can someone believe this assumption to hold true while made subject to the <a
href="http://en.wikipedia.org/wiki/Prudent_man_rule">prudent man rule</a>? And yet this seems to be what the credit card industry wants to believe by establishing a process that requires a set of &#8220;secrets&#8221; (name, credit card number, expiration date and possibly <a
href="http://en.wikipedia.org/wiki/Card_security_code">cvv</a>) to be shared among the credit card holder and every merchant and payment gateway that card is ever exposed to.</p><p>In the physical world, where you are required to present a piece of plastic (and maybe a magnetic band and possibly a photo ID) together with this information, there is at least the additional challenge of <a
href="http://en.wikipedia.org/wiki/Counterfeit">counterfeiting</a> the credit card and driver&#8217;s license. But in the virtual world where only bits are presented and used for the verification, there is absolutely no restriction over the leak, copy and misuse of this data.</p><p>And it is not that there are no other proven methods to perform secure transactions without the need for a shared secret. Public key infrastructure ciphers such as <a
href="http://en.wikipedia.org/wiki/Rsa">RSA</a> have been known and used for over 30 years to provide digital signatures and non-repudiation. And the best thing about them is that neither they need a secure channel, nor they require the exchange of any secret.</p><p>Why doesn&#8217;t the credit card industry recognize that the current payment process is badly broken when it comes to e-transactions and moves forward to using digital signatures? It is certainly not because of cost (the new process could be implemented with little more than GNU gpg, a nice wrapper GUI and a good campaign to demonstrate the value of such an approach). Users would create a key pair, the credit card industry would take care of the client certificates and the payment process would consist of digitally signing the invoice with the secret key (which, by the way, is never exposed to anyone). The verification of the signature using the client certificate (or public key) would constitute enough record of the particular transaction.</p><p>What is wrong with this picture? If this is a quantum leap over the existing broken process and is a proven method for identity verification, why isn&#8217;t the credit card industry mandating it instead of wasting time trying to build fences (a.k.a. PCI DSS 2.0) around sensitive secrets shared by hundreds or thousands of merchants?</p><p>I can think of a quick answer, but I hope it is not the reason behind it. My guess is that, by taking the merchants out of the equation, the residual risk would live with the credit card holders, their workstation security and the credit card companies themselves. This situation would make the credit card issuers liable (and not the merchants anymore). Is this too much blame to take for the credit card companies? Is it better for the credit card industry to pretend that this solution doesn&#8217;t exist and continue to blame the merchants for their insufficient security and their inability to meet the requirements of the latest and greatest PCI DSS standard?</p><p>Maybe one day in Utopia legislators and regulators will consult with true security experts and will be advised correctly. And perhaps that day they will make credit card issuers liable for their inaction. There is even a possibility that this will happen in our lifetime. Until then, we&#8217;ll need to continue to fake that nothing happened, that giving your credit card information electronically to any merchant is fine as long as they present a valid SSL certificate and that merchants are the only ones to be blamed for every case of credit card fraud.</p><p>&nbsp;</p><p>&nbsp;</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/04/27/this-time-is-psn-whos-next/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Hello world!</title><link>http://www.flaviostechnotalk.com/2011/04/26/hello-world/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hello-world</link> <comments>http://www.flaviostechnotalk.com/2011/04/26/hello-world/#comments</comments> <pubDate>Tue, 26 Apr 2011 20:16:36 +0000</pubDate> <dc:creator>Flavio Villanustre</dc:creator> <category><![CDATA[General]]></category> <guid
isPermaLink="false">http://www.flaviostechnotalk.com/?p=1</guid> <description><![CDATA[Back to the Blog-sphere from a long hiatus. It has been over 5 years and a lot has happened in technology, information security and Opensource. I guess there is not much to say for now, other than &#8220;Hello, World!&#8221; and &#8220;It&#8217;s nice &#8230; <a
href="http://www.flaviostechnotalk.com/2011/04/26/hello-world/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>Back to the Blog-sphere from a long hiatus. It has been over 5 years and a lot has happened in technology, information security and Opensource.</p><p>I guess there is not much to say for now, other than &#8220;Hello, World!&#8221; and &#8220;It&#8217;s nice to be back!&#8221;.</p> ]]></content:encoded> <wfw:commentRss>http://www.flaviostechnotalk.com/2011/04/26/hello-world/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
