Just got aware of a mail queue spike on a shared hosting server. The responsible sending script was identified pretty quickly. Before deletion I wanted to take a look at it and expected a PHP shell. But this time it wasn't a shell-like PHP script, it was just a simple web-form based on "SMTP - PHP SMTP class" which starts like this:
// SMTP - PHP SMTP class
// Version 1.02
// Define an SMTP class that can be used to connect
// and communicate with any SMTP server. It implements
// all the SMTP functions defined in RFC821 except TURN.
// Author: Chris Ryan
// License: LGPL, see LICENSE
Of course the author of this script is not responsible for the spams - let that be clear. But someone took this open source script and used it to send spams. Furthermore the language of the script was adapted, the texts were all in Portuguese.
Here's a screenshot of the form:
The form was uploaded through a previously uploaded script (here we got the web shell):
18.104.22.168 - - [19/Aug/2013:14:55:02 +0200] "POST /images/xmlrpc.php?../cmdlist.txt?&action=upload&chdir=/home/cd-ocst/FTPROOT/htdocs/images/ HTTP/1.1" 200 48585 "http://example.com/images/xmlrpc.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0"
And this script (xmlrpc.php) was - again - uploaded through a previously uploaded script:
22.214.171.124 - - [05/Aug/2013:23:58:27 +0200] "POST /images/upjoey.php HTTP/1.1" 200 604 "http://example.com/images/upjoey.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0"
Now this one was a bit trickier to find out because the modification timestamp of upjoey.php was changed. But with "stat" the real file creation could be determined and resulted in the following source:
126.96.36.199 - - [05/Aug/2013:17:25:35 +0200] "POST /administrator/index.php?option=com_media&task=file.upload&tmpl=component&0bec1a81cc23778c9ba682c425af2170=pvvjc425q7ffehrespag3rbic7&fe6b9d8fb33d0beb2dc01761e989e6c0=1 HTTP/1.1" 200 1173 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; Tablet PC 2.0)"
So here we go... another hack through an old Joomla (2.5.1). Please oh please Joomla users... keep your CMS up to date!