function pushem(sid,lt,lu) { var lt=document.getElementById("vtitle").value; var lu=document.getElementById("vurl").value; alert(sUrl2+"&sid="+sid+"<="+lt+"&lu="+lu); // для проверки, алерт работает везде! makeAJAXCall(sUrl2+"&sid="+sid+"<="+lt+"&lu="+lu); }
Код makeAJAXCall(...) {...} зашлите в личку, будьте добры.
Мне тоже кажется, что просто кто-то собирает базу хостов с определёнными движками. Возможно, вручную модерируя сайты-цели. На атаку ну совсем никак не тянет.
Сколько раз сталкивался с аналогичной проблемой, столько раз убеждался, что эффективного способа решения, к сожалению, не существует. Тем более, что большинство мероприятий в этом направлении необходимо проводить до, а не после факта недобросовестного использования разработки посторонними лицами. Варианты, предложенные уважаемыми overnight и bearman могут помочь наказать мошенника. Какой у него WM-аттестат Вы не в курсе?
Кстати, как раз сейчас курирую разработку системы, которая будет обеспечивать защиту PHP-разработок частичным удалённым выполнением на модели "лицензирования". Как запуститься в продакшн, попробую раздать на форуме бесплатных доступов ;)
http://pecl.php.net/package/zip
Очень ценные и оригинальные советы. Думаю, что никто на этом форуме не смог бы разработать подобный план действий.
А вот тут мы имеем дело с ситуацией, когда не атака целится в наиболее нагружающий конец, а мы сами подводим этот конец под атаку.
Строго говоря, DoS-флуд на конец системы, который вызывает отработку (дополнительную нагрузку на сервер), тоже не лишен смысла. Такая тактика позволит несколько сократить минимальную эффективную интенсивность DoS или даст шанс на DDoS из детского ботнета. Но для осуществления такого шоколада для атакующей стороны необходимо соблюдение двух условий: отсутствие защиты от таких фокусов в самой системе (например, проверка общей частоты регистраций или постинга) и наличие обслуживающего персонала в изменённом состоянии сознания (иначе просто отключат грузящий кусок).
Да, что хотел спросить, уважаемый Soeti, Вы не могли бы привести пример провайдера, который "не лох" и не отказывает в обслуживании клиенту под DDoS пока стойки не оплавятся. :D
Совершенно непонятно причём здесь DDoS-атаки.
<?php$URL = 'http://site.ru'; // Адрес куда редиректить в случае правильного ответа.$Data = array(array('сколько будет два плюс два', 'четыре'),array('квадратный корень из четырёх', 'два'),array('сумма первых двух чётных чисел от нуля', 'шесть'));session_start();if (isset($_POST['ans']) and isset($_SESSION['q']) and $_POST['ans'] == $Data[$_SESSION['q']][1]) { header('Location: '.$URL); die();}$Rnd = mt_rand(0, count($Data) - 1);$_SESSION['q'] = $Rnd;?><form action="" method="post"> Вопрос: <?=$Data[$Rnd][0]?><br/> Ответ: <input type="text" name="ans"/><br/> <input type="submit" value="Ответить"/></form>
:)
RewriteRule ^([a-z0-9]+)/index\.php$ /$1.html [L,R=301]RewriteRule ^([a-z0-9]+)/ /$1.html [L,R=301]
Загибаться будут все запросы http://site.ru/abc/ и http://site.ru/abc/index.php Если это необходимо, добавьте проверку на существование каталога перед загибом второй строкой. Что такое [a-z0-9], думаю, понятно. Тоже можно подправить под Ваш случай.
openSUSE 11.1 под FF 3.0.1 тоже периодически исчезают то элементы диза, то превью. Под Opera проблем нет. Сейчас разбираться нет времени, к сожалению. Возможно позже...
Вариантов, на самом деле, масса:
1. Генерируем "шум" на подложке с помощью мат. функций + рисуем абсолютно рандомные символы (да ещё и рандомными шрифтами) с помощью gd`шного функционала работы со шрифтами. Возможно добавляем что-то поверх.
2. Подложка хранится в готовом виде в файле, рисуем на ней рандомные символы шрифтами.
3. Подложка и символы уже имеются в виде отдельных фрагментов. Во время генерации капчи мы просто накладываем изображения необходимых символов на изображение подложки/фона.
4. Храним набор уже готовых каптч, рандомно выводим одну из них.
5. ...
Варианты генерации в списке приведены по мере убывания уровня паранойи и возрастания скорости обработки. В принципе, обладающий свежей манией преследования разработчик, может придумать массу гораздо более экзотических алгоритмов. На практике, встречал вариант N1 лишь единожды (было страшно). Наиболее оптимальным считаю N3.