суббота, 12 ноября 2011 г.

Обнаружение спам-скриптов


Инструкция по пересборке RPM пакетов PHP с патчем который при использовании функции php mail в коде php автоматически добавляет в заголовки письма полный путь к скрипту который отправил письмо и IP адрес хоста с которого был инициирован запуск этого скрипта

Пересборка RPM пакета со стабильной версией php в CentOS:
yum install -y rpmdevtools
yum -y install yum-utils
useradd mockbuild
cd /root/
rpmdev-setuptree
wget http://fastvps.googlecode.com/svn/trunk/configs/CentOS-SRPMS.repo -O/etc/yum.repos.d/CentOS-SRPMS.repo
yum update
yumdownloader --enablerepo=base-SRPMS --source php
rpm -ihv php-5.1.6-27.el5.src.rpm
yum-builddep php-5.1.6-27.el5.src.rpm
wget http://choon.net/opensource/php/php-5.1.6-mail-header.patch
mv php-5.1.6-mail-header.patch ./rpmbuild/SOURCES/
Корректируем SPEC файл /root/rpmbuild/SPECS/php.spec
(Release необходимо править для того чтобы потом при доустановке php модулей из репо пакетный менеджер не конфликтовал с уже установленным php)
Release: 27.el5_5.3
Patch210: php-5.1.6-mail-header.patch   # номер патча правим под конкретные условия, вообщем делаем его последним
%patch210 -p1 -b .mail-header
rpmbuild -bb php.spec
пример скрипта для проверки работоспособности патча http://choon.net/opensource/php/testmail.txt в начале скрипта правим адрес ящика на свой, даем скрипту расширение .php кладем в documentroot любого виртхоста апача и запускаем скрипт из инет-браузера
получив письмо на ящик смотрим его хедеры, если всё хорошо то увидим примерно следующее:
Return-Path: <webmaster@local.lan>
X-Original-To: test@local.lan
Delivered-To: virtuser_502@local.ru
Received: by local.ru (Postfix, from userid 48)
 id 07718A50683; Thu, 27 Jan 2011 13:29:23 +0000 (GMT)
To: test@local.lan
Subject: Test Subject 3
X-PHP-Script: local.lan/my_collection_spamscripts/one/superspamer.php for 195.218.144.50
From: webmaster@local.lan
Message-Id: <20110127132923.07718A50683@local.ru>
Date: Thu, 27 Jan 2011 13:29:23 +0000 (GMT)

Test Message 3
В строке X-PHP-Script мы видим полный путь к спам-скрипту в рамках виртхоста и IP адрес машины с которого его запустили

Комментариев нет:

Отправить комментарий