23:42 

Код безопасности (PHP)

Константин Гуськов
True или False? Вот в чем вопрос.. © A. Fatred
Я сейчас работаю над страницей регистрации одного сайта. Несколько часов думал, как реализовать код безопасности аля защита от ботов.
Вот до чего додумался.

Какой смысл генерить каждый раз новый код? Можно вообще использовать только одну картинку типа "1+9=" введите результат. Бот все равно пробиться не сможет.
А можно сделать десять картинок заранее и пустить их на произвольное отображение.
Если выбрана (показана) картинка номер 1 - переменной code присваевается значение, указанное на картинке, например - 16. Если картинка 7 - значение 79. И так далее.
После чего введенный пользователем код сравнивается со значением переменной code и если совпадает - велком!

Я так и сделал, но хотелось бы как можно реже ошибаться.
Потому у меня несколько вопросов:

1. Чем мой вариант не подходит?
2. Нарушена ли безопасность?
3. Как поступают профессионалы?

@темы: PHP, Безопасность

Комментарии
2008-03-20 в 02:12 

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

можно давать картинку любую (предмет, животное) и ожидать ввода названия

два десятка заранее приготовленых картинок, таблица соотвествий на сервере (в базе или файле), выдача картинки под случайным именем, сохранение в сессии ожидаемого имени, сравнение, результат

если уж совсем юзерам западло набирать названия ---
"укажите где енот" и на выбор несколько случайных картинок, среди которых есть енот ))

кроме того, любая картинка может быть отатрибутирована десятками значений ... красный, круглый, лысый, с глазами, сидит, устал, сладкий .. и т.д.

2008-03-20 в 02:34 

FVA
Будем же учиться хорошо мыслить - вот основной принцип морали (с) Паскаль
Runables Такая система имеет изъяны - один раз в ручную сохранить картинки, составить для бота таблицу соответствий, прикрутить модуль сравнения изображений и привет. Особенность в том, что картинка не должна быть распознаваема не только распознавалками текста. Важно чтобы невозможно было сформировать систему.

2008-03-20 в 11:06 

Runables
последний вагон
FVA
вообще, мне кажется проблема авторегистраций раздута )
боты-спамеры в основном нацеливаются на сайты развернутые на стандартных движках (плон, медиавики и т.п.) на стандартных форумах, или в сообщеставх ("народ", блоги и т.п.) .. это и делает их использование комерчески выгодным!

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

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

а уж ценовой вопрос такой атрибуции каждый решает по своему ) кто-то сажает модератора за зарплату, кто-то отдаёт это на откуп пользовательскому комюнити за баллы

в конечном счете, защита от авторегистраций сводится лишь к тому, что бы сделать обучение максимально умного бота более дорогостоящим, чем регистрация агента-человека

2008-03-22 в 15:29 

Runables
последний вагон
вот проект как раз на картинках построеный --
research.microsoft.com/asirra/

даже API какое-то есть

2009-12-17 в 15:50 

К слову сказать, Microsoft официально информирует о доступности в СНГ свежего программного продукта Microsoft Security Essentials, обеспечивающего, по словам разработчиков, крепкую оборону наших компов от вирусов, шпионских программ и остальных гадов. Это ПО вручается всем пользователям лицензии Windows бесплатно. По результатам испытания проводимом журналом Virus Bulletin этот антивирус выявил 100% вирусов из мировой вирусной коллекции. Частности можно полюбопытствовать здесь http://fishec.ru.
У меня, например, после NOD 32 он обнаружил еще 5 троянов. Пока что буду им пользоваться. Посмотрим ...
Забрать его можно на официальном вебсайте компании Microsoft.

URL
     

@web-программирование

главная