Weird things happens. Mostly in WordPress. One morning you see that your permalinks became a something like this:
Or your feed crapped like this:
error on line 22 at column 71: xmlParseEntityRef: no name wordpress
Do not panic – you’re hacked. And there is three steps to get rid of it.
1) Restore your permalinks
Go to Admin panel -> Settings -> Permalinks.
Set your permalink structure to whatever it was earlier. If you don’t even imagine what it was – you can always ask google for it – just like this: site:yourblogurl.com – and you’ll see the answer in the links to your site.
2) Kill the intruder(s)
Go to your preferred mysql administration tool (say, MySqlAdmin) and run this code in the SQL window:
SELECT * FROM `wp_usermeta` WHERE `meta_value` LIKE '%script%'
You’ll see the list of records, write down user_ids of those guys.
Go to Admin panel -> Users -> Authors & Users, copy the edit link for any user, it’ll be somethings like:
Then paste it into address line, and change user_id=XX to the first user_id you wrote. Go.
Replace First name with whatever you want (for example “z”), insert “firstname.lastname@example.org” into Email field (or whatever, but remember it, you’ll need it later) and set the Role into Subscriber. Push Update user. Then repeat with the next one in your user_ids list. After you finished – just type in into the search line word “motherfncker” (or whatever you set emails to). Now – just delete bastards!
3) Defend the base
Just upgrade your wordpress. If you will do it periodically – there will be no such problems at all!
If you do not have ability to use some SQL tool – you can try to blind find bastards:
Go to Admin panel -> Users -> Authors & Users
Note the number of Admin users (right under “Users” header). One of them is you, all others – bastard ones 🙂
Try to find max. user_id in the list by hovering your mouse over links. Then copy the edit link of the user with topmost ID, insert it into address line, change it to next number and go. Did not work? Try the next number. Or previous one. You can even loop through all IDs not in use. And when you’ll find him – you know what to do!
Now I’m ready to test something.
Someone can think that picture is offensive somehow – I assure you that is not.
At first, Ahsoka isn’t child, she seems so only next to Skywalker. At second she’s a freekin cartoon character – she have no age at all.
Heh. I’ve got “dashboard problem” in admin area. For long. ))
Now it’s over.
When you see 404 page instead of your dashboard – and somethings like “admin.php?page=index.php” in your addressbar – you just need to go to your wp-content/plugins/ directory and rename index.php there to index.html
P.S. BTW WP2.7 adminpanel looks really great! Upgrade ASAP.
Make sure that you have this browser:
And how about advanced settings page? And how about direct access to it? OK, just type “about:config” into the address bar and hit return. Just like this:
Now, what do you see?
It’s your advanced settings, basically you can’t reach most of them in other way…
Look for the following entries:
Set network.http.pipelining to true
Set network.http.proxy.pipelining to true
Set network.http.pipelining.maxrequests to 10 (or 15)
Right-click, select New->Integer, name it nglayout.initialpaint.delay, set value to 0
We allowed to make up to 10 (15) connections at once. Make sure not to set it higher than 20.
Also we allowed to act with received information with zero waiting time.
BlogJet is a commercial blog client for Windows. And I made this and previous posts using this software. Hmmm. BlogJet is much better than BlogDesk one…. But I still need to edit the post after posting is done. Where are papagraph styles? Where are h1 h2 h3 h4 etc… ?? Where is real WYSIWYG editor? Where is image properties editing after I inserted it? Where human-readable image naming (check this out – in previous post image on my HDD named arch-enemy-2007-rise-of-the-tyrant-promo.jpg became some kind of non-seo non-human non-anyone set of letters)?
Author may talk about money, work to be done, “how he make controls that were snatched by microsoft”, and some mental shit, but I must say one thing. BlogJet is crap. Just like BlogDesk. Please note that BlogDesk is free to use, when BlogJet’s author wants $39.95. I’ll put them both in one place – and it will be /dev/null.
The official site says
Blog editor on steroids.
Now better than ever.
1. Remember, kids, steroids are bad. And this piece of binary crap proves it.
2. If this is better than ever – what’s bad?
3. Why 2.0? Did you anything for it? NO! It must be 1.99 – and so on – 1.100, 1.101.
Today I’ll test a software called BlogDesk. Here is their icon , and here is their web-site.
BlogDesk is the offline weblog client, features WYSIWYG editor, ImageWizard, Thumbnails creator etc. For example I inserted a program’s screenshot, and as you can see, thumbnail generation works wery well 😉 Seems I’ll try to use it for more time, maybe it’s an editor-of-my-dreams….
Seems like BlogDesk is crap. I edited all the links and srcs. Without editing – they all was pointed to “file:// ” (i.e. to my local hard drive).
Now I don’t know if I try this toy anymore.
Second step – it’s use of Simple Trackback Validation plugin by Michael Woehrer.
Many spam messages is come through trackbacks.
This plugin eliminates spam trackbacks by:
Plug has options page. Everything seems pretty good – and again – wait for more info.
I hate 404s. I use awstats to watch my logs, and I hate when it shows some 404s…
I can tolerate some virus-generated URLs but when I see this “/feed%3Ahttp%3A//eyedmax.com/feed/“or search bot asking me for robots.txt or favicon.ico (and I haven’t one) – I can blow up.
My advices to all webmasters are following:
Don’t trouble Google ’till Google troubles you!
I’ve been thinking of getting post done (about smart MySQL sorting techniques), but when I logged on….
A bunch of spam comments – about meds, about autos, about porn (of course) and all the bloody stuff around this bloody world…
So – I proclaim the War Against SPam (WASP).
The first step in WASP strategy – it’s a set of plugins. I’ll try some, and you’ll be informed about the hostilities.
First in the line will be Math Comment Spam Protection Plugin by Michael Woehrer. You can see its output under the comment form. Also I use the aggressive digits naming – like thr33 or f1ve
Oops, WordPress 2.2.1 is out, and I’m still not ready!
Ok, I upgraded all the blogs with my plugs, and let’s see what happens.
WordPress 2.2 Getz is pretty cool 😉
Except one little thing.
They’re now in the core.
And (as always) one little annoying error in release code.
This bug prevents Otto’s ExecPHP from working. Another plugins that allows to run PHP code gone wild too.
No, actually they working, until you want 2 or more blocks…
Solution is CVS. You need to upload fixed version of widgets.php into your wp-includes folder.
You can take it .zipped – here.
Oh, and I think my plugs needs some widgetization too 😉