<?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>Schadenfreude &#187; security</title>
	<atom:link href="http://www.ralree.com/tag/security/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ralree.com</link>
	<description>Malicious enjoyment derived from observing someone else's misfortune</description>
	<lastBuildDate>Sun, 28 Feb 2010 04:18:37 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Implementing Mozilla&#8217;s Content Security Policy</title>
		<link>http://www.ralree.com/2009/06/30/implementing-mozillas-content-security-policy/</link>
		<comments>http://www.ralree.com/2009/06/30/implementing-mozillas-content-security-policy/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 14:00:38 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[site5]]></category>
		<category><![CDATA[vulnerability]]></category>
		<category><![CDATA[xss]]></category>

		<guid isPermaLink="false">http://www.ralree.com/?p=22601</guid>
		<description><![CDATA[I recently discovered this page, which describes Mozilla&#8217;s solution for prevention of XSS (Cross-Site Scripting) available as a Firefox Extension.  Here&#8217;s the HTTP response from my site:
hank@tardis:~$ wget -S http://www.ralree.com
--2009-06-30 09:52:13--  http://www.ralree.com/
Resolving www.ralree.com... 74.54.115.108
Connecting to www.ralree.com&#124;74.54.115.108&#124;:80... connected.
HTTP request sent, awaiting response...
 HTTP/1.1 200 OK
 Date: Tue, 30 Jun 2009 13:49:54 GMT
 Server: Apache/2.2.11 (Unix) mod_ssl/2.2.11 [...]]]></description>
			<content:encoded><![CDATA[<p>I recently discovered <a href="http://people.mozilla.org/~bsterne/content-security-policy/index.html">this page</a>, which describes Mozilla&#8217;s solution for prevention of XSS (Cross-Site Scripting) available as a Firefox Extension.  Here&#8217;s the HTTP response from my site:</p>
<pre>hank@tardis:~$ wget -S http://www.ralree.com
--2009-06-30 09:52:13--  http://www.ralree.com/
Resolving www.ralree.com... 74.54.115.108
Connecting to www.ralree.com|74.54.115.108|:80... connected.
HTTP request sent, awaiting response...
 HTTP/1.1 200 OK
 Date: Tue, 30 Jun 2009 13:49:54 GMT
 Server: Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.7a Phusion_Passenger/2.1.3
   mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635
 X-Powered-By: PHP/5.2.8
 X-Pingback: http://www.ralree.com/newblog/xmlrpc.php
 Last-Modified: Tue, 30 Jun 2009 13:49:21 GMT
 <span style="color: #ff0000;">X-Content-Security-Policy: allow self; img-src *; object-src *.ralree.com
  *.ralree.info; script-src *.ralree.com *.ralree.info pagead2.googlesyndication.com
  friendfeed.com; style-src *.ralree.com *.ralree.info</span>
 Content-Length: 57457
 Keep-Alive: timeout=5, max=100
 Connection: Keep-Alive
 Content-Type: text/html; charset=UTF-8</pre>
<p>As you can see, my content security policy is sent as an HTTP header on all HTTP responses from my site.  I basically stole an example from <a href="http://people.mozilla.org/~bsterne/content-security-policy/details.html#examples">this page</a>.  I&#8217;ve attached it in the .htaccess file in my site&#8217;s root, before everything else in there, like so:</p>
<pre>&lt;IfModule mod_headers.c&gt;
Header set X-Content-Security-Policy "allow self; img-src *; object-src *.ralree.com *.ralree.info; script-src *.ralree.com *.ralree.info pagead2.googlesyndication.com friendfeed.com; style-src *.ralree.com *.ralree.info"
&lt;/IfModule&gt;</pre>
<p>I highly recommend everyone with commenting activated on their blog enable this, since XSS is a serious pain.  This seems to work very well on Site5, where mod_headers was simply enabled out of the box.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ralree.com/2009/06/30/implementing-mozillas-content-security-policy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pitfalls with digital health records</title>
		<link>http://www.ralree.com/2009/04/08/pitfalls-with-digital-health-records/</link>
		<comments>http://www.ralree.com/2009/04/08/pitfalls-with-digital-health-records/#comments</comments>
		<pubDate>Thu, 09 Apr 2009 01:36:38 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[government]]></category>
		<category><![CDATA[health]]></category>
		<category><![CDATA[healthcare]]></category>
		<category><![CDATA[politics]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.ralree.com/?p=22497</guid>
		<description><![CDATA[The more I hear about digital national health records, the more I worry about them with regards to security.  Various interpretations of the new legislation in the 2009 Stimulus bill could mean anything from implementing something like SAFEHealth, a decentralized system, to something like Google Health, which would centralize medical records.  I expect [...]]]></description>
			<content:encoded><![CDATA[<p>The more I hear about digital national health records, the more I worry about them with regards to security.  Various interpretations of the new legislation in the 2009 Stimulus bill could mean anything from implementing something like <a href="http://www.safehealthinfo.org/default.htm">SAFEHealth</a>, a decentralized system, to something like Google Health, which would centralize medical records.  I expect that a decentralized system will not be what the government will choose.  Proper usage of a decentralized system would be fine, but removes a lot of the utility promised by proponents of electronic health records, such as the possibility of access to updated health records from anywhere.  I&#8217;d like to start off with an alarming quote I found in <a href="http://www.technologyreview.com/biotech/21428/">this interview</a> with Karen Bell, director of the Office of Health IT Adoption at the U.S. Department of Health and Human Services:</p>
<blockquote><p>TR: What about the public-health benefits? Systems that house large quantities of patient data could enable new types of research studies.</p>
<p>KB: Absolutely, that&#8217;s something I get really excited about. It will totally break open our knowledge base. For example, I have been diagnosed with low-pressure glaucoma, which is fairly unusual. No one knows what causes it. I would love to be able to search the system for anyone with this form of glaucoma and start to look for similarities.</p></blockquote>
<p><span id="more-22497"></span><br />
I&#8217;d love to be able to do that too, except it would potentially violate the privacy rights of all of those individuals if they hadn&#8217;t agreed to specifically let you see their records.  If they were to elect to share their information to help others find similarities as she suggested, that would be fine, but we should not assume everyone will do that, and we would have to have a process for this election upon diagnosis.</p>
<p>The first issue to cover is whether the Internet will be used as the medium of record transfer, if point-to-point connections will be established using the phone system or another network, or if an entirely new network will be created to facilitate these transfers, like the financial network.  This article assumes the first option, especially since citizens will supposedly have access to the information online.  A separate network would be a much better solution, but would cost much more to deploy.</p>
<h2>Why does it matter?</h2>
<p>What are the non-privacy-related implications of Internet-accessible health records vs. them being on paper in a drawer?  Most of them have to do with hacking, bribery and blackmail.  Let&#8217;s say someone pays the Database Administrator of the health system $1,000 to change your health records to indicate you saw the doctor about gonorrhea (or they simply use a stolen doctor&#8217;s account, or they&#8217;re a hacker, etc. etc.).  Now, they give you a call, letting you know that they&#8217;ll tell your wife unless you pay $10,000.  Blackmail is a huge possibility.  This is possible now, but only by those who work with patient information physically.</p>
<p>One effect of the centralized hackable database of health records would be the illegal issuance of prescriptions for drugs like Valium, Oxycontin, etc. for a fee. All that would have to happen is a falsified entry into the database, and you can go down to the store and pick up your bottle. I don&#8217;t necessarily oppose loosening rules on prescription drugs, but creating a new electronic black market for health record falsification could prove dangerous. After considering this possibility further, it would be possible to remove prescriptions from the system as well, possibly endangering lives.</p>
<h2>So we should just use paper?  Come on!</h2>
<p>Now, I&#8217;m not necessarily against digitizing health records.  If each citizen, on the initialization of their record, was given a private key, and all the records were encrypted with the matched public key, and kept in a large central database, that would be fine.  Yet, there are problems with this too since in an emergency, the health records wouldn&#8217;t be accessible unless the patient was conscious and able to type their passphrase.  Therefore, there would have to be an override of some sort, which would destroy the security of the system.  This override could be a &#8220;health safety deposit box&#8221; provided to patients optionally by a private corporation, which would contain their passphrase for emergency use, and would be authorized for query by the living will of the patient.  This is the only possible way I can see for centralized health records to be implemented securely, but it seems to be unworkable at the moment.</p>
<p>So what about decentralization, which is what we currently have with paper and with the SAFEHealth system.  If the records were kept by the doctor, and encrypted with both his and the patient&#8217;s public keys (for patient confidentiality), that would be secure.  Of course, assuming the medium of transfer is the Internet, the decryption and changes would have to be done on a standalone computer to prevent the cleartext from being retrievable from the Internet, and any transfer to another office would involve re-encrypting the files with the other doctor&#8217;s public key, transferring of the result to an Internet-enabled machine, and the reverse process on the other end to read the records.  Because this is painful and time-consuming, doctors and administrative assistants (I like &#8217;secretaries&#8217; better, but whatever) would obviously skirt the security here.  And human involvement to decrypt would still be needed in emergencies.  I&#8217;ve just sent an email to SAFEHealth asking for more information about their system:</p>
<blockquote><p>Hello,<br />
I&#8217;m interested in learning more about how your system works at a deeply technical level.  Could you please point me to an explanation of exactly how records are stored, accessed, encrypted, decrypted, which keys are used, who generates those keys, and what network protocols are used to access the information?  Thanks.</p></blockquote>
<p>The only workable solution seems to be the patient signing away the rights of the government to make his/her health records potentially public information.  We&#8217;ve seen various scandals involving medical industry employees already, like <a href="http://www.scmagazineus.com/Octomoms-hospital-records-accessed-15-workers-fired/article/129820/">Octomom</a>.  Many people would sign this, especially if they went to different doctors all the time.  Many people don&#8217;t care about their medical records being public, so they&#8217;d do it for convenience.  But at a process for removal from the system at any time should be available for all patients.  A system like this might complicate seeking diagnosis for things like alcoholism, opiate addiction, and mental health for fear that one&#8217;s employer might find out about the condition.  Any patient should be able to elect to use paper instead, and be responsible for the transfer of his/her medical records to medical professionals for treatment.</p>
<h2>But it&#8217;s for your own good!</h2>
<p>A dangerous assumption is that we must force the patient to allow doctors access to their medical records for his/her own good.  The fourth amendment exists to prevent this very thing from happening.  It could also be argued that random searches of homes would discover meth labs and would save children, but it is unacceptable in this country because of our natural right to privacy.  One way to assure access in case of emergency for those who have privacy concerns is by using a living will to allow access to the paper records assuming they&#8217;re filed somewhere accessible.  Private companies could provide medical record storage facilities for profit, and could be called in case of emergency need of the records (or as I described before, the passphrase to unlock the records).</p>
<p>If one thinks this article is scathing to the whole idea of digital health records, he/she should have a look at <a href="http://www.campaignforliberty.com/article.php?view=36">this one</a>.  While some of the same concerns and many more are brought up, different fears are addressed.  The corruption of government employees would also be a danger (which I touched on with the DBA bribe example earlier), but some of the later examples (the police officer having access) are a little unfounded and paranoid.</p>
<p>Microsoft and Google both have products for storing large amounts of health information.  When stories like <a href="http://www.technewsworld.com/story/Microsoft-Debuts-IE8-Only-to-Have-It-Hacked-66557.html">this</a> are appearing all the time, that really concerns me.  I&#8217;ll finish up with a good quote from <a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9126279&amp;source=NLT_AM">this article</a>.</p>
<blockquote><p>&#8220;Ironically, HIPAA creates felony penalties if a doctor or hospital abuses the data, but there&#8217;s absolutely no penalties for a Microsoft or a Google because they&#8217;re not covered by the law,&#8221; Brailer said. &#8220;It&#8217;s nothing that they&#8217;re doing wrong. It just shows you the state of mind of Congress when that rule was written 10 years ago, because they never ever envisioned there would be online services managing health information.</p>
<p>&#8220;I think that&#8217;s a very high priority, because one consequence of the President-elect ramping up people&#8217;s attention to this is that people will come back to a lot of their fundamental worries about the protection of their health information,&#8221; Brailer said.</p></blockquote>
<p>I look forward to comments and suggestions for this post.  This is definitely a hot-button issue at the moment, and any constructive criticism will be appreciated, and probably responded to.</p>
<h2>Update 4/10/2009</h2>
<p>So, Lawrence Garber,  			Principal Investigator for SAFE Health, and I have had a great email thread going on the security details of their system.  It sounds pretty good, but there are still concerns.  Apparently, they use HTTPS over a VPN, which isn&#8217;t a bad solution for network traffic security.  Yet, the last response I received from him indicated the following:</p>
<blockquote><p>There&#8217;s no need or requirement to encrypt the data on the server because it&#8217;s within our physically, password-protected, and firewall secured datacenter. However passwords and credentials are encrypted.</p></blockquote>
<p>So, again, we&#8217;re back to the unhackable datacenter with unencrypted data idea, which, <a href="http://media.www.thenorthernlight.org/media/storage/paper960/news/2006/07/25/News/Uaf-Server.Hack.Discovered.Last.Year-2542582.shtml">from personal experience</a>, isn&#8217;t a good idea.</p>
<div class="im"></div>
]]></content:encoded>
			<wfw:commentRss>http://www.ralree.com/2009/04/08/pitfalls-with-digital-health-records/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RSA Made Easy</title>
		<link>http://www.ralree.com/2009/02/27/rsa-made-easy/</link>
		<comments>http://www.ralree.com/2009/02/27/rsa-made-easy/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 05:41:07 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[rsa]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.ralree.com/?p=22383</guid>
		<description><![CDATA[After obsessing over it today, I decided to write a quick primer on RSA Encryption you can do in your head.  It&#8217;s pretty simple, and to the point.  The numbers are very small.  Try it out!
I plan to write some code implementing the algorithm.  That should be fun.
]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-22385" title="Lock Icon" src="http://www.ralree.com/newblog/wp-content/uploads/2009/02/lock.png" alt="Lock Icon" width="128" height="128" />After obsessing over it today, I decided to write <a href="http://github.com/hank/life/blob/d104176046f46d96399c9980213b3a2e6b3cd17b/docs/RSA.Fun.rdoc">a quick primer</a> on RSA Encryption you can do in your head.  It&#8217;s pretty simple, and to the point.  The numbers are very small.  Try it out!</p>
<p>I plan to write some code implementing the algorithm.  That should be fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ralree.com/2009/02/27/rsa-made-easy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I&#8217;m the newest GSWoT GSI</title>
		<link>http://www.ralree.com/2007/07/19/i-m-the-newest-gswot-gsi/</link>
		<comments>http://www.ralree.com/2007/07/19/i-m-the-newest-gswot-gsi/#comments</comments>
		<pubDate>Thu, 19 Jul 2007 05:01:00 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[gpg]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[gswot]]></category>
		<category><![CDATA[pgp]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[trust]]></category>

		<guid isPermaLink="false">http://www.ralree.info/2007/10/13/i-m-the-newest-gswot-gsi</guid>
		<description><![CDATA[


I have joined the GSWoT.  I am the newest Gossamer Spider Web of Trust Introducer!  This is a great honor, and I&#8217;d like to thank Kara Denizi for giving me the chance to join.  
Above, I&#8217;ve posted the current state of the keyring.  It also includes an outlier from my personal [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ralree.info/assets/2007/7/19/gswot.neato.jpg"><br />
<img src="http://ralree.info/assets/2007/7/19/gswot.neato.small.jpg" /><br />
</a></p>
<p>I have joined the <a href="http://www.gswot.org">GSWoT</a>.  I am the newest Gossamer Spider Web of Trust Introducer!  This is a great honor, and I&#8217;d like to thank Kara Denizi for giving me the chance to join.  </p>
<p>Above, I&#8217;ve posted the current state of the keyring.  It also includes an outlier from my personal keyring.</p>
<p>Props to <a href="http://www.chaosreigns.com/code/sig2dot/usage.html">sig2dot</a> for creating that graph.  Here&#8217;s the commands:</p>
<pre><code>
wget -O gswot.keyring "http://biglumber.com/x/web?keyring=5802;download=1"
sudo apt-get install graphviz imagemagick
wget http://www.chaosreigns.com/code/sig2dot/sig2dot.pl
gpg --list-sigs --keyring ./gswot.keyring | perl sig2dot.pl &gt; gswot.dot
neato -Tps gswot.dot &gt; gswot.neato.ps
convert gswot.neato.ps gswot.neato.jpg
</code></pre>
<p>Pretty easy &#8211; I might have to use this in the future for more graphs and digraphs&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ralree.com/2007/07/19/i-m-the-newest-gswot-gsi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO: Export and Import Private GPG Keys</title>
		<link>http://www.ralree.com/2007/03/07/howto-export-and-import-private-gpg-keys/</link>
		<comments>http://www.ralree.com/2007/03/07/howto-export-and-import-private-gpg-keys/#comments</comments>
		<pubDate>Wed, 07 Mar 2007 19:34:00 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[gnupg]]></category>
		<category><![CDATA[gpg]]></category>
		<category><![CDATA[pgp]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.ralree.info/2007/10/13/howto-export-and-import-private-gpg-keys</guid>
		<description><![CDATA[I had a problem today.  I wanted to encrypt something with my GPG Key.  It was only on my laptop.  Here&#8217;s what I did:

  gpg --export-secret-keys &#62; gpgkeyfile
  gpg -c gpgkeyfile
  shred -u gpgkeyfile

Then move gpgkeyfile.gpg to another computer.  To import them again:

  gpg -d gpgkeyfile.gpg &#62; [...]]]></description>
			<content:encoded><![CDATA[<p>I had a problem today.  I wanted to encrypt something with my GPG Key.  It was only on my laptop.  Here&#8217;s what I did:</p>
<pre><code>
  gpg --export-secret-keys &gt; gpgkeyfile
  gpg -c gpgkeyfile
  shred -u gpgkeyfile
</code></pre>
<p>Then move <code>gpgkeyfile.gpg</code> to another computer.  To import them again:</p>
<pre><code>
  gpg -d gpgkeyfile.gpg &gt; gpgkeyfile
  gpg --import gpgkeyfile
</code></pre>
<pre><code>
gpg: key 9140A8C7: secret key imported
gpg: key 9140A8C7: *** 1 new signature
gpg: key 5EF4A221: secret key imported
gpg: key 5EF4A221: public key *** imported
gpg: key 46C171A0: secret key imported
gpg: key 46C171A0: public key *** imported
gpg: Total number processed: 3
gpg:               imported: 2
gpg:         new signatures: 1
gpg:       secret keys read: 3
gpg:   secret keys imported: 3
</code></pre>
<p>Woo hoo!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ralree.com/2007/03/07/howto-export-and-import-private-gpg-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress is unsafe &#8211; pwned AGAIN!</title>
		<link>http://www.ralree.com/2007/03/03/wordpress-is-unsafe-pwned-again/</link>
		<comments>http://www.ralree.com/2007/03/03/wordpress-is-unsafe-pwned-again/#comments</comments>
		<pubDate>Sat, 03 Mar 2007 10:18:00 +0000</pubDate>
		<dc:creator>Erik</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.ralree.info/2007/10/13/wordpress-is-unsafe-pwned-again</guid>
		<description><![CDATA[Well, it&#8217;s official:
Wordpress is a joke!!
Mephisto Wins!
]]></description>
			<content:encoded><![CDATA[<p>Well, it&#8217;s official:</p>
<h1>Wordpress is <a href="http://wordpress.org/development/2007/03/upgrade-212/">a joke!!</a></h1>
<p>Mephisto <strong>Wins!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ralree.com/2007/03/03/wordpress-is-unsafe-pwned-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.394 seconds -->
