Спам-атака или уязвимость Shop-Script PREMIUM???

Статус
В этой теме нельзя размещать новые ответы.
У меня была такая фигня, по 500 чтук за сутки, вот капчу свою прекрутил и все, нету спама.

это крепим к форме
PHP:
<td><img src='code.php?<?=doubleval(microtime());?>' width=101 height=26 vspace=5></td>
        <td><input type="text" name="secretcode"></td>

это к телу или инклудом
PHP:
<?
session_start();
session_register("secret_number");

if (intval($_SESSION["secret_number"])<1000) {
	srand(doubleval(microtime()));
	$_SESSION["secret_number"]=rand(1000,9999);
	}

if ($_SERVER["REQUEST_METHOD"]=="POST") {

	$error=0;
	if ($_POST["secretcode"]!=$_SESSION["secret_number"] || intval($_POST["secretcode"])==0) $error=1;

	if ($error==0) {
		$_SESSION["secret_number"]=rand(1000,9999);

		// Выполняем необходимые действия с данными
		// ..
		
		include($_SERVER["DOCUMENT_ROOT"]."/spilit/sendmail.php");
		print "<div align=center>Спасибо!<br> 
	    Ваш вопрос был отправлен на почтовый ящик </div>";
		exit;
		}

	if ($error==1) print "<font color=red>Число с картинки введено неверно</font>";
	}
?>

ну и code.php
PHP:
<?
// Регистрируем переменную
session_start();
session_register("secret_number");

function mt() {
	list($usec, $sec) = explode(' ', microtime());
	return (float) $sec + ((float) $usec * 100000);
	}

header("Content-type: image/png");

// создаем изображение
$im=imagecreate(101, 26);

// Выделяем цвет фона (белый)
$w=imagecolorallocate($im, 255, 255, 255);
 
// Выделяем цвет для фона (светло-серый)
$g1=imagecolorallocate($im, 192, 192, 192);

// Выделяем цвет для более темных помех (темно-серый)
$g2=imagecolorallocate($im, 64,64,64);

// Выделяем четыре случайных темных цвета для символов
$cl1=imagecolorallocate($im,rand(0,128),rand(0,128),rand(0,128));
$cl2=imagecolorallocate($im,rand(0,128),rand(0,128),rand(0,128));
$cl3=imagecolorallocate($im,rand(0,128),rand(0,128),rand(0,128));
$cl4=imagecolorallocate($im,rand(0,128),rand(0,128),rand(0,128));

// Рисуем сетку
for ($i=0;$i<=100;$i+=5) imageline($im,$i,0,$i,25,$g1);
for ($i=0;$i<=25;$i+=5) imageline($im,0,$i,100,$i,$g1);

// Выводим каждую цифру по отдельности, немного смещая случайным образом
imagestring($im, 5, 0+rand(0,10), 5+rand(-5,5), substr($_SESSION["secret_number"],0,1), $cl1);
imagestring($im, 5, 25+rand(-10,10), 5+rand(-5,5), substr($_SESSION["secret_number"],1,1), $cl2);
imagestring($im, 5, 50+rand(-10,10), 5+rand(-5,5), substr($_SESSION["secret_number"],2,1), $cl3);
imagestring($im, 5, 75+rand(-10,10), 5+rand(-5,5), substr($_SESSION["secret_number"],3,1), $cl4);

// Выводим пару случайных линий тесного цвета, прямо поверх символов.
// Для увеличения количества линий можно увеличить,
// изменив число выделенное красным цветом
for ($i=0;$i<8;$i++) imageline($im,rand(0,100),rand(0,25),rand(0,100),rand(0,25),$g2);


// Коэфициент увеличения/уменьшения картинки
$k=1.7;

// Создаем новое изображение, увеличенного размера
$im1=imagecreatetruecolor(101*$k,26*$k);

// Копируем изображение с изменением рамеров в большую сторону
imagecopyresized($im1, $im, 0, 0, 0, 0, 101*$k, 26*$k, 101, 26); 

// Создаем новое изображение, нормального размера
$im2=imagecreatetruecolor(101,26);

// Копируем изображение с изменением рамеров в меньшую сторону
imagecopyresampled($im2, $im1, 0, 0, 0, 0, 101, 26, 101*$k, 26*$k); 

// Генерируем изображение
imagepng($im2);

// Освобождаем память
imagedestroy($im2);
imagedestroy($im1);
imagedestroy($im);
?>

А нельзя ли по подробнее. Особенно второй пунк это к телу или инклудом:ah:
 
что конкретно не понтяно?
 
В каментах к товару сегодня обнаружил более 250 сообщений с довольно странными и специфическими текстами (см. скриншот).
В одном из сообщений красовался адрес
*** скрытое содержание ***
перейдя по которому можно увидеть надпись
PHP:
#Vulnerability to Code injection attack has been successfully proven
<?php
echo "Vulnerability to Code injection attack has been successfully proven";
?>
что в переводе на русский означает что то вроде: "Уязвимость кодовой инъекции нападения было успешно доказана". :eek:

Кто нибудь в курсе, чё это за х...ня и как с этим бороться???

Бороться вот так.... 2 капчи на выбор. перестали писать уроды....
 

Вложения

  • kaptcha2.rar
    95,6 KB · Просмотры: 28
  • captcha.zip
    155,8 KB · Просмотры: 23
Hmelex
в product_detailed.php находим //validate input data if
меняем на :
if (($error==0) && trim(... и т.д.

Выше этой строки инклайд
if ($_POST["secretcode"]!=$_SESSION["secret_number"] || intval($_POST["secretcode"])==0) $error=1;

if ($error==0)
$_SESSION["secret_number"]=rand(1000,9999);

///
Если надо выложу только инклайды
 
Я сама пыталась разобраться - но так и несмогла.:ah:

Наверное Все таки прийдется обратиться к тебе abasov за помощью.


Выложи пожалуйста abasov содержимое своего файла product_detailed.php, а то как то боязно менять то незная что в итоге получиться....:ah::ah::ah:
 
ребята а есть у кого код-обработчик уязвимости?
Что бы знать достаточно ли одного доп. условия 'И'
 
Вот гдето валялся этот файл ...
Может это - или нет:ah:
 

Вложения

  • 1.zip
    5,5 KB · Просмотры: 18
  • sqlinjectiontest.zip
    1,8 KB · Просмотры: 20
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху