<?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>Ten Points Random &#187; Jon</title>
	<atom:link href="http://blog.asdfa.net/author/jon/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.asdfa.net</link>
	<description>Too many monitors, dragons, interesting human interfaces and pointless distractions for one guy.</description>
	<lastBuildDate>Mon, 22 Mar 2010 05:46:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Too Good &#8211; Simulated MJPEG Video Streaming</title>
		<link>http://blog.asdfa.net/too-good-simulated-mjpeg-video-streaming/</link>
		<comments>http://blog.asdfa.net/too-good-simulated-mjpeg-video-streaming/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 05:46:34 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[lookwhatibuilt]]></category>
		<category><![CDATA[screen]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=229</guid>
		<description><![CDATA[This was just too good.  I was playing with video codes for real-time streaming of data off my webcam-crane-contraption and decided to try MJPEG.  I wasn&#8217;t a fan of rewriting code to put it in the proper format, so for now I thought I&#8217;d just set a JPEG to refresh frequently.
So I did.
And it worked, [...]]]></description>
			<content:encoded><![CDATA[<p>This was just too good.  I was playing with video codes for real-time streaming of data off my webcam-crane-contraption and decided to try MJPEG.  I wasn&#8217;t a fan of rewriting code to put it in the proper format, so for now I thought I&#8217;d just set a JPEG to refresh frequently.</p>
<p>So I did.</p>
<p>And it worked, moderately well:</p>
<p><img class="aligncenter size-medium wp-image-231" title="Streamin' the videos" src="http://blog.asdfa.net/wp-content/uploads/2010/03/IMG_1275_anon-500x375.jpg" alt="" width="500" height="375" /></p>
<p>The best part though: It also works on my iPod! Plain &#8216;ol Safari and JavaScript.  I thought that was pretty cool.  I guess Google, in building Google Chrome to handle the next generation of applications, wasn&#8217;t too far off the path.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/too-good-simulated-mjpeg-video-streaming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Camera Crane WIP</title>
		<link>http://blog.asdfa.net/camera-crane-wip/</link>
		<comments>http://blog.asdfa.net/camera-crane-wip/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 03:43:32 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[lookwhatibuilt]]></category>
		<category><![CDATA[wip]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=222</guid>
		<description><![CDATA[Let&#8217;s see, so I bought a house, switched to Linux and now am hacking away at this:
Codename: TelePlaymutte.  &#8216;Cause I wanna play games remotely.  VOIP, CheckersOIP, DNDOIP, etc.  
]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s see, so I bought a house, switched to Linux and now am hacking away at this:</p>
<div id="attachment_223" class="wp-caption alignnone" style="width: 510px"><a href="http://blog.asdfa.net/wp-content/uploads/2010/03/IMG_1253.jpg"><img class="size-medium wp-image-223" title="Camera Crane" src="http://blog.asdfa.net/wp-content/uploads/2010/03/IMG_1253-500x375.jpg" alt="Camera Crane" width="500" height="375" /></a><p class="wp-caption-text">K&#39;nex, RC servos, a Phidget, and if you look closely, me!</p></div>
<p>Codename: TelePlaymutte.  &#8216;Cause I wanna play games remotely.  VOIP, CheckersOIP, DNDOIP, etc. <img src='http://blog.asdfa.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/camera-crane-wip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Halloween is so much fun</title>
		<link>http://blog.asdfa.net/halloween-is-so-much-fun/</link>
		<comments>http://blog.asdfa.net/halloween-is-so-much-fun/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 01:45:31 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[Fantasy]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[lookwhatibuilt]]></category>
		<category><![CDATA[mystery]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=207</guid>
		<description><![CDATA[So, this last Halloween I had some fun with the kiddos that come around asking for candy.
Last year I did something similar, but simpler.  This year was a bit more complex.
It seemed simple enough a task for the trick-or-treater: walk in, enjoy the spooky ambiance (and random lasers stabbing thorough the upper level of fog), [...]]]></description>
			<content:encoded><![CDATA[<p>So, this last Halloween I had some fun with the kiddos that come around asking for candy.</p>
<div id="attachment_209" class="wp-caption alignnone" style="width: 510px"><a href="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0970.JPG"><img class="size-medium wp-image-209" title="Welcome to the haunt" src="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0970-500x375.jpg" alt="Welcome to the haunt" width="500" height="375" /></a><p class="wp-caption-text">My garage this past Halloween</p></div>
<p>Last year I did something similar, but simpler.  This year was a bit more complex.</p>
<p>It seemed simple enough a task for the trick-or-treater: walk in, enjoy the spooky ambiance (and random lasers stabbing thorough the upper level of fog), grab a reward from the yellow glowing pumpkin, and move on to the next house.</p>
<p>Right?</p>
<div id="attachment_210" class="wp-caption alignnone" style="width: 510px"><a href="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0974.JPG"><img class="size-medium wp-image-210" title="Lasers overhead" src="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0974-500x375.jpg" alt="Looking up as you walk in" width="500" height="375" /></a><p class="wp-caption-text">Looking up as you walk in</p></div>
<p>Not with me around.  (Haha &#8211; trick or treak? Trick!)  With the help of my sister, we ushered all the, um, victims into the cage (a repurposed dog &#8220;kennel&#8221;).  Once the kids were sure the smiling Goth-dressed-female wasn&#8217;t going to bite them, and that everyone was clear of the door, the lights would suddenly drop out.  An enormous thunder and lightning strike from directly in front of them would illuminate a monster, arms outstretched and ready to grab them!  Before anyone could but turn around, the door to the chain-link cage would swing shut, chains clanking loudly against the metal.  You were trapped!</p>
<div id="attachment_211" class="wp-caption alignnone" style="width: 510px"><a href="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0979.JPG"><img class="size-medium wp-image-211" title="Silhouette attack" src="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0979-500x375.jpg" alt="Though you could get away without a trick?  Didja?" width="500" height="375" /></a><p class="wp-caption-text">Though you could get away without a trick?  Didja?</p></div>
<p>And then . . . we let them go.  We didn&#8217;t scare the really litl&#8217; ones.</p>
<p><a href="http://blog.asdfa.net/wp-content/uploads/2009/11/Halloween09.avi">Here&#8217;s</a> an AVI movie, I&#8217;ll have to get me a flash player setup sometime.  The microphone normalises stuff too much so you can&#8217;t really hear things.</p>
<p>By the end we had fog, black light, strobes, lasers, subs, amps, a laptop . . . so pretty much an instant rave party afterwards. <img src='http://blog.asdfa.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<div id="attachment_212" class="wp-caption alignnone" style="width: 385px"><a href="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0984-copy.JPG"><img class="size-medium wp-image-212" title="Behind the Scenes" src="http://blog.asdfa.net/wp-content/uploads/2009/11/IMG_0984-copy-375x500.jpg" alt="Behind the scenes" width="375" height="500" /></a><p class="wp-caption-text">Behind the scenes</p></div>
<p><a href="../wp-content/uploads/2009/11/MVI_0266.AVI"></a>Thanks to the fam for helping get things setup!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/halloween-is-so-much-fun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://blog.asdfa.net/wp-content/uploads/2009/11/Halloween09.avi" length="26911278" type="video/x-msvideo" />
		</item>
		<item>
		<title>Life has its happens</title>
		<link>http://blog.asdfa.net/life-has-its-happens/</link>
		<comments>http://blog.asdfa.net/life-has-its-happens/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 02:22:13 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[life]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=204</guid>
		<description><![CDATA[Life happens and come and goes around sometimes, I guess. Today half the team I work on, including a co-worker that I had known for quite some time, was laid off. Bam, just like that, I never even saw it coming.
Life is mean sometimes, but what would life be&#8230;
]]></description>
			<content:encoded><![CDATA[<p>Life happens and come and goes around sometimes, I guess. Today half the team I work on, including a co-worker that I had known for quite some time, was laid off. Bam, just like that, I never even saw it coming.<br />
Life is mean sometimes, but what would life be&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/life-has-its-happens/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Several hundred dollars of keybard and some PVC pipe later&#8230;</title>
		<link>http://blog.asdfa.net/several-hundred-dollars-of-keybard-and-some-pvc-pipe-later/</link>
		<comments>http://blog.asdfa.net/several-hundred-dollars-of-keybard-and-some-pvc-pipe-later/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 19:26:44 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[music]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=200</guid>
		<description><![CDATA[Mmmm.  Audiodelicious.
MY new keyboard, the one on the bottom, is full-size, complete with weighted (scaled hammer) keys.  Very nice to play.
]]></description>
			<content:encoded><![CDATA[<div id="attachment_199" class="wp-caption alignnone" style="width: 509px"><a href="http://blog.asdfa.net/wp-content/uploads/2009/10/keybd.jpg"><img class="size-medium wp-image-199" title="keybd" src="http://blog.asdfa.net/wp-content/uploads/2009/10/keybd-499x287.jpg" alt="Keyboards" width="499" height="287" /></a><p class="wp-caption-text">My music toys</p></div>
<p>Mmmm.  Audiodelicious.</p>
<p>MY new keyboard, the one on the bottom, is full-size, complete with weighted (scaled hammer) keys.  Very nice to play.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/several-hundred-dollars-of-keybard-and-some-pvc-pipe-later/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GIMP Lives!</title>
		<link>http://blog.asdfa.net/gimp-lives/</link>
		<comments>http://blog.asdfa.net/gimp-lives/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 17:29:29 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[art]]></category>
		<category><![CDATA[stupid]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=197</guid>
		<description><![CDATA[One of the things that I&#8217;ve hated about my favorite photo editing program since they release version 2.6 was that the tool boxes jumped on top of everything (like always-on-top for just the application).  Despite my best efforts, I never found the option to change that until today.
Because the option is named very, very poorly. [...]]]></description>
			<content:encoded><![CDATA[<p>One of the things that I&#8217;ve hated about my favorite photo editing program since they release version 2.6 was that the tool boxes jumped on top of everything (like always-on-top for just the application).  Despite my best efforts, I never found the option to change that until today.</p>
<p>Because the option is named very, very poorly. <img src='http://blog.asdfa.net/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>As is pointed out <a href="http://www.mail-archive.com/gimp-user@lists.xcf.berkeley.edu/msg15528.html">here</a>, the name of the option you are looking for that will change the window behavoir back to how it used to be in previouse versions is hidden under Edit -&gt; Preferences -&gt; Window Management -&gt; &#8220;Window Manager Hints&#8221;.  Yeah that&#8217;s right.  Poorly named to anyone but the developer that made it.  Under that change the Hint for toolbox/other docks options to &#8220;Normal Window&#8221; instead of &#8220;Utility Window&#8221;.</p>
<p>Restart and there you go!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/gimp-lives/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A car</title>
		<link>http://blog.asdfa.net/a-car/</link>
		<comments>http://blog.asdfa.net/a-car/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 05:47:29 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[driving]]></category>
		<category><![CDATA[life]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=193</guid>
		<description><![CDATA[
Pictured: Foreground: my new (used) car.  Background: my old (beaten) car.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.asdfa.net/wp-content/uploads/2009/09/IMG_0932.JPG"><img class="alignnone size-medium wp-image-194" title="IMG_0932" src="http://blog.asdfa.net/wp-content/uploads/2009/09/IMG_0932-500x375.jpg" alt="IMG_0932" width="500" height="375" /></a></p>
<p>Pictured: Foreground: my new (used) car.  Background: my old (beaten) car.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/a-car/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zen Cart Fail</title>
		<link>http://blog.asdfa.net/zen-cart-fail/</link>
		<comments>http://blog.asdfa.net/zen-cart-fail/#comments</comments>
		<pubDate>Sat, 22 Aug 2009 01:33:17 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[stupid]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=182</guid>
		<description><![CDATA[Zen Cart messed up bad.  You can get into any old admin with no password!]]></description>
			<content:encoded><![CDATA[<p>On the list of stupid things to do and big security holes, one of the best (or worst) I&#8217;ve seen to date is one that was built into our beloved E-commerce solution: Zen Cart.</p>
<p><em>You don&#8217;t have to login to get into the admin.</em></p>
<p>I&#8217;ve tried it personally on versions 1.2.6 and 1.3.7, and to my knowledge, it works almost every other version.</p>
<p><span style="text-decoration: line-through;">I haven&#8217;t tested it myself, but I&#8217;ve looked through the files, and it looks like the most current version you can download from their website (1.3.8a) is also just as vulnerable</span>. (edit: I tried it, fortunately it&#8217;s not vulnerable.)</p>
<p>Most security holes require a little bit of knowledge of web technologies to exploit, but this one&#8217;s so bad, just about anyone can do it.  Here&#8217;s how stupid it is:</p>
<ol>
<li>Find your Zen Cart, say it&#8217;s http:/example.com/store</li>
<li>Find your admin.  Usually it&#8217;s /admin/</li>
<li>Choose an admin page.  How about sqlpatch.php?</li>
<li>Add /password_forgotten.php (versions 1.3) or /login.php (versions 1.2) to the end of that.</li>
<li>Visit it: http://example.com/store/admin/sqlpatch.php/password_forgotten.php</li>
<li>Bingo!  Full access without ever logging in.</li>
</ol>
<p>This is bad.  If you have Zen Cart on your site, PATCH IT NOW, before someone kinder than me <a href="http://www.google.com/search?hl=en&amp;q=%22Powered+by+Zen+Cart%22+or+%22The+Art+of+E-commerce%22&amp;aq=f&amp;oq=&amp;aqi=">goes looking</a> for you and uses this to take control of your hosting account.</p>
<h3>How it works:</h3>
<p>Most web servers stop processing the directory once they hit a (PHP) file.  This allows you to do things like example.com/index.php/some/random/pseudo/rewrite.  That&#8217;s fine.</p>
<p>But Zen Cart did it wrong.  When they go to check to see if you should be logged in they do this:  (code rewritten for simplicity)</p>
<pre>if(basename($PHP_SELF) != 'index.php' &amp;&amp;
   basename($PHP_SELF) != 'password_forgotten.php') {
  //Send them to the login page and exit
}</pre>
<p>Did you catch that?</p>
<p>They use basename() on PHP_SELF!  PHP_SELF is basically the request URI without the &#8220;search&#8221; variable on it. So, if I go to &#8220;http://example.com/store/admin/sqlpatch.php/password_forgotten.php&#8221;, PHP_SELF is &#8220;store/admin/sqlpatch.php/password_forgotten.php&#8221;</p>
<p>If I send that to basename (which is a string parsing function <em>only</em>), &#8220;sqlpatch.php&#8221; is considered part of the directory name and we get &#8220;password_forgotten.php&#8221; for the filename.  Zen Cart checks that and lo! It&#8217;s allowed!</p>
<p>What should have been used was $_SERVER['SCRIPT_FILENAME'] which will always give you the name of the currently executing &#8220;parent&#8221; script, not what the user typed in.</p>
<h3>Why this is bad:</h3>
<p>Zen Cart&#8217;s admin is great!  You can run SQL patches (SQL injection), upload files with various names (arbitrary code execution), and edit the template .php files for certain pages (XSS, arbitrary code execution,  etc.) all from the comfort of the admin!</p>
<p>Once someone gets in, it&#8217;s easy for a malicious user to to upload a shell script that does his/her mindless bidding, be that viral site attacking, spam bots, porn mirror, etc.</p>
<h3>The End of Zen Cart</h3>
<p>Of course the Zen Cart developers found out about it.  What was their <a href="http://www.zen-cart.com/forum/showthread.php?t=130161">advisement</a>?  That you should have <strong><span style="color: #ff0000;font-size:120%">changed the path to your admin folder</span></strong><span style="color: #808080;font-size:80%">, but since some of you don&#8217;t think that&#8217;s security we also made a patch.</span> (The wording is mostly mine, the font sizes, not so much.)</p>
<p>That&#8217;s you attitude towards something so critical as this?</p>
<p>I bid thee farewell Zen Cart.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/zen-cart-fail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nuking and Actions</title>
		<link>http://blog.asdfa.net/nuking-and-actions/</link>
		<comments>http://blog.asdfa.net/nuking-and-actions/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 02:24:35 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[crap]]></category>
		<category><![CDATA[time]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/?p=179</guid>
		<description><![CDATA[It&#8217;s not that nothing has been happening.
I just haven&#8217;t been writing about it.
Got some good stories, including the biggest hole in Zen Cart I&#8217;ve ever seen, a house I almost bought that was falling to pieces, and also, I bought a guitar.
But right now, I&#8217;m fed up enough with Windows Crapista.  So I&#8217;m gonna nuke [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s not that nothing has been happening.</p>
<p>I just haven&#8217;t been writing about it.</p>
<p>Got some good stories, including the biggest hole in Zen Cart I&#8217;ve ever seen, a house I almost bought that was falling to pieces, and also, I bought a guitar.</p>
<p>But right now, I&#8217;m fed up enough with Windows Crapista.  So I&#8217;m gonna nuke it and hope it can, after this, go back to performing simple tasks such as showing me the contents of a folder in less than 40 seconds.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/nuking-and-actions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Travelogue for 2009-07-17</title>
		<link>http://blog.asdfa.net/travelogue-for-2009-07-17/</link>
		<comments>http://blog.asdfa.net/travelogue-for-2009-07-17/#comments</comments>
		<pubDate>Sat, 18 Jul 2009 05:59:00 +0000</pubDate>
		<dc:creator>Jon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.asdfa.net/travelogue-for-2009-07-17/</guid>
		<description><![CDATA[
I think this is the first time in my life that I&#39;ve actually wanted to see about half the movies in the movie theater. #

Powered by Twitter Tools.
]]></description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>I think this is the first time in my life that I&#39;ve actually wanted to see about half the movies in the movie theater. <a href="http://twitter.com/sirbrialliance/statuses/2698116508">#</a></li>
</ul>
<p class="aktt_credit">Powered by <a href="http://alexking.org/projects/wordpress">Twitter Tools</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.asdfa.net/travelogue-for-2009-07-17/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
