<?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>Darknet - The Darkside &#187; Navaho Gunleg</title>
	<atom:link href="http://www.darknet.org.uk/author/navaho-gunleg/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.darknet.org.uk</link>
	<description>Ethical Hacking, Penetration Testing &#38; Computer Security</description>
	<lastBuildDate>Tue, 07 Feb 2012 18:34:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>AJAX: Is your application secure enough?</title>
		<link>http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/</link>
		<comments>http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/#comments</comments>
		<pubDate>Wed, 05 Apr 2006 09:55:38 +0000</pubDate>
		<dc:creator>Navaho Gunleg</dc:creator>
				<category><![CDATA[Countermeasures]]></category>
		<category><![CDATA[Exploits/Vulnerabilities]]></category>
		<category><![CDATA[Web Hacking]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Assessment]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[web-application-security]]></category>
		<category><![CDATA[web-applications]]></category>
		<category><![CDATA[web-security]]></category>
		<category><![CDATA[web2.0]]></category>
		<category><![CDATA[webapps]]></category>

		<guid isPermaLink="false">http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/</guid>
		<description><![CDATA[Introduction We see it all around us, recently. Web applications get niftier by the day by utilising the various new techniques recently introduced in a few web-browsers, like I.E. and Firefox. One of those new techniques involves using Javascript. More specifically, the XmlHttpRequest-class, or object. Webmail applications use it to quickly update the list of [...]]]></description>
			<content:encoded><![CDATA[<p><em><strong>Introduction</strong></em></p>
<p>We see it all around us, recently. Web applications get niftier by the day by utilising the various new techniques recently introduced in a few web-browsers, like I.E. and Firefox. One of those new techniques involves using Javascript. More specifically, the <code>XmlHttpRequest</code>-class, or object.</p>
<p><a href="http://mail.netscape.com/">Webmail</a> <a href="http://mail.google.com">applications</a> use it to quickly update the list of messages in your Inbox, while <a href="http://www.google.com/webhp?complete=1&amp;hl=en">other applications</a> use the technology to suggest various search-queries in real-time. All this without reloading the main, sometimes image- and banner- ridden, page. (That said, it will most probably be used by some of those ads as well.) </p>
<p>Before we go into possible weaknesses and things to keep in mind when implementing an AJAX enabled application, first a brief description of how this technology works.</p>
<p><em><strong>The Basics</strong></em></p>
<p>Asynchronous Javascript and XML, dubbed <em>AJAX</em> is basically doing this. Let me illustrate with an example, an email application. You are looking at your Inbox and want to delete a message. Normally, in plain HTML applications, the POST or GET request would perform the action, and re-locate to the Inbox, effectively reloading it.</p>
<p>With the <em>XmlHttpRequest</em>-object, however, this request can be done while the main page is still being shown. </p>
<p>In the background a call is made which performs the actual action on the server, and optionally responds with new data. (Note that this request can <em>only</em> be made to the web-site that the script is hosted on: it would leave massive DoS possibilities if I can create an HTML page that, using Javascript, can request thousands of concurrent web-pages from a web-site. You can guess what happens if a lot of people would visit that page.)</p>
<p><em><strong>The Question</strong></em></p>
<p>Some web-enabled applications, such as for email, do have pretty destructive functionality that could possibly be abused. The question is &#8212; will the average AJAX-enabled web-application be able to tell the difference between a <em>real</em> and a <em>faked</em> XmlHttpRequest? </p>
<p>Do <em>you</em> know if <em>your</em> recently developed AJAX-enabled or enhanced application is able to do this? And if so &#8212; <em>does it do this adequately</em>? </p>
<p>Do you even check <em>referrers</em> or some trivial token such as the <em>user-agent</em>? Chances are you do not even know. Chances are that other people, by now, <em>do</em>.</p>
<p><span id="more-143"></span>To be sure that the system you have implemented &#8212; or one you are interested in using &#8212; is properly secured, thus trustworthy, one has to &#8216;sniff around&#8217;.</p>
<p>Incidentally, the first time I discovered such a thing was in a lame preview function for a lame ringtone-site. Basically, the <em>XmlHttpRequest</em> URI&#8217;s &#8216;len&#8217; parameter specified the length of the preview to generate and it seemed like it was loading the original file. Entering this URI in a browser (well, actually, &#8216;<em>curl</em>&#8216;), specifying a very large value, one could easily grab all the files. </p>
<p>This is a fatal mistake: implement an AJAX interface accepting GET requests. GET requests are the easiest to fake. More on this later.</p>
<p>The question is &#8212; can we perform an action while somebody is <em>logged in</em> somewhere else. It is basically XSS/CSS (<em>Cross Site Scripting</em>) but then again, <em>it isn&#8217;t</em>. </p>
<p><em><strong>My Prediction</strong></em></p>
<p>Some popular applications I checked are hardened in such a way that they use some form of random sequence numbering: the server tells it, encoded, what the application should use as a sequence number when sending the next command. This is mostly obscured by Javascript and a pain in the ass to dissect &#8212; but not impossible.</p>
<p>And as you may have already noted: if there is <em>improper</em> authentication on the location called by the <em>XmlHttpRequest</em>-object, this would leave a possibility for malicious purpose. This is exactly where we can expect weaknesses and holes to arise.There should be proper authentication in place. At all times. </p>
<p>As all these systems are built by men, chances are this isn&#8217;t done properly.</p>
<p><em>HTTP traffic analysis</em><br />
Analysing HTTP traffic analysis with tools like <a href="http://www.ethereal.com">ethereal</a> (yeh I like GUIs so sue me) surely comes in handy to figure out whether applications you use are actually <em>safe from exploitation</em>. This application allows one to easily filter and follow TCP streams so one can properly analyse what is happening there. </p>
<p>If you want to investigate your <em>own</em> application, the use of a sniffer isn&#8217;t even necessary but I would suggest you let a colleague that hasn&#8217;t implemented it, play around with your app and a sniffer in an attempt to &#8216;break&#8217; through it.</p>
<p><div align="center"><script type="text/javascript"><!--
google_ad_client = "pub-3033787195489589";
/* Darknet-BodyRec */
google_ad_slot = "8649785837";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></p>
<p><em>Cookies</em><br />
Cookies are our friend when it comes to exploiting, I mean researching any vulnerabilities in AJAX implementations.</p>
<p>If the XmlHttp-interface is merely protected by cookies, exploiting this is all the easier: the moment you get the browser to make a request to that website, your browser is happily sending any cookies along with it. </p>
<p>Back to my earlier remark about a GET-requests being a pretty lame implementation: from a developers point of view, I can imagine one <em>temporary</em> accepts GET requests to be able to easily debug stuff without having to constantly enter irritating HTTP data using telnet. But when you are done with it you <em>really</em> should disable it immediately!</p>
<p>I could shove a GET request hidden in an image link. Sure the browser doesn&#8217;t understand the returned data which might not even be an image. But my browser <em>does</em> happily send any authenticating cookies, and the web-application on the other end <em>will</em> have performed some operation.</p>
<p>Using GET is a major mistake-a-to-make. POST is a lot better, as it harder to fake. The XmlHttpRequest can easily do a POST. But I cannot get a script, for instance I could have embedded one in this article, to do a POST request to another website because of the earlier noted restriction: <em>you can only request to the same web-site the web-application is on</em>. </p>
<p>One can modify its own browser, to make request to other websites, but it would be hard to get the browser on <em>somebody elses machine</em> to do this.</p>
<p><em><strong>Or would it?</strong></em></p>
<p>If proper authentication, or rather credential verification, still sucks, I can still set up a web-site that does the exact POST method that the AJAX interface expects. That <em>will</em> be accepted and the operation <em>will</em> be performed. Incidentally I have found a popular site that, so far, does not seem to have proper checks in place. More on that one in another article.</p>
<p>Merely using cookies is again a bad idea. </p>
<p>One should also check the User-Agent and possibly a Referrer (the <em>XmlHttpRequest</em> nicely allows one to send any additional headers so you could just put some other token in the Referrer-field). Sure these can still be faked &#8212; but it may fend off some investigating skiddiots.</p>
<p><em><strong>Sequence Numbering, kinda&#8230;</strong></em></p>
<p>A possible way of securing one&#8217;s application is using some form of &#8216;sequence-numbering&#8217;-like scheme. </p>
<p>Roughly, this boils down to this.</p>
<p>One should let the page, or some include javascript, generated on the server side, include some token that the performs some operation on which gives a result which is used in any consecutive request to the webserver. The webserver should not allow any request with another &#8216;sequence number&#8217;, so to speak. </p>
<p>The servers&#8217;  &#8216;<em>challenge-string</em>&#8216; should be as random as possible in order to make it non-predictable: if one could guess what the next sequence number will be, it is again wide open for abuse.</p>
<p>There are properly other ways of hardening interfaces like this, but they all basically come down to getting some <em>fixed</em> information from the webserver as far away from the end-users reach as possible.</p>
<p>You can implement this as complex as you want but can be implemented very basic as well. </p>
<p>For instance when I, as a logged-in user of a web-enabled email-application get assigned a <em>Session-ID</em> and stuff, the page that my browser receives includes a variable <em>iSeq</em> which contains an non-predictable number. When I click &#8220;Delete This Message&#8221;, this number is transmitted with the rest of the parameters. The server can then respond with new data and, hidden in the cookies or other HTTP Requests field, pass the next sequence number that the web-server will accept as a valid request, only.</p>
<p>As far as I know, these seems the <em>only</em> way of securing it. This can <em>still</em> be abused if spyware sniffs HTTP communications &#8212; which they recently started doing. </p>
<p><em><strong>Javascript Insertion</strong></em></p>
<p>On a side note I wanted to throw in a remark on Javascript Insertion. This is an old security violation and not really restricted to AJAX, and not an attack <em>on</em> AJAX.  Rather, it is an attack <em>utilising</em> the <em>XmlHttpRequest</em> object for malice. </p>
<p>If I would be able to insert Javascript in the web-application I am currently looking at in my other browser window, I would be able to easily delete <em>any</em> post the site allows me to delete. Now that doesn&#8217;t seem all that destructive as it only affects that user? Wrong, <em>any</em> user visiting will have its own posts deleted. Ouch.</p>
<p>Javascript insertion has been a nasty one for years and it still is when people throw their home-brew stuff into production.</p>
<p>On a weak implemented forum or web-journal, one could even post new messages &#8212; including the Javascript so that any visitor &#8212; with the proper permission &#8212; would re-post the message keeping the flood of spam coming.</p>
<p>As these technologies keep developing &#8212; and lazy website developers do not update their websites to keep up with these changes. </p>
<p>The recent &#8216;AJAX enhancements&#8217; that some sites got recently might have been improperly implemented. This year might be a good time to check all those old web-applications for any possible Javascript insertion tricks. </p>
<p>If you didn&#8217;t mind the cookies getting caught &#8212; the sudden deletion of random items and/or public embarrassment might be something to entice you to verify your the code.</p>
<p><a href="http://digg.com/security/AJAX:_Is_Your_Application_SECURE_Enough_">Digg This Article</a></p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://twitter.com/intent/tweet?text=AJAX%3A+Is+your+application+secure+enough%3F+http%3A%2F%2Fdarknet.org.uk%2F%3Fp%3D143+from+%40THEdarknet" title="Post to Twitter"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter-micro3.png" alt="Post to Twitter" /></a> <a class="tt" href="http://www.facebook.com/share.php?u=http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/&amp;t=AJAX%3A+Is+your+application+secure+enough%3F" title="Post to Facebook"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/facebook/tt-facebook-micro3.png" alt="Post to Facebook" /></a> <a class="tt" href="http://www.google.com/buzz/post?url=http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/&amp;imageurl=" title="Post to Google Buzz"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/gbuzz/tt-gbuzz-micro3.png" alt="Post to Google Buzz" /></a> <a class="tt" href="http://delicious.com/post?url=http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/&amp;title=AJAX%3A+Is+your+application+secure+enough%3F" title="Post to Delicious"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro3.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/&amp;title=AJAX%3A+Is+your+application+secure+enough%3F" title="Post to Digg"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro3.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/&amp;title=AJAX%3A+Is+your+application+secure+enough%3F" title="Post to Reddit"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro3.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/&amp;title=AJAX%3A+Is+your+application+secure+enough%3F" title="Post to StumbleUpon"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro3.png" alt="Post to StumbleUpon" /></a></p></div><div class="AWD_like_button "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.darknet.org.uk%2F2006%2F04%2Fajax-is-your-application-secure-enough%2F&amp;send=false&amp;layout=standard&amp;width=&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=arial&amp;height=40" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:px; height:40px;" allowTransparency="true"></iframe></div>]]></content:encoded>
			<wfw:commentRss>http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/feed/</wfw:commentRss>
		<slash:comments>90</slash:comments>
		</item>
		<item>
		<title>Post-Mortem Data Destruction</title>
		<link>http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/</link>
		<comments>http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/#comments</comments>
		<pubDate>Fri, 10 Mar 2006 10:33:52 +0000</pubDate>
		<dc:creator>Navaho Gunleg</dc:creator>
				<category><![CDATA[Countermeasures]]></category>
		<category><![CDATA[Privacy]]></category>
		<category><![CDATA[UNIX Hacking]]></category>
		<category><![CDATA[Data-Destruction]]></category>
		<category><![CDATA[data-security]]></category>
		<category><![CDATA[Death]]></category>
		<category><![CDATA[paranoia]]></category>
		<category><![CDATA[Post-Mortem-Data-Destruction]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/</guid>
		<description><![CDATA[1. Introduction This article describes and partly implements a method to delete or re-locate, potentially sensitive and / or incriminating information from your UNIX flavoured machine, after the sad event of your death. An older version of this article has been published before, yet it has since disappeared from the Internet and the Google cache; [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<p></p>
<h3>1. Introduction</h3>
<p>This article describes and partly implements a method to <em>delete</em> or <em>re-locate</em>, potentially sensitive and / or incriminating information from your UNIX flavoured machine, after the sad event of your death.</p>
<p>An older version of this article <em>has</em> been published before, yet it has since disappeared from the Internet and the Google cache; hence this re-post.</p>
<p>Initially, the intent of the whole idea of <em>Post-Mortem Data Destruction</em> (PMDD), or Post-<em>Life</em> Data Destruction, was humorous. Thus, this document should be taken lightly. </p>
<p>Incidentally it <em>can</em> be of use to interested people as this article does contain some useful tips / pointers if one decides to build such a system. For some of you that lack common sense: any damage you might cause to your machine after reading this document is entirely your own fault.</p>
<p>Note that this article, obviously, assumes that the machine that the data is on, is under your own control. We will continue to look at various <em>motivations</em> for PMDD, below. Note that this whole theory does <strong>not</strong> apply when you are using remote storage systems (i.e. virtual drives) as the information is then stored on a <em>remote location</em> and we cannot be sure that the remote system <em>really</em> deletes your data. Their EULA might state that they do but the truly paranoid wouldn&#8217;t make the assumption that they <em>really</em> delete it. I sincerely wonder <em>why</em> one would actually ever use such a remote virtual drive &#8212; by definition these are <em>un-trusted</em>. But I slightly digress..</p>
<h3>2. Motivation</h3>
<p>You can have various motivations for wanting your data <em>destroyed</em> after your death:</p>
<ul>
<li>You don&#8217;t want years of valuable research to fall into the wrong hands,</li>
<li>You don&#8217;t want your girlfriend or room-mates to find your collection of granny pr0n,</li>
<li>You are paranoid, or just uncomfortable with the idea somebody else will read your stuff after you have died.</li>
</ul>
<p>Motivations for <em>moving</em>, i.e. <em>sending out</em> certain data upon the event of your death could be:</p>
<ul>
<li>You are the maintainer of an important piece of software and you want the other people working on the project to have access to the latest modification you have made,</li>
<li>You suspect your elimination because of messing around with the wrong people, and want certain data (i.e. copies of emails) to be sent to, for instance, a newspaper.</li>
</ul>
<p>After you have died, it&#8217;s too late: it will be virtually impossible to log <em>in</em> to your machine and <em>delete data</em>. Note that <em>haunting</em> is only reserved to a few (hurt) souls and such a state can not be guaranteed. Fat chance you&#8217;re able to sit behind a terminal in the after-life, too. </p>
<p>One could opt for encryption, making it <em>hard</em> for a person to recover the data &#8212; but that doesn&#8217;t really guarantee anything. In the event of your death, the partitions would be available to anyone that can get their hands on it. If the encrypted partitions are <em>gone</em>, they can never&#8230;</p>
<p>Let us continue by making a <em>technical analysis</em> of the problem at hand.  </p>
<p><span id="more-58"></span></p>
<h3>3. Technical Description</h3>
<p>You are probably aware of the way that watchdog-chips work; basically they change a byte somewhere in memory regularly, and if that byte hasn&#8217;t changed within a set period of time, the machine is possible hanging and needs a reboot.</p>
<p>We can use a similar method to check whether you are still alive: a machine regularly sends you a message (either through email, an SMS or through a carrier pigeon, whichever you prefer) and expects an answer back. </p>
<p>If the machine hasn&#8217;t received an answer within a configurable time-lapse, the machine can safely assume that you have died. </p>
<p>This obviously isn&#8217;t rocket-science &#8212; implementing such a system is pretty straight-forward.</p>
<p>Setting it up is a whole other can of worms: you have to be careful as wrong settings <em>might</em> result in a false-positive. A false-positive might render your machine useless when you come back from your holiday to the Antarctic, where GSM and Internet coverage isn&#8217;t really that impressive.</p>
<p>In order for such a &#8216;system&#8217; to be built, we can divide it up into three, logical, parts:</p>
<ul>
<li><strong>Sender</strong>: This part sends out the &#8216;<em>Are You Alive?</em>&#8216;-message (I will refer to this as the an <em>AYA</em>-message further in this document)</li>
<li><strong>Receiver</strong>: This part receives the &#8216;<em>I Am Alive</em>&#8216;-message (which I will refer to as the <em>IAA</em>-message in the rest of this document),</li>
<li><strong>Checker</strong>: This part checks whether a message has been received within a reasonable amount of time &#8212; or not.
<p>The <em>Checker</em> is the core of the system that makes the actual assumption whether you are still alive (or not) and will initiate the <em>data destruction process</em>.</li>
</ul>
<p>Below, we will look at each of these three parts with a little more detail.</p>
<h4>3.1 Sender</h4>
<p>This part must implement the sending of the message. Messages can be sent over numerous transport-media, i.e. email or SMS, so you have to pick the one you prefer. You could also choose sending the AYA-message over more transport-media to be sure that you will receive and answer it in time.</p>
<p>(UNIX users could use &#8216;crontab&#8217; here to send it out, for instance every day at 21:00 PM. Some checkups need to be built-in though to prevent AYA messages from being sent when the last one hasn&#8217;t been responded too, etc. But those are implementation details I will go into later on.)</p>
<h4>3.2 Receiver</h4>
<p>This part must handle the incoming IAA-message. The location of the Receiver is dependant on the form of transport you have chosen; If you want the AYA-messages to be sent over email, the IAA-message will come in via email.</p>
<p>(UNIX users could use &#8216;procmail&#8217; here in order to inspect the incoming message, and act upon it.)</p>
<h4>3.3 Checker</h4>
<p>This part checks regularly whether a AYA message has been sent, and if an IAA message has been received.</p>
<p>If the IAA isn&#8217;t received within a reasonable (configurable) amount of time the machine must assume you have died and optionally start emailing some data out before finally destroying it. We will go into the &#8216;Destruction Process&#8217; later on.</p>
<p>UNIX users could write a simple script for this that retrieves and manipulates the state-information somewhere on the file-system.</p>
<p>All the above mentioned parts should have some redundancy built in and should properly react in error situations. It would be a pain to find out that a message could not be sent because of your ISP being down. In that situation you have never received, thus replied, the AYA message, and your machine will think you are dead&#8230; </p>
<p>If you don&#8217;t watch out, your data will be deleted and you might as well kill yourself.</p>
<h3>4. Death Detection Caveats</h3>
<p>Below I will go into various things that you need to keep in mind when implementing a Death Detection system.</p>
<h4>4.1 State-Information</h4>
<p>The <em>Sender</em>, the <em>Receiver</em> and the <em>Checker</em> all need to be fully aware of eachother: the Sender needs to know if a previous AYA has been answered. We do not want AYA&#8217;s sent out when the previous AYA hasn&#8217;t been answered yet as doing so might cause a flood of AYA&#8217;s that you have to answer to in time, to prevent your machine from destroying itself.</p>
<p>Either through some form of Inter Process Communication, be it in memory through the UNIX <a href="http://www.ecst.csuchico.edu/~beej/guide/ipc/">IPC</a> system, or simply on disk by using a couple of files.The latter would be a more wise thing to do as it will retain your data in the event of a power outage.</p>
<p>The state-information should be accessible and writable for <em>all</em> the other parts of the system, obviously.</p>
<h4>4.2 Configuration and Control</h4>
<p><em>Sending Out The `Are You Alive&#8217;-messages</em><br />
You have to keep a few things in mind setting the times the AYA message must be sent. </p>
<p>If you want your machine to detect your death as soon as possible you have to send out the AYAs every 5 minutes. But do you really want to reply to the email or SMS message every day? I don&#8217;t think so. And sending it out, say, every month creates another problem: you might forget all about it just before you go to a place without SMS or email access. Worse case scenario might be that you come back and find out your machine thought you were already dead.</p>
<p><em>Going On a Holiday?</em><br />
If you go away on a holiday or know you have no access to email of SMS for some time, you sometimes cannot answer to the messages. Or I can imagine other situation when you don&#8217;t want to go through the hassle of replying to the incoming AYA messages, for a short while.</p>
<p>It should be possible to <em>disable the system</em> if you know you cannot respond to AYA messages.</p>
<p>If you want, you could build some extra stuff into the Receiver to handle specific commands. For instance, sending a message like this could disable the system for 14 days.<br />
<code><br />
   To:      dd-at-domain.com<br />
   Subject: STFU 14D<br />
</code></p>
<p>Additionally you could insert a password to prevent abuse.</p>
<p>Implementing certain commands of course requires some changes in <em>all</em> the parts: the Receiver must set some flag in the <em>state-information</em> indicating the Sender and the Checker to do nothing until the flag is unset.</p>
<p>Incidentally, when the Receiver receives a &#8216;Command Message&#8217; it should assume that the last sent AYA, if still pending, has been responded to. (It is a logic assumption to make that you are still alive if the machine receives a Command Message from you.)</p>
<p><em>Broken Phone?</em><br />
Imagine the scenario where you have just received the AYA message &#8212; but your phone broke. Or your battery just went dead. </p>
<p>Not nice if you really need to send a message to your computer and the only <em>allowed</em> phone is the one with your Caller-ID.</p>
<p>Just make sure you <em>can</em> control the system from an &#8216;alien&#8217; phone. Password protected, of course.</p>
<p><em>Sending Out Your Private Data</em><br />
This functionality requires some configuration; if you want data to be sent out, the machine needs to know what data and which email-address to send it to. Of course you could also use <em>secure copy</em> (scp) as a way to get the data out.</p>
<p>As an illustration I include a sample configuration-file which should be parsed by the process handling the sending:<br />
<code><br />
   # Directory / Target email-address<br />
   /home/my_home/development/cracking_tools/           partner_in_crime-at-gmail.com<br />
   /home/my_home/911_conspiracy_evidence/      breakingnews-at-bbc.co.uk<br />
</code><br />
After succesfully sending out the information, depending on ones level of paranoia, you could optionally destruct the local copy of this information.</p>
<h3>5. Data Destruction Caveats</h3>
<p>The only proper way of deleting sensitive data is by <a href="http://driveslag.eecue.com/articles/index.php?artid=1">Drive-Slagging</a> [too bad the images don't work on that link anymore]. </p>
<p>Data destruction is virtually impossible to do if you&#8217;re not spending your after-life on Earth as a poltergeist. (See my other pending document which will be out as soon as I got some relevant <em>hands-on</em> experience.)</p>
<p>Be aware that, even after a format, the electromagnetic surface still contains traces of the data previously stored. Forensic experts could theoretically reconstruct the data. It would be harder for these experts if you have written random garbage over your old file-system a couple of times. (Some people say 33 times should be enough, others say 10, while other say &#8220;<em>Given enough money and time, all data can be recovered.</em>&#8221;.)</p>
<p>In order for us to be able to write over the partition we are possibly currently running on, we have created ourselves a little problem, especially if we want to overwrite parts of the disk a few times. After the first pass, the command you executed (and the libraries it depended on) are gone, so it isn&#8217;t guaranteed it comes to the <em>2nd</em> pass (and you know what they say about assumptions). </p>
<p>An possible solution for this could be to install the <em>Data Destructor</em> on a different, <em>non-mounted</em>, partition. </p>
<p>This partition should be bootable and contain enough programs to perform the destructive disk access operations.</p>
<p>When the <em>Data Destruction</em> should take place, the current LILO of GRUB configuration should be altered to automatically boot into this special partition which will start the destructive task, and reboot making it active.</p>
<p>After rebooting and deleting and overwriting the data (optionally with multiple passes), the machine should shut down.</p>
<p>What finally is left is your special partition (which doesn&#8217;t really matter) and some partitions with random garbage on it.</p>
<p>If you want to impress your room-mates you could make this special partition, when booted, display the following message, or similar:</p>
<ul><em><strong>I am dead. You have no reason to look at my computer. Sod off!</strong></em></ul>
<p>Too bad you&#8217;re not alive to see the expression on their faces.</p>
<p></p>
<p><a href="http://digg.com/security/Post-Mortem_Data_Destruction_-_Make_your_data_SAFE_">Digg This Story</a></p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://twitter.com/intent/tweet?text=Post-Mortem+Data+Destruction+http%3A%2F%2Fdarknet.org.uk%2F%3Fp%3D58+from+%40THEdarknet" title="Post to Twitter"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter-micro3.png" alt="Post to Twitter" /></a> <a class="tt" href="http://www.facebook.com/share.php?u=http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/&amp;t=Post-Mortem+Data+Destruction" title="Post to Facebook"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/facebook/tt-facebook-micro3.png" alt="Post to Facebook" /></a> <a class="tt" href="http://www.google.com/buzz/post?url=http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/&amp;imageurl=" title="Post to Google Buzz"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/gbuzz/tt-gbuzz-micro3.png" alt="Post to Google Buzz" /></a> <a class="tt" href="http://delicious.com/post?url=http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/&amp;title=Post-Mortem+Data+Destruction" title="Post to Delicious"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro3.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/&amp;title=Post-Mortem+Data+Destruction" title="Post to Digg"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro3.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/&amp;title=Post-Mortem+Data+Destruction" title="Post to Reddit"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro3.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/&amp;title=Post-Mortem+Data+Destruction" title="Post to StumbleUpon"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro3.png" alt="Post to StumbleUpon" /></a></p></div><div class="AWD_like_button "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.darknet.org.uk%2F2006%2F03%2Fpost-mortem-data-destruction%2F&amp;send=false&amp;layout=standard&amp;width=&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=arial&amp;height=40" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:px; height:40px;" allowTransparency="true"></iframe></div>]]></content:encoded>
			<wfw:commentRss>http://www.darknet.org.uk/2006/03/post-mortem-data-destruction/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Who is Navaho Gunleg?</title>
		<link>http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/</link>
		<comments>http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/#comments</comments>
		<pubDate>Wed, 01 Mar 2006 01:44:59 +0000</pubDate>
		<dc:creator>Navaho Gunleg</dc:creator>
				<category><![CDATA[Authors]]></category>
		<category><![CDATA[darknet]]></category>
		<category><![CDATA[introduction]]></category>
		<category><![CDATA[navaho-gunleg]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[writers]]></category>

		<guid isPermaLink="false">http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/</guid>
		<description><![CDATA[Following the recent post by backbone, I decided to post a short introduction as well. Background I am from The Netherlands, Europe &#8212; a country most people probably have heard about. Either because of the legendary HackTic-foundation that later started the ISP XS4ALL and otherwise undoubtably because of our liberal stance towards soft-drugs and prostitution. [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<p>Following the recent post by <em>backbone</em>, I decided to post a short introduction as well.</p>
<p><strong>Background</strong><br />
I am from The Netherlands, Europe &#8212; a country most people probably have heard about. Either because of the legendary <a href="http://en.wikipedia.org/wiki/Hack-Tic">HackTic</a>-foundation that later started the ISP <a href="http://www.xs4all.nl">XS4ALL</a> and otherwise undoubtably because of our liberal stance towards soft-drugs and prostitution. </p>
<p>I have always been drawn to computers and remember tinkering with them ever since my parents bought one, a <a href="http://en.wikipedia.org/wiki/Commodore_64">Commodore 64</a>. At that time, we didn&#8217;t have that much money to spend so I was forced to write my own programs and games. This experience basically laid the basis for my profession as a programmer, later in life. </p>
<p>As time passed, other computers came into our house-hold, mainly because of my dad&#8217;s job. Things started getting really interesting on the PC. MSDOS, PCDOS, various programming languages such as BASIC and Pascal, applications suchs as DBASE. </p>
<p>In contrast to people who have only experience with graphical user interfaces such as Microsoft&#8217;s and Apple&#8217;s, because of the experience with the command-line, UNIX-flavoured operating systems don&#8217;t scare me.</p>
<p><strong>In the Present</strong><br />
Currently, I am a programmer for a media company. The operating systems I work on are all UNIX-flavours. I can &#8216;speak&#8217; most relevant (programming) languages available on those machines: C(++), Shell scripting, PHP, Javascript, SQL and HTML to name but a few. I have had the privilege to tinker with J2ME (that&#8217;s Java for mobile devices such as phones) as well.</p>
<p>I mainly implement the technology <em>behind</em> web-sites, such as content-management systems and various types of server-to-server communication. Additionally, I write plugins for <em><strong>i</strong>nteractive <strong>v</strong>oice <strong>r</strong>esponse</em> systems such as Bayonne.</p>
<p>Additionally, I also do system administration on few of those servers so I have grown quite interested in server security as well. </p>
<p>In my spare time, because I&#8217;m cheap, I <em>still</em> write my own software. If I&#8217;m out of suggestion, my girlfriend sometimes has a request for something. For the last couple of years I love to make everything <em>web-based</em>. This fuelled my interest in <em>web-based</em> user-interfaces and the technology behind it, databases, scripting and secure communications.</p>
<p><strong>Future</strong><br />
Being a coder, my articles will mainly focus on programming. How to, and how <em>not</em> to implement stuff safe and secure. Fact is, programs that rely on end-user input are by definition <em>un-safe</em>. </p>
<p>Knowing the business-side of the chain so to speak, I have come to discover that a lot of companies, simply because of the lack of knowledge, money or time, fail to implement online systems secure enough.</p>
<p></p>
<p>Technology is going faster than most people can keep track of it and this has implications that some people might ignore.</p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://twitter.com/intent/tweet?text=Who+is+Navaho+Gunleg%3F+http%3A%2F%2Fdarknet.org.uk%2F%3Fp%3D65+from+%40THEdarknet" title="Post to Twitter"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter-micro3.png" alt="Post to Twitter" /></a> <a class="tt" href="http://www.facebook.com/share.php?u=http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/&amp;t=Who+is+Navaho+Gunleg%3F" title="Post to Facebook"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/facebook/tt-facebook-micro3.png" alt="Post to Facebook" /></a> <a class="tt" href="http://www.google.com/buzz/post?url=http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/&amp;imageurl=" title="Post to Google Buzz"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/gbuzz/tt-gbuzz-micro3.png" alt="Post to Google Buzz" /></a> <a class="tt" href="http://delicious.com/post?url=http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/&amp;title=Who+is+Navaho+Gunleg%3F" title="Post to Delicious"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro3.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/&amp;title=Who+is+Navaho+Gunleg%3F" title="Post to Digg"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro3.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/&amp;title=Who+is+Navaho+Gunleg%3F" title="Post to Reddit"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro3.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/&amp;title=Who+is+Navaho+Gunleg%3F" title="Post to StumbleUpon"><img class="nothumb" src="http://www.darknet.org.uk/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro3.png" alt="Post to StumbleUpon" /></a></p></div><div class="AWD_like_button "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.darknet.org.uk%2F2006%2F03%2Fwho-is-navaho-gunleg%2F&amp;send=false&amp;layout=standard&amp;width=&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=arial&amp;height=40" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:px; height:40px;" allowTransparency="true"></iframe></div>]]></content:encoded>
			<wfw:commentRss>http://www.darknet.org.uk/2006/03/who-is-navaho-gunleg/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

