Joker Board 3.0

Вот так должно быть.
Для просмотра ссылки Войди или Зарегистрируйся
Этот хрен как раз мне постил. я узнал об этом человеке всё что можно. хакеров таких найти труда не составляет. но я так понял он это делает от имени какого то известного сайта по продвижению. писал ему на личный майл. пока больше ничего не приходило. Конечно засадить этого хрена на несколько лет по новым законам о спаме труда особо не составит. но найдутся другие.Sunday пишет что поможет капча, я ее обхожу без всяких хрумеров на своём сайте. Постинг идет не через сервисы аникапчи и модеры этого сайта прежде чем это утверждать должны четко это понимать. Нужна проверка валидности и проверка стоп слов НЕ при нажатии на кнопку "отправить", а после принятия скриптом данных методом POST. Через POST спамится любая недоработанная доска на движке джокера, и я сделал вывод, что хрумер делает именно так (просто близко не знаком с этой бесполезной прогой, так что не могу делать точные выводы).
Мне кажется выход - прикошачить к методу пост в форму какую нибудь скрытую форму (hidden) с сессией куки. Благо есть ява скрипты позволяющие это довольно просто делать. я пока этим вопросом не занимался, т.к. спама больше не было.
________________________
скопируй ссылку и удали букмаркс
 
я переименовывал папки и многие файлы. но по поводу автоматического добавления объяв, в стандартном скрипте стоит в самой верхней строчке проверка рефферера, если он не совпадает с названием сайта, т.е. напрмиер мы постим автоматом какой нибудь прогой, то он посылает нафиг. по поводу комментов не знаю. добавляйте подобные штуки, пускай идет проверка, что вы зашли именно через сайт ручками а не прогой.

Имеешь ввиду вот это " $host=parse_url($_SERVER['HTTP_REFERER']); if($host['host']!=$_SERVER['HTTP_HOST'])die(); " ?
Это вообще детский сад, я могу даже плагином с фаерфокса передать нужный header, указав в нем какой хочу HTTP_REFERER, не говоря уже о программах предназначенных для спама
 
да. я про это. но это как ты правильно сказал, чепуха. спамят и без нее замечательно. в файле index.php есть код
Код:
elseif(@$_GET['op']=="add"){
    require_once("inc/head.inc.php");
    require_once("inc/top.inc.php");
    echo $design_div; // вывели открывающие блоки дизайна
    if($c['add_new_ads']=="no") echo "<div class=\"alcenter orange\"><h1>".$lang[1119]."</h1></div>";
    else{
        if($c['add_new_only_user']=="yes"){
            if(!defined('USER')){
            setcookie('jbnocache','1',time()+60,"/");
            header("location: ".$h."login.html");
            }else{
            define("ADDNEW","reg_user");
            require_once("inc/add_new.inc.php");
            }
        }else{
            define("ADDNEW","no_reg");
            require_once("inc/add_new.inc.php");
        }
    }
}

Там уже есть какаято минимальная проверка куки от дублей объявлений, думаю туда будет не сложно добавить проверку. Файл add_new.inc.php тут никакой роли не играет, к нему доступ "из вне" запрещен, объявления добавляются на автомате именно через index.php. Для особо недоверчивых конечно можно сделать проверку куки в add_new.inc.php, в начале добавить чтото подобное
Код:
if(setcookie("kuki_validate",$_POST['kuki'],time()+77760000,"/")) тили тили трали вали.
Можно даже новичкам изучить файлы changecity.php, как работает сессии куки для изменения городов и регионов.
-----------------------
вообще весь сайт это по сути один файл index.php))))
-----------------------
я тут подумал, куки не является защитой. Её тоже можно обойти.
хотя я скорее всего не знаю всех возможностей этой замечательной функции.
думаю как дополнение делать защиту на скорость. т.е. учесть человеческий фактор. например запускаем сайт, сразу выходим на страницу new.html, и если мы зашли на сайт и добавили объявление быстрее чем за 30 секунд, согласитесь, невозможно заполнить все поля за это время. Делаем блокировку на время. Нужен опытный програмист, я пока не в состоянии написать подобное.
 
Тест. Проверка Куки в файле add_new.inc.php типа "if(@$_POST['kuki'])" может буть тупо проигнорирована. У меня в данный момент именно так настроен парсер, он попросту игнорирует капчу, несмотря на то что она включена в админке.
Для начала нужна проверка валидности в этом же файле именно наличия всех меток передаваемой формы POST. Например в файле add_new_form.inc.php есть код
Код:
<input maxlength="<?=$c['count_symb_autor']?>" type="text" name="autor" size="50" value="<?=htmlspecialchars(@$_POST['autor'])?>" />
Это как известно строчка указангия имени автора. Так вот если добавляем объявление с помощью хрумера или другой автоматической программы, и если не укажем в форме POST наличия name="autor", то объявление не будет добавлено. На данный момент это не выполняется. Сейчас можно любой name формы тупо проигнорировать. Причем если его учесть, но оставить пустым, то сработает проверка валидности в файле add_new.inc.php
Код:
if(@$_POST['autor'])$autor=trim($_POST['autor']);
    else{define("ALERT",$lang[92]);require_once("add_new_form.inc.php");die();}
И это ничто иное, как дыра. против простых юзеров срабатывает проверка на количество символов, а против спамеров нет ничего.
Отсюда вывод - хоть 500 капчей, хоть 1000 куки, один фиг, с помощью прямого запроса POST я добавлю объявление на вашу доску, сначала обманув рефферер.
С защитой от ссылок, особенно в домене рф или в кодировке punycode надо отдельно добавлять в файл add_new.inc.php . Но сколько существует всего доменов... вы их все просто не вспомните.

Короче вопрос безопасности еще актуален я так понимаю. Привязывать сессию куки ко времени с блокировкой например в месяц конкретного ip глупо. Он раз в месяц будет спамить к вам на сайт, но таких как он может быть куча, в итоге блокировка просто бессмысленна. Еще, данный гражданин настроил своий скрипт спама именно на доски джокера, это было лично мной всё проверено. т.е. я сделал вывод, что он нашел эту глупейшую дыру, распознает доски джокера на автомате,и тупо плюет данные по POST.
 
Этот хрен как раз мне постил. я узнал об этом человеке всё что можно. хакеров таких найти труда не составляет. но я так понял он это делает от имени какого то известного сайта по продвижению. писал ему на личный майл. пока больше ничего не приходило. Конечно засадить этого хрена на несколько лет по новым законам о спаме труда особо не составит. но найдутся другие.Sunday пишет что поможет капча, я ее обхожу без всяких хрумеров на своём сайте. Постинг идет не через сервисы аникапчи и модеры этого сайта прежде чем это утверждать должны четко это понимать. Нужна проверка валидности и проверка стоп слов НЕ при нажатии на кнопку "отправить", а после принятия скриптом данных методом POST. Через POST спамится любая недоработанная доска на движке джокера, и я сделал вывод, что хрумер делает именно так (просто близко не знаком с этой бесполезной прогой, так что не могу делать точные выводы).
Мне кажется выход - прикошачить к методу пост в форму какую нибудь скрытую форму (hidden) с сессией куки. Благо есть ява скрипты позволяющие это довольно просто делать. я пока этим вопросом не занимался, т.к. спама больше не было.

Я вот первым делом что сделал, это выкинул стандартную капчу, т.к. это просто какой-то изврат как она реализована, она ни от чего не защищает, и очень легко пробивается. Здесь на форуме есть ветка про обсуждения капч, в общем, там можно себе выбрать что-то хорошее, что-то вроде такого :
Скрытое содержимое доступно для зарегистрированных пользователей!
 
Тест. Проверка Куки в файле add_new.inc.php типа "if(@$_POST['kuki'])" может буть тупо проигнорирована. У меня в данный момент именно так настроен парсер, он попросту игнорирует капчу, несмотря на то что она включена в админке.
Для начала нужна проверка валидности в этом же файле именно наличия всех меток передаваемой формы POST. Например в файле add_new_form.inc.php есть код
Код:
<input maxlength="<?=$c['count_symb_autor']?>" type="text" name="autor" size="50" value="<?=htmlspecialchars(@$_POST['autor'])?>" />
Это как известно строчка указангия имени автора. Так вот если добавляем объявление с помощью хрумера или другой автоматической программы, и если не укажем в форме POST наличия name="autor", то объявление не будет добавлено. На данный момент это не выполняется. Сейчас можно любой name формы тупо проигнорировать. Причем если его учесть, но оставить пустым, то сработает проверка валидности в файле add_new.inc.php
Код:
if(@$_POST['autor'])$autor=trim($_POST['autor']);
    else{define("ALERT",$lang[92]);require_once("add_new_form.inc.php");die();}
И это ничто иное, как дыра. против простых юзеров срабатывает проверка на количество символов, а против спамеров нет ничего.

Потому что там за проверку поля "autor", как и все остальные, отвечает функция check_fields() в файле main.js , отключаем JS, и делай что хочешь.

Над было писать не if(@$_POST['autor']), а if(!empty($_POST['autor']))
 
Понимаете в чем дыра, не в том что капча какаято плохая и ее сервис antigate со своими китайцами распознают за 15 секунд, а в том что постинг объяв идет напрямую по POST. Про капчу можете совсем забыть, пока не устранена дыра ПОСТА, никакая капча не поможет. Присвоить куки... она итак присвоится, тоже бессмысленно это делать. Сервис reCaptcha тоже врядли спасет, я не видел каким кодом она встраивается, не сталкивался с ней, но если нет блокировки по POST, то это такая же туфта. Самая лучшая капча визуальная. На этом сайте отличная капча Для просмотра ссылки Войди или Зарегистрируйся но она такая же ниочемная пока не заблокировать POST для всяких хрумеров и олсабов тому подобным.

отключаем JS, и делай что хочешь.
я ничего не отключал, и делаю что хочу)))) дыру я указал. теперь можно совместными усилиями победить её.
Дело в том, что этой дырой я пользуюсь на своём сайте, спец прогой добавляю объявы, чтобы не заходить на сайт и не повышать счетчик в гугл адсенсе.

я это ставил... но чтото у меня не срослось с обновлением файлов. например сайтмэп. получалось что я захожу как админ, а он всё равно ругается что я юзер. все кэши и т.п. были отключены. думаю круче добасить будет в каждую папочку файл index.php или html с пустым содержанием, и переименовать все админские системный папки и пути к ним как можно заумнее. у вас всё равно доступ останется а для остальных нет шансов, даже если это папка названа будет одним другим сиволом. у меня всё переименовано, может поэтому сейчас нет хацкеров и горе спамеров. вообще не оч по теме, но это полный лошизм раскручивать так свои сайты... конечно у моего сайта PR3 и кому то это будет интересно там разместить ссылку, но она будет стремной в любом случае.

Меня на данный момент интересуют другие вещи:
1. как внедрить нормальный тескотовый редактор для редактирования объявления, чтобы со всеми тегами как положено, а не тупо текст в одну строчку. (Сам еще не пробывал внедрять).
2. как сделать ЧПУ. можно с mod rewrite, но не очень ясно понятно как быть с присвоением ссылок внутри файлов.. например в том же файле add_new.inc.php ссылка на новое объявление формируется простым выдергиванием номера категории и номера ID объявы, htaccess тут особо не поможет.. нужно чтото еще.
3. ну и вопрос безопасности оставляем открытым. доработка POST.

Опишите пожалуйста, как вы еще раз добавляете сообщения
Я формирую на локалхосте файл PHP, в котром идет формирование всех заголовков метода POST, напрмиер multipart/form-data. В файл со спецпрограммы поступают данные тоже методом пост, в итоге этот файл запсукается и автоматически размещает объявление с картинкой и со всеми данными которые необходимы. Таким методом эмулирую как бы человеческое размещение. Не напрямую в базу данных, а как положено, как будто я заполнял всю форму и как будто я даже указал капчу.. хотя я ее тупо не учитываю в методе ПОСТ.
_----------
приведу короткий клочок кода из этого файла:
Код:
$title=$_POST["title"];
это я так принимаю данные с программы.
далее я формирую все заголовки по стандарту POST.
Был бы метод GET, там вообще в 2 счёта. А с POST пришлось повозится очень долго. Поэтому код вам полностью весь продемонстрировать не смогу.. увы. То, что находил в интрнете, куча неработающего мусора.
 
В общем, кто хочет, чтобы его файлы из папки /a/ не мог запускать кто угодно, в каждый файл в самый вверх вставьте вот этот код :

Код:
    if(@$_SESSION['login']&& @$_SESSION['password']){
    $admins=mysql_query("SELECT * FROM jb_admin");cq();
    $adminsdata=mysql_fetch_assoc($admins);
    if($_SESSION['login']!=$adminsdata['login']&& md5($_SESSION['password'])!=$adminsdata['password'])die();
    }

тогда можно будет это запускать только войдя в админку.

я ничего не отключал, и делаю что хочу)))) дыру я указал. теперь можно совместными усилиями победить её.
Дело в том, что этой дырой я пользуюсь на своём сайте, спец прогой добавляю объявы, чтобы не заходить на сайт и не повышать счетчик в гугл адсенсе.

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

У вас тоже такая ошибка? и как ее побороть?

У меня работает .
Нужно разместить например в коневую директорию скрипты в файле index.php подключил -
Код:
include ("stat_bot_user.php");
А пути для вывода исправить в
Код:
if ($col>sizeof($file)) { $col=sizeof($file); }
echo "<strong>Это статистика пользователей</strong>.&nbsp;&nbsp;Перейти на <a href='/log_bot.php'><strong>Статистику ботов</strong></a><br>";
echo "Последние <b>".$col."</b> посещений сайта:"?>
пути <a href='/log_bot.php'>
 
Назад
Сверху