• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Защита от News Adder

Статус
В этой теме нельзя размещать новые ответы.
Я вот тут сижу читаю тему, тоже думаю о защите от спам программа и назрела гениальная и простая и идея.

 
Я вот тут сижу читаю тему, тоже думаю о защите от спам программа и назрела гениальная и простая и идея.
*** скрытое содержание ***
Гениально!, серьезно..
Как это осуществить не подскажешь? Проверять реферальную ссылку на наличие доменного имени нашего сайта, плохо что я не знаю язык правил хтацес, хотя можно и на пхп сделать..

П.С.

А не проще сменить ссылку регистрации? Ведь сначала регистрируются, а потом уже добавляют новость?
Просто базу юзеров будут забивать, а новости не добавлять..
 
Как это осуществить не подскажешь? Проверять реферальную ссылку на наличие доменного имени нашего сайта, плохо что я не знаю язык правил хтацес, хотя можно и на пхп сделать..


Проверять очень просто, в файл .htaccess вписываешь:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://твой_домен/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://твой_домен/.*$ [NC]
RewriteRule .*\.(php)$ Для просмотра ссылки Войди или Зарегистрируйся[/B]/ [R,NC]

В третей строке php заменить на защищаемые типы файлов на обращение к которым будет проверять на реферер. Если он не совпадает с твоим доменом то произодет передача на адрес отправить-сюда

Облом выходит. Нужно как нибудь запретить выполнение index.php?do=addnews или при переходе по этой ссылке отправлять в баню... скорее всего тоже возможно через тот же .htaccess.
 
"Добросовестных пользователей" помещай в группу журналисты, для остальных пользователей сделай запрет!
 
А почему бы не сделать проще например как в хаке для дле зашиты от автореги?? Добавить поле какое нибудь новое и все:)
 
добавь просто обязательные доп поля при регистрации и запрет на публикацию пока не пройдет 3 суток или 2 недели:smmne:
 
Кстати, есть модуль для дле, вопрос при регистрации. Ставил его, вообще не было ни одной реги ботами.
 
1. Вариант

1266644839_1.gif

1. Открываем файл engine/modules/register.php и ищем в нём:
PHP:
if( $sec_code != $sec_code_session or ! $sec_code_session ) $stop .= $lang['reg_err_19'];
после этого вставляем:
if(empty($_POST['mark'])){
          $stop .= "Выберите кружок!";
    } else {
        if($_POST['mark'] != $_SESSION['codes']){
            $stop .= "Выбран Неверный кружок! Ботам тут не место!!! :)";
        }
    }
2. Далее ищем :
PHP:
if( $doaction != "validating" and ! $stopregistration ) {
    if( $_POST['dle_rules_accept'] == "yes" ) {
        @session_register( 'dle_rules_accept' );
        $_SESSION['dle_rules_accept'] = "1";
    }
после вставляем:
PHP:
// 
    $mark = mt_rand(1,7);
    $marks = array ("Первый" => "1", "Второй" => "2", "Третий" => "3", "Четвёртый" => "4", "Пятый" => "5", "Шестой" => "6", "Седьмой" => "7");
    $marks_check = array_search($mark, $marks);
//
    $_SESSION['codes'] = $mark;
3. Ищем:
PHP:
if( $config['allow_sec_code'] == "yes" ) {
        $tpl->set( '[sec_code]', "" );
        $tpl->set( '[/sec_code]', "" );
        $tpl->set( '{reg_code}', "{$lang['reload_code']}" );
Прямо перед
} else {,
вставляем:
$tpl->set( '{mark}', "$marks_check" );
4. Ищем:
PHP:
} else {
            $tpl->set( '{reg_code}', "" );
после вставляем:
PHP:
$tpl->set( '{mark}', "" );
5. Открываем файл templates/Ваш шаблон/registration.tpl и между тегами [/sec_code] и [/registration], вставляете:
PHP:
Дополнительная защита от спамеров
Если вы Человек, то выберите {mark} кружок!
Выберите кружок:
                1
                2 3
                4 5
                6 7


2. Вариант (для параноиков - можете оба варианта ставить)
Заменим перенную от каптчи, в итоге аддневc и тому подобные програмки авторегистрации принимать каптчу будут но отправлять будут по стандартной sec_code... :p
1. Создаем архивную копию "engine/modules/register.php", "templates/ваш-шаблон/registration.tpl".

2. Откроем "templates/ваш-шаблон/registration.tpl". Найдем
PHP:
name="sec_code"
заменим на name="fpisduspam". Сохраним.

3. Откроем "engine/modules/register.php". Найдем
PHP:
$sec_code = $_POST['sec_code'];
заменим на
PHP:
$sec_code = $_POST['fpisduspam'];
. Сохраним.
п.с. только что был недоволен что какието васи добавлют новости, поправил для себя и с вами поделился (на 8.3 работает тоже)
 
  • Нравится
Реакции: buzb
Подскажите что можно сделать чтобы постеры не добавляли новость через программу?
Как изменить ссылку на добавление новостей? или если есть ещё какой вариант?
А то постят бог знает что и куда попало, надоели уже:mad:

Хм..попробуй поставить другую каптчу - это как вариант.Хотя щас практически все опознаются автоматом.
 
Самый просто и действенный метод без всяких заморочек - всех нормальных юзеров кто постит новости переводишь в группу журналистов, а группе пользователей запрещаешь добавление новостей.

И не нужно никаких модификаций, которые потом слетят при апгрейде.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху