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

<channel>
	<title>You are such a geek... &#187; linux</title>
	<atom:link href="http://geekyschmidt.com/tag/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://geekyschmidt.com</link>
	<description>Binary makes me giggle</description>
	<lastBuildDate>Sun, 15 Jan 2012 17:15:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Why is my /dev/sda missing?!?!</title>
		<link>http://geekyschmidt.com/2011/03/12/why-is-my-devsda-missing</link>
		<comments>http://geekyschmidt.com/2011/03/12/why-is-my-devsda-missing#comments</comments>
		<pubDate>Sat, 12 Mar 2011 22:09:41 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[dm-crypt]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[sysfs]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1711</guid>
		<description><![CDATA[<p>I am in the midst of testing some of the latest Linux kernels and realized that my old kernel config was wiped. In my desire to finish the build I forgot to select a VERY important option if you are using dm-crypt and LUKS. If you cannot access your /boot then there is no way [...]]]></description>
			<content:encoded><![CDATA[<p>I am in the midst of testing some of the latest Linux kernels and realized that my old kernel config was wiped. In my desire to finish the build I forgot to select a VERY important option if you are using dm-crypt and LUKS. If you cannot access your /boot then there is no way to upgrade your kernel. Chicken and egg issue. Another issue maybe that you lost your /dev/sda1 or other nodes due to udev overtaking. Here is the fix in the situation:</p>
<ol>
<li>cat /proc/partitions</li>
<li>Notice the Major/Minor columns associated with the partition you wish to mount. I will use /dev/sda1 as an example</li>
<li>mknod /dev/sda b 8 0</li>
<li>mknod /dev/sda1 b 8 1</li>
<li>mount /dev/sda1 /mnt/tmp</li>
</ol>
<p>Now you can copy your new kernel over outside the dm-crypt and boot correctly!</p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2011/03/12/why-is-my-devsda-missing/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtualization Tool Support Matrix</title>
		<link>http://geekyschmidt.com/2011/02/05/virtualization-tool-support-matrix</link>
		<comments>http://geekyschmidt.com/2011/02/05/virtualization-tool-support-matrix#comments</comments>
		<pubDate>Sat, 05 Feb 2011 17:40:18 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[esx]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[matrix]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1657</guid>
		<description><![CDATA[<p>I would argue it is pretty sad that the tools needed to abstract the OS from hardware are tied to specific platforms. Companies that pride themselves on delivering &#8220;cloud services&#8221; without the constraints of operating system force us admin types to have machines we wouldn&#8217;t otherwise. Take for example my ESXi cluster in the basement. [...]]]></description>
			<content:encoded><![CDATA[<p>I would argue it is pretty sad that the tools needed to abstract the OS from hardware are tied to specific platforms. Companies that pride themselves on delivering &#8220;cloud services&#8221; without the constraints of operating system force us admin types to have machines we wouldn&#8217;t otherwise. Take for example my ESXi cluster in the basement. I have a single XP Virtual Machine who&#8217;s sole purpose is to admin vSphere. A company with such a rich history of Linux and OSS support drives me crazy at times. (<em>see also PCoIP support from VMware with their Linux/Mac Client)</em></p>
<p>As I test virtualization platforms I try to keep a matrix that shows which tools will manage what host types. I figured it could be of use to some other architects and CTO out there. If I missed any please let me know!</p>
<p><a href="https://spreadsheets.google.com/ccc?key=0Ajyx9_8zycY_dEU1SVg1WFd5UnBPemE0dDNLSVNPc0E&amp;hl=en" target="_blank">Google Docs Spreadsheet Link to Matrix</a></p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2011/02/05/virtualization-tool-support-matrix/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>An iron fist in an iron glove &#8211; Mac/Linux Keymapping</title>
		<link>http://geekyschmidt.com/2011/01/25/an-iron-fist-in-an-iron-glove-maclinux-keymapping</link>
		<comments>http://geekyschmidt.com/2011/01/25/an-iron-fist-in-an-iron-glove-maclinux-keymapping#comments</comments>
		<pubDate>Tue, 25 Jan 2011 13:28:20 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[keyboard]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1637</guid>
		<description><![CDATA[<p>This post will serve to upset both sides of the coin.</p> Apple users wondering why I would load an inferior OS Linux users wondering why I spent all that extra money on Apple Hardware <p>I am going to skip the religious battles over OS and platform and say that if you happen to have loaded [...]]]></description>
			<content:encoded><![CDATA[<p>This post will serve to upset both sides of the coin.</p>
<ol>
<li>Apple users wondering why I would load an inferior OS</li>
<li>Linux users wondering why I spent all that extra money on Apple Hardware</li>
</ol>
<p>I am going to skip the religious battles over OS and platform and say that if you <em>happen </em>to have loaded Linux on a piece of Apple hardware this post is for you. One of the first problems you will find is that your Alt+Tab doesn&#8217;t work as expected. If you follow the instructions your Command and Alt keys will work as you had hoped with the Apple Keyboard:</p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/Workspace-2_001.png" rel="lightbox[1637]"><img class="alignnone size-medium wp-image-1642" title="Workspace 2_001" src="http://geekyschmidt.com/wp-content/uploads/2011/01/Workspace-2_001-300x168.png" alt="" width="300" height="168" /></a></p>
<p><strong>1. Starting from your blank desktop, go to System &#8211;&gt; Preferences &#8211;&gt; Keyboard</strong></p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/Menu_002.png" rel="lightbox[1637]"><img class="alignnone size-medium wp-image-1641" title="Menu_002" src="http://geekyschmidt.com/wp-content/uploads/2011/01/Menu_002-189x300.png" alt="" width="189" height="300" /></a></p>
<p><strong>2. When the window opens for Keyboard Preferences, navigate to Layouts and Select Options<br />
</strong></p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/Keyboard-Preferences_003.png" rel="lightbox[1637]"><img class="alignnone size-medium wp-image-1640" title="Keyboard Preferences_003" src="http://geekyschmidt.com/wp-content/uploads/2011/01/Keyboard-Preferences_003-267x300.png" alt="" width="267" height="300" /><br />
</a></p>
<p><strong>3. Expand the Alt/Win Behavior and check the radio box:</strong> <em>Control is mapped to Alt Keys, Alt is mapped to Win Keys </em><strong>That is all you need to fix the keyboard map</strong></p>
<p><strong><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/Keyboard-Layout-Options_004.png" rel="lightbox[1637]"><img class="alignnone size-medium wp-image-1639" title="Keyboard Layout Options_004" src="http://geekyschmidt.com/wp-content/uploads/2011/01/Keyboard-Layout-Options_004-300x233.png" alt="" width="300" height="233" /></a><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2011/01/25/an-iron-fist-in-an-iron-glove-maclinux-keymapping/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Your new CAC, Linux, Mac, and You</title>
		<link>http://geekyschmidt.com/2011/01/19/your-new-cac-linux-and-you</link>
		<comments>http://geekyschmidt.com/2011/01/19/your-new-cac-linux-and-you#comments</comments>
		<pubDate>Thu, 20 Jan 2011 03:04:05 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[144k]]></category>
		<category><![CDATA[cac]]></category>
		<category><![CDATA[cac-ng]]></category>
		<category><![CDATA[cackey]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[iceweasel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[pki]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1607</guid>
		<description><![CDATA[<p>Earlier posts outlined howto utilize OpenSC to ensure your CAC worked in Linux or Mac. The problem is that there are new 144k CAC being passed out that do not work with the current coolkey or OpenSC toolsets. What is a happy Federal employee to do?! First you need to find a Windows computer that [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier posts outlined howto utilize OpenSC to ensure your CAC worked in Linux or Mac. The problem is that there are new 144k CAC being passed out that do not work with the current coolkey or OpenSC toolsets. What is a happy Federal employee to do?! First you need to find a Windows computer that can access the https://software.forge.mil In a strange turn of events you will be unable to download the software necessary for your true platform of choice to access the software. Its a chicken and egg problem&#8230;</p>
<p>I will start with Linux. There are RPM and DEB files, but where is the fun with that? In order to hit the most people possible, if you follow these instructions to build from source you will be just spiffy. Note that there is an initiative with the Red Hat Linux PKI Team to implement the fixes from CACkey into Coolkey, but it has only flowed to some initial Fedora packages thus far. These instructions will not age well once that coolkeys package hits the main debian, ubuntu, rhel, etc.</p>
<ol>
<li>Download the latest Firefox extension for installing the root certificates for both the Federal and DoD CA from here: ﻿<a href="https://software.forge.mil/sf/frs/do/downloadFile/projects.community_cac/frs.mozilla_addon.1_2_1_beta/frs3101?dl=1" target="_blank">DoD Firefox Extension</a></li>
<li>Next we need to install the *.xpi file into Firefox. I will assume you are more than capable of doing this. When you are done, restart the browser and allow it to fetch the certificates</li>
<li>Download the source-code for cackey from here: <a href="https://software.forge.mil/sf/frs/do/downloadFile/projects.community_cac/frs.cackey.0_5_20/frs2944?dl=1" target="_blank">CACKey Source</a></li>
<li>Install the ﻿﻿libpcsclite-dev package for your distro. The one mentioned here is for Debian Unstable</li>
<li>Extract: ﻿tar xfvz cackey-0.5.20.tar.gz</li>
<li>Configure: cd cackey* &amp;&amp; ./configure</li>
<li>Make: make</li>
<li>Install: sudo make install</li>
<li>Next open Firefox/Iceweasel back-up and ensure that your security devices is free of OpenSC and Coolkey. I have had little success in having both loaded with the CACkey implementation. You will load the Security Device from /usr/local/lib/libcackey.so</li>
<li>Shutdown the browser and restart</li>
<li>Surf to a friendly CAC enabled website you frequent and when prompted for your pin use the same you would at work. If you have the newer 144k CAC you will be given a choice between two certificates, choose the one with your email address listed.</li>
<li>You are in!</li>
</ol>
<p>For Mac your life is much simpler. There are pre-made packages for Tiger, Leopard, and Snow Leopard. Download the one applicable to your platform and follow the same instructions above from Step 9 down. The only difference being that your location for the Loading of the security device is: /usr/lib/pkcs11/cackey.dylib</p>
<p>Screenshots:</p>
<p><em>Linux:</em></p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/Firefox-Linux.png" rel="lightbox[1607]"><img class="alignnone size-medium wp-image-1608" title="Firefox Linux" src="http://geekyschmidt.com/wp-content/uploads/2011/01/Firefox-Linux-300x145.png" alt="" width="300" height="145" /></a></p>
<p><em>Mac:</em></p>
<p><em><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/Firefox-Mac.png" rel="lightbox[1607]"><img class="alignnone size-medium wp-image-1609" title="Firefox Mac" src="http://geekyschmidt.com/wp-content/uploads/2011/01/Firefox-Mac-300x192.png" alt="" width="300" height="192" /></a></em></p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2011/01/19/your-new-cac-linux-and-you/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>BitlBee and OTR &#8230; then add some TOR!</title>
		<link>http://geekyschmidt.com/2011/01/02/bitlbee-and-otr-then-add-some-tor</link>
		<comments>http://geekyschmidt.com/2011/01/02/bitlbee-and-otr-then-add-some-tor#comments</comments>
		<pubDate>Sun, 02 Jan 2011 20:00:12 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[bitlbee]]></category>
		<category><![CDATA[chat]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[irc]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[otr]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[tor]]></category>
		<category><![CDATA[weechat]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1448</guid>
		<description><![CDATA[<p>With the release of 3.0.1 of <a href="http://bitlbee.org/" target="_blank">BitlBee</a> you can now chat from your favorite IRC client with the peace of mind that your protected. Since the OTR portion is still very new I wanted to put together a quick howto. I am going to assume you are running Debian Lenny (sid has 3.0.1 [...]]]></description>
			<content:encoded><![CDATA[<p>With the release of 3.0.1 of <a href="http://bitlbee.org/" target="_blank">BitlBee</a> you can now chat from your favorite IRC client with the peace of mind that your protected. Since the OTR portion is still very new I wanted to put together a quick howto. I am going to assume you are running Debian Lenny (sid has 3.0.1 in the packages already) and that you really are a security nut:</p>
<ol>
<li>Download source from ﻿<a href="http://get.bitlbee.org/src/bitlbee-3.0.1.tar.gz" target="_blank">http://get.bitlbee.org/src/bitlbee-3.0.1.tar.gz</a></li>
<li>sudo apt-get install libotr2-dev libotr2-bin</li>
<li>./configure &#8211;prefix=/usr &#8211;otr=1</li>
<li>make</li>
<li>make install</li>
<li>make install-etc</li>
</ol>
<p>Done! Now once you start bitlbee (/etc/init.d/bitlbee start) for the first time it will generate your OTR keys. I am going to assume that you are going to use the Question and Answer verification for OTR keys. With our other secure buddy we do the following:</p>
<ol>
<li><em>otr connect $buddy</em></li>
<li><em>otr smpq $buddy 2+2 4</em></li>
<li>If your buddy knows your answer then they will reply correctly</li>
<li>Your buddy being a smart cookie will then ask for you to respond to a question: <em>otr smp $buddy answer</em></li>
<li>Done!</li>
</ol>
<p>In step 2 the breakout is question then answer. So if we wanted to do a &#8220;Where did we eat lunch 1 Jan&#8221; &#8220;Taco Bell&#8221; then you could do that also. I used 2+2 for simplicity. It is important to note that if you have logging turned on for BitlBee then your OTR messages are in vain. Also they could trace your connections via your network connection. Lets add an additional layer. Open your /usr/etc/bitlbee/bitlbee.conf (or where ever you put it) and change the following settings:</p>
<p>Proxy = socks5://127.0.0.1:9050</p>
<p>This assumes you have configured TOR SOCKS for that address, but that is the default. I run this configuration in a hidden service SSH server with screen. A potent combo that in essence lets me roam through the interwebs constantly connected and secured. Any questions let me know</p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2011/01/02/bitlbee-and-otr-then-add-some-tor/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>-fno -fno -fno stack protection</title>
		<link>http://geekyschmidt.com/2011/01/01/fno-fno-fno-stack-protection</link>
		<comments>http://geekyschmidt.com/2011/01/01/fno-fno-fno-stack-protection#comments</comments>
		<pubDate>Sat, 01 Jan 2011 16:46:54 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[-fno]]></category>
		<category><![CDATA[buffer]]></category>
		<category><![CDATA[gcc]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[stack]]></category>
		<category><![CDATA[stack_chk]]></category>
		<category><![CDATA[UNIX]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1462</guid>
		<description><![CDATA[<p>2 days straight now on IRC (##security on irc.freenode.net if you want to say hi) I have had to help someone compiling a program deal with it failing mid-stream. This is especially prevalent on security packages like fuzzers and such. First, what is stack protection?</p> <p><a href="http://en.wikipedia.org/wiki/Buffer_overflow_protection#GCC_Stack-Smashing_Protector_.28ProPolice.29" target="_blank">Buffer Overflow Protection</a></p> <p>In software, a stack buffer overflow [...]]]></description>
			<content:encoded><![CDATA[<p>2 days straight now on IRC (<em>##security on irc.freenode.net if you want to say hi</em>) I have had to help someone compiling a program deal with it failing mid-stream. This is especially prevalent on security packages like fuzzers and such. First, what is stack protection?</p>
<p><a href="http://en.wikipedia.org/wiki/Buffer_overflow_protection#GCC_Stack-Smashing_Protector_.28ProPolice.29" target="_blank">Buffer Overflow Protection</a></p>
<blockquote><p>In software, a <strong>stack buffer overflow</strong> occurs when a program writes to a <a title="Computer memory" href="http://en.wikipedia.org/wiki/Computer_memory">memory</a> address on the program&#8217;s <a title="Call stack" href="http://en.wikipedia.org/wiki/Call_stack">call stack</a> outside of the intended data structure; usually a fixed length buffer.<sup id="cite_ref-cert1_0-0"><a href="http://en.wikipedia.org/wiki/Stack_buffer_overflow#cite_note-cert1-0">[1]</a></sup><sup id="cite_ref-dowd_1-0"><a href="http://en.wikipedia.org/wiki/Stack_buffer_overflow#cite_note-dowd-1">[2]</a></sup> Stack buffer overflow bugs are caused when a program writes more data to a buffer located on the stack than there was actually allocated for that buffer. This almost always results in corruption of adjacent data on the stack, and in cases where the overflow was triggered by mistake, will often cause the program to crash or operate incorrectly. This type of overflow is part of the more general class of programming bugs known as <a title="Buffer overflow" href="http://en.wikipedia.org/wiki/Buffer_overflow">buffer overflows</a>.<sup id="cite_ref-cert1_0-1"><a href="http://en.wikipedia.org/wiki/Stack_buffer_overflow#cite_note-cert1-0">[1]</a></sup></p></blockquote>
<div id="attachment_1463" class="wp-caption alignnone" style="width: 310px"><a href="http://geekyschmidt.com/wp-content/uploads/2011/01/overflow.jpg" rel="lightbox[1462]"><img class="size-medium wp-image-1463" style="border: 5px solid black;" title="Your code without protection..." src="http://geekyschmidt.com/wp-content/uploads/2011/01/overflow-300x225.jpg" alt="" width="300" height="225" /></a><p class="wp-caption-text">Your code without protection...</p></div>
<p>You can understand why those security guys want it enabled by default. Truth of the matter is it <em>SHOULDN&#8217;T</em> be an issue. With the default GCC installs and compiles of Ubuntu/Debian not using it though it causes all kind of problems. If you are here because you are getting, as an example:</p>
<blockquote><p>ld: libdlrpc.so: hidden symbol `__stack_chk_fail_local&#8217; isn&#8217;t defined<br />
pam_sotp.so: undefined symbol: __stack_chk_fail_local</p></blockquote>
<p>Here is the flow to fix it on your platform:</p>
<ol>
<li>In your source directory issue a <em>make clean</em></li>
<li>Rerun the autoconf: <em>./configure</em></li>
<li>Edit the generated Makefile: <em>vi Makefile</em></li>
<li>Look for the CFLAGS= line and add: <em>-fno-stack-protector</em></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2011/01/01/fno-fno-fno-stack-protection/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yubikey and my desire to beat the Feds to HSPD12 Compliance</title>
		<link>http://geekyschmidt.com/2010/12/27/yubikey-and-my-desire-to-beat-the-feds-to-hspd12-compliance</link>
		<comments>http://geekyschmidt.com/2010/12/27/yubikey-and-my-desire-to-beat-the-feds-to-hspd12-compliance#comments</comments>
		<pubDate>Tue, 28 Dec 2010 01:13:28 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[hspd12]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[token]]></category>
		<category><![CDATA[yubi]]></category>
		<category><![CDATA[yubikey]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1449</guid>
		<description><![CDATA[<p>During my Air Force days I was involved with the roll-out of the &#8220;CAC&#8221; for Air Mobility Command at MacDill. No one could understand why the military would put so much time and money into giving all personnel new ID Cards and equipping machines with readers that did nothing at that point. The main feature back then [...]]]></description>
			<content:encoded><![CDATA[<p>During my Air Force days I was involved with the roll-out of the &#8220;CAC&#8221; for Air Mobility Command at MacDill. No one could understand why the military would put so much time and money into giving all personnel new ID Cards and equipping machines with readers that did nothing at that point. The main feature back then was that when you removed your CAC your machine would automatically lock. Well, that or you would just leave your CAC at work and need to call a coworker to come retrieve you from the gate. What I failed to understand back then was that Multi-factor Authentication (MFA) was something fundamentally needed for our nations and armed forces security. This should have been apparent and clear to me as I scattered around some of the bases most secure locations to find mission essential passwords affixed to stickies on the monitor.</p>
<p>DoD was playing major league ball and way ahead of the curve (single sports reference this post) while the rest of the federal govt. sat on the sidelines. <a href="http://www.dhs.gov/xabout/laws/gc_1217616624097.shtm" target="_blank">Homeland Security Presidential Directive 12</a> tried to fix this situation by mandating CAC or MFA usage for all federal agencies in 2004. Note that the year is 2010 and I will not call out anyone, but this is still not fully implemented.</p>
<p>Where does that leave us consumers? Complex passwords are no longer a guarantee with the services we use storing them in weak methods. Much like the sticky note hanging above the keyboard, the security you use is only as good as the storage. Why not take the password out of the loop? This was where I was at a few weeks ago as I began researching solutions. My requirements were:</p>
<ol>
<li>Open Solution</li>
<li>Compatible with Mac/Linux/Windows/*BSD</li>
<li>Does not require special hardware IE SmartCard reader, RFID, etc.</li>
<li>Not tied to a single vendor</li>
</ol>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2010/12/YK-2-2-RFID.png" rel="lightbox[1449]"><img class="size-full wp-image-1452 alignleft" style="border: 2px solid black; margin: 5px;" title="YK 2-2 RFID" src="http://geekyschmidt.com/wp-content/uploads/2010/12/YK-2-2-RFID.png" alt="" width="210" height="168" /></a>I landed with the RFID enabled <a href="http://yubico.com/" target="_blank">Yubikey</a> which cost me a total of 35.00 USD. I sprung for the RFID enabled version so I could begin integrating it with <a href="http://en.wikipedia.org/wiki/Near_field_communication" target="_blank">NFC</a> components, but for now only using it as the basic version. So what is a Yubikey? Basically it is a keyboard on a stick that is programmed to generate a OTP. Here is the output of what happens when I click the button:</p>
<p><em>cccccccfgihevjtgrefvftjufjgurunnvvcjjcfdfifk</em></p>
<p><em><br />
</em></p>
<p><a href="http://www.pcmag.com/article2/0,2817,2345571,00.asp" target="_blank">PCMag</a> gave a great description:</p>
<blockquote><p>The $25 YubiKey is a tough little chunk of plastic with USB connectors on one end and a touch-sensitive (no moving parts) button on top. Each time you touch the button it sends a static password and a dynamically-generated one-time password to any application that&#8217;s listening for its input. If a spy program captures the password, so what &#8211; that particular one-time password won&#8217;t be valid ever again. Others seem to think this is a good idea; Yubico is a finalist for &#8220;<a href="http://www.rsaconference.com/2009/us/highlights/innovation-sandbox/call-for-innovations.htm" target="_blank">Most Innovative Company</a>&#8221; at the RSA conference</p></blockquote>
<p>After a quick shipment the device was in my hands and I quickly started integrating it into my home architecture. Due to the hacker friendly nature of their API, it has many plugins and applications enabled to work out of the box. The ones I installed right away:</p>
<ul>
<li><a href="http://lastpass.com" target="_blank">LastPass</a></li>
<li><a href="http://henrik.schack.dk/yubikey-plugin/" target="_blank">WordPress Admin Protection</a></li>
<li><a href="www.clavid.com" target="_blank">OpenID Support</a></li>
<li><a href="http://code.google.com/p/yubico-pam/wiki/YubikeyAndSSHViaPAM" target="_blank">Linux PAM Module &#8211; SSH Access</a></li>
<li><a href="http://www.h-ein.de/projekte/yubikey-login-auth-module-openbsd.html" target="_blank">OpenBSD Server Access</a></li>
</ul>
<p>With OpenID you can login into Facebook, Google Apps, and others which is a huge benefit for online websites. The onus is then put on the OpenID provider to perform the multifactor authentication rather than <a href="http://gawker.com/5713056/gawker-security-breach-were-here-to-help" target="_blank">Gawker</a> and the likes. So you are ready to run out and buy one right? Sounds like the most secure thing for the home user, right? Well I have my doubts.</p>
<p>Earlier in this post I outlined how I was placing the onus on the OpenID provider and OTP scheme from Yubi. In essence I have now put my trust in a company and their security perimeter. How do I know that their architecture is well protected? What security testing has been done to ensure their device complies with the security I hold so dear? Their AES algorithm is not found on the list of FIPS validated modules. The Yubikey itself is not certified for any FIPS/DISA/DoD/NSA testing and therefore in my world it is non-usable outside the home. I would recommend this wholeheartedly to small business and personal security users, but it will never find its way into the govt. without these groups certifying they have their stuff together.</p>
<p>It comes down to hearing people argue with me at work about not wanting to move to the cloud since it isn&#8217;t as available or that their data is outside their control. This is the same group that is running single points of failure in their core and have never tested their backups, so it makes you feel comfortable to throw darts. At the end of the day this token+good password selection is enough to keep you out of trouble. It isn&#8217;t the most secure option, but it is easy to use and hacker (not cracker) friendly.</p>
<p><strong>Pros:</strong></p>
<p>+ Small and rugged device, no moving parts</p>
<p>+ Easy to Use</p>
<p>+ If your OS supports USB keyboards, it works</p>
<p>+ Cheap</p>
<p>+ Geek Friendly</p>
<p>+ Integrates into Active Directory, PAM, and other OS level authentication mechanisms</p>
<p><strong>Cons:</strong></p>
<p>- Left with this uneasy feeling that I am screwed if its lost; installing my own little back-doors places</p>
<p>- USB keyboard means nothing when you are on your phone. Only works with full-PC devices, not phones or tablets</p>
<p>- Lack of formal security certification<strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2010/12/27/yubikey-and-my-desire-to-beat-the-feds-to-hspd12-compliance/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google ChromeOS Cr-48 Review</title>
		<link>http://geekyschmidt.com/2010/12/15/google-chromeos-c-48-review</link>
		<comments>http://geekyschmidt.com/2010/12/15/google-chromeos-c-48-review#comments</comments>
		<pubDate>Thu, 16 Dec 2010 03:09:13 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chromeos]]></category>
		<category><![CDATA[cr-48]]></category>
		<category><![CDATA[cr48]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1433</guid>
		<description><![CDATA[<p>It seems everyone is posting their review after a few days of working with the laptop. I decided to take a different perspective with the initial review. When I first started playing with ChromeOS betas a few months ago I came to the realization that this was not for me. Two things were apparent:</p> This machine [...]]]></description>
			<content:encoded><![CDATA[<p>It seems everyone is posting their review after a few days of working with the laptop. I decided to take a different perspective with the initial review. When I first started playing with ChromeOS betas a few months ago I came to the realization that this was not for me. Two things were apparent:</p>
<ol>
<li>This machine is to provide a cloud-based Thin Client. I live off servers around the world, not necessarily in the cloud.</li>
<li>As a geek, the Walled Garden drives me crazy. &#8220;What do you mean I can&#8217;t install a SSH server?!?!?&#8221;</li>
</ol>
<p>My girlfriend on the other hand could care less about a SSH server. She finds the Mac Mini a little overwhelming at times and really just wants the internet. &#8220;Show me where the Safari icon is.&#8221; For that reason alone I found ChromeOS to be built for her. Instant On and just a web browser.</p>
<p><strong>Unboxing</strong></p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_164937.jpg" rel="lightbox[1433]"><img class="size-medium wp-image-1436 alignnone" title="IMG_20101209_164937" src="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_164937-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_164937.jpg" rel="lightbox[1433]"></a>Despite finding the little surprise on my porch before Becca got home, I held back from opening it. She was home and I rushed her to the kitchen to open the box. Her initial thoughts:</p>
<ul>
<li>The box is artsy and fun</li>
<li>I like the rubber feel of the exterior</li>
<li>Keyboard feels nice</li>
<li>Trackpad is yucky</li>
</ul>
<p><strong>Usage</strong></p>
<p>The setup was super easy. I made sure Becca drove and the only info she needed was the WPA passwords for the Wifi and off she went. It was that easy and off she was off to Etsy and Amazon. It was impressive how little input I had and I have to admit I was somewhat jealous to see her on her way surfing the internet. I am not sure what else to say. It is Chrome on Linux and runs great. We did some video chatting over Gtalk and it was equally as simple. Not once have I had to assist Becca in using this machine. It is an appliance for her and provides a gateway to what she cares about online. That simplicity I believe would be shared by many as the need for full-time computing disappears. As mentioned on many other reviews though, FLASH KILLS THIS MACHINE. Simple flash objects too like Facebook widgets stuff kills it. I am so tired of Adobe and hope the continued rise of HTML5 will slowly kill it.</p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_200612.jpg" rel="lightbox[1433]"><img class="alignnone size-medium wp-image-1439" title="IMG_20101209_200612" src="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_200612-225x300.jpg" alt="" width="225" height="300" /></a></p>
<p><strong>Where is my Google Gears?</strong></p>
<p>Why did Google include the Verizon data plan? Because the laptop is useless without it. The lack of offline resourcing means that the machine is a big paperweight without Internet connectivity. In Washington DC thats not a big problem, in Arab Alabama or Standish Michigan its dead on arrival. The big question is where is my offline? Google had a great platform in Google Gears that I would argue they prematurely killed off. HTML5 supports offline storage, but as it stands today there is no usage of it within Google. Utter Fail&#8230;</p>
<p><strong>Trackpad</strong></p>
<p>For reasons unknown to me the trackpad is utter crap. I was going to hold off on talking about it since this is development hardware platform, but its that bad. Imagine the worst trackpad and then cut your hands off and try to navigate with nubs. I can&#8217;t put into words how horrendus the damn thing is. Weirdest thing is that two finger scrolling ONLY works for my hands. Becca can&#8217;t get the thing to scroll, but has no problems on any other laptop in the house. It is a big pile of poo&#8230;sheesh</p>
<p><strong>Where it would sit at work&#8230;</strong></p>
<p>As an Enterprise guy I can&#8217;t help but think where this would fit at work. My port scans and pen tests show that the machine is in a default secure mode and offers very few entry points for hackers, but it does so by disallowing local authentication and network access. Need AD access? CIFS/SMB shares? Ain&#8217;t happening. Where as on the iOS devices there has sprung up applications that bridge that divide it simply isn&#8217;t there in the ChromeOS ecosystem. There is a <a href="http://code.google.com/p/nativeclient/wiki/NativeClientInGoogleChrome" target="_blank">Native Client</a> which will possibly allow for those type of applications, Google has not shared the roadmap or vision. I feel like I am back in 2007 having to jailbreak my iphones to get non-web based apps. So at work I can only see this as a kiosk which doesn&#8217;t seem like a big power play for Google in the enterprise.</p>
<p><strong>Where it sits in the house&#8230;</strong></p>
<p>We use it in the livingroom and bedroom. Battery life means we hardly ever charge the thing and its great for syncing to my Chrome desktop installs. The roaming profiles of the internet! Its really a great tool for that. When I left Boeing and had to give back my iPad we were feeling naked with no surfing device. The CR-48 fills that role and I&#8217;d argue better than the iPad. I am writing this post on the CR-48 which I would NEVER do on the iPad. It fails at ergonomics like any other notebook which is why the iPad was great. Laying in bed trying to surf is painful where as an iPad was easier to surf while horizontal. Its in a tough spot for what niche it fills which brings me to my next point&#8230;</p>
<p><strong>Niche is an overstatement</strong></p>
<p>My biggest fear is that Google will pull a Kin and kill the device on pricing. The problem will be price and marketing. In my humble opinion here is what Google will need to do in order to sell these things:</p>
<ol>
<li>Price point will need to be under 250 dollars. The coming abundance of Android tablets on the market will make this a tough sell</li>
<li>Must include 3G data plans that are affordable and non-contract</li>
<li>Google will need to not only market this thing, but rather give it away. Go to colleges with a truck and dump them off in the cafeteria with a sign that says &#8220;Free Pizza and Laptop.&#8221;</li>
<li>HTML5 offline storage needs to be done before it ships</li>
<li>Convince us geeks why Grams and Girlfriend needs this. Why would I buy this over an iPad for the family? Today I am not sure I would recommend this to the above folks because it is what 90% of people need a computer for. The other 10% are total and complete hell to deal with. Today it is positioned to be a third machine, not a second. Not many people have 3 machines outside us weird people that giggle at binary and hex jokes</li>
</ol>
<p>** <em>Update</em>: I was going to upload pictures from my phone when I realized I couldn&#8217;t. How do you get them off the phone? Just an interesting note as I run up to a Real Computer to complete this post **</p>
<p><a href="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_203401.jpg" rel="lightbox[1433]"><img class="alignnone size-medium wp-image-1440" title="IMG_20101209_203401" src="http://geekyschmidt.com/wp-content/uploads/2010/12/IMG_20101209_203401-300x225.jpg" alt="" width="300" height="225" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2010/12/15/google-chromeos-c-48-review/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Have you been using my CAC?</title>
		<link>http://geekyschmidt.com/2010/12/04/have-you-been-using-my-cac</link>
		<comments>http://geekyschmidt.com/2010/12/04/have-you-been-using-my-cac#comments</comments>
		<pubDate>Sat, 04 Dec 2010 16:41:22 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[cac]]></category>
		<category><![CDATA[hspd12]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[smartcard]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1378</guid>
		<description><![CDATA[<p>If you are running Linux or Mac there is a good chance you haven&#8217;t been touching my CAC, otherwise known as Common Access Card. George Bush signed <a href="http://www.dhs.gov/xabout/laws/gc_1217616624097.shtm" target="_blank">HSPD-12</a> way back in 2004 to mandate the usage of CAC and multifactor authentication on federal networks. The DoD giggled as it was already deploying limited installs [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1379" class="wp-caption alignleft" style="width: 125px"><a href="http://geekyschmidt.com/wp-content/uploads/2010/12/3.jpeg" rel="lightbox[1378]"><img class="size-full wp-image-1379 " style="margin-top: 2px; margin-bottom: 2px; border: 2px solid black;" title="3" src="http://geekyschmidt.com/wp-content/uploads/2010/12/3.jpeg" alt="" width="115" height="92" /></a><p class="wp-caption-text">For there record if you say &quot;CAC Card&quot; in my presence you will be &quot;SOL Luck&quot; talking again soon.</p></div>
<p>If you are running Linux or Mac there is a good chance you haven&#8217;t been touching my CAC, otherwise known as Common Access Card. George Bush signed <a href="http://www.dhs.gov/xabout/laws/gc_1217616624097.shtm" target="_blank">HSPD-12</a> way back in 2004 to mandate the usage of CAC and multifactor authentication on federal networks. The DoD giggled as it was already deploying limited installs at choice commands and was way ahead of the curve. The rest of the government and corporate entities are starting to roll-out the installs and a common theme I see is lack of heterogenous OS support. In this day and age your CIO/CTO/CISO must think beyond what the Microsoft sales lead tells them and think of the user base. Here is a big hint to save you from looking silly &#8211; You can&#8217;t say iOS/Android development is important to your divisions and then mandate they use Windows computers to comply with your SmartCard policy. I only mention that having sat in the room when the mobile development PM had to make his leadership aware they were basically shutting his group down.</p>
<p>The great thing about the OSS community is they recognize the shortfall in the SmartCard support and have risen to the challenge. <a href="http://www.opensc-project.org/opensc" target="_blank">OpenSC</a> has made great strides in supporting the technology for authentication and SSO type installs. I can personally vouch that the instructions below will allow you use your SmartCard on the worlds second largest IT network with no trouble. There are commercial  packages that will provide nice GUI and support plans, but if your enterprise just has a few geeks in the basement needing support, the ROI may not be worth it. A few gotcha&#8217;s to be aware of:</p>
<ul>
<li>While the site states Linux/Mac support; Linux is really the only full featured platform</li>
<li>Snow Leopard requires the beta builds. Apple changed the crypto mechanism from 10.5 to 10.6 and Safari is no longer supported. If you are using your SmartCard for web-based applications you must use Firefox</li>
<li>Ensure your card reader is supported. If you are a Dell house then the Cherry Keyboards with built-in SmartCard reader work great. Here is a <a href="http://www.opensc-project.org/opensc/wiki/SupportedHardware" target="_blank">full list.</a></li>
<li>If you are scared of the Command Line I recommend you skip this and look at a commercial package instead</li>
</ul>
<p>Instructions for Install on Snow Leopard:</p>
<ol>
<li>Download <a href="http://www.opensc-project.org/files/sca/experimental/sca-0.3.0-pre3.dmg">http://www.opensc-project.org/files/sca/experimental/sca-0.3.0-pre3.dmg</a></li>
<li>Mount the .dmg</li>
<li>Run the installer.</li>
<li>Launch Firefox.</li>
<li>In Firefox, select &#8220;Firefox -&gt; Preferences&#8221;, click on the &#8220;Advanced&#8221; tab, then click on &#8220;Encryption&#8221; tab, then click on &#8220;Security Devices&#8221;&#8230;</li>
<li>Click on &#8220;Load&#8221; button, then type in Module Name of &#8220;OpenSC PKCS#11 Module&#8221;</li>
<li>Found I had to manually type in the path to the library which is &#8220;/Library/OpenSC/lib/opensc-pkcs11.so&#8221;</li>
<li>Click OK, then quit and relaunch Firefox.</li>
<li>Connect to a website that requires SmartCard access using Firefox, select to use &#8220;SecureBadge&#8221;. It will ask for your PIN, then will authenticate you.</li>
</ol>
<p>Instructions for Debian-based Distro IE Ubuntu:</p>
<ol>
<li>As root or with sudo: apt-get install opensc mozilla-opensc libp11</li>
<li>Launch Firefox.</li>
<li>In Firefox, select &#8220;Firefox -&gt; Preferences&#8221;, click on the &#8220;Advanced&#8221; tab, then click on &#8220;Encryption&#8221; tab, then click on &#8220;Security Devices&#8221;&#8230;</li>
<li>Click on &#8220;Load&#8221; button, then type in Module Name of &#8220;OpenSC PKCS#11 Module&#8221;</li>
<li>Found I had to manually type in the path to the library which is &#8220;/usr/lib/onepin-opensc-pkcs11.so&#8221;</li>
<li>Click OK, then quit and relaunch Firefox.</li>
<li>Connect to a website that requires SmartCard access using Firefox, select to use &#8220;SecureBadge&#8221;. It will ask for your PIN, then will authenticate you.</li>
</ol>
<p>These are really the first few steps to getting SmartCards working. If you can access the websites using your card then you are just a few steps away from loading the required PAM modules and integrating your systems into Active Directory. That blog post is more likely to be part of a book than online as it is VERY extensive. Feel free to drop me any questions you might have!</p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2010/12/04/have-you-been-using-my-cac/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multi-core Security</title>
		<link>http://geekyschmidt.com/2010/09/08/multi-core-security</link>
		<comments>http://geekyschmidt.com/2010/09/08/multi-core-security#comments</comments>
		<pubDate>Wed, 08 Sep 2010 15:04:47 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Techie]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[multicore]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[selinux]]></category>

		<guid isPermaLink="false">http://geekyschmidt.com/?p=1262</guid>
		<description><![CDATA[<p>A question from a distinguished colleague of mine:</p> <p>Q: Some security group is claiming that locking apps down to a single cpu is more secure that multi-threaded apps.  Is there any basis in fact that I don’t know of or is this as ridiculous as I think it is? &#8211; Distinguished Dude</p> <p>A: It is [...]]]></description>
			<content:encoded><![CDATA[<p>A question from a distinguished colleague of mine:</p>
<p><em><strong>Q:</strong> Some security group is claiming that locking apps down to a single cpu is more secure that multi-threaded apps.  Is there any basis in fact that I don’t know of or is this as ridiculous as I think it is? &#8211; Distinguished Dude</em></p>
<p><em><strong>A: </strong></em><span style="font-size: 13.3333px;">It is called Side Channel Attacks…thus far its only a theory that has no known in the wild exploit</span></p>
<p><span style="font-size: 13.3333px;">In light of the potential for information to be leaked across con- text switches, especially via the L2 and larger cache(s), we also recom- mend that operating systems provide some mechanism for processes to request special “secure” treatment, which would include flushing all caches upon a context switch. It is not immediately clear whether it is possible to use the occupancy of the cache across context switches as a side channel, but if an unprivileged user can cause his code to pre-empt a cryptographic operation (e.g., by operating with a higher scheduling priority and being repeatedly woken up by another process), then there is certainly a strong possibility of a side channel</span></p>
<p><a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-0109">http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-0109</a></p>
<p>The idea is that if you don&#8217;t clear your threads then you could leave it open to be snooped. The issue with this idea though is that Hyperthreading is by nature a single CPU issue. Single CPU isn&#8217;t the problem in as far as threads are the issue. The problem is the ability for CPU to utilize multicores. Multicore does have security issues. Locking a process to a single core still doesn&#8217;t help as the memory bus is still shared in the architecture. In order to truly be secure you must use Selinux to lock down the memory, address space, CPU cycles, and FACL</p>
<p>Nick</p>
]]></content:encoded>
			<wfw:commentRss>http://geekyschmidt.com/2010/09/08/multi-core-security/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

