[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как защищаться от userJS в чате?
inpost
Всем привет.
Как защищаться от userJS в чате?
Что-то придумать не могу решение простое...

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
sergeiss
А какие именно действия делаются? Автоматические ответы или еще что? От чего именно защищаться нужно?

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
inpost
sergeiss
Автоматическая рассылка ЛС сообщений всем, кто в чате.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
sergeiss
inpost, не знаю точно, как у тебя реализована отправка лички. Я бы предложил, для начала, ограничить время между такими рассылками. Отправил одному - следующая отправка в личку не ранее, чем через 20 (30, 40...) секунд.
Второй вариант - сделать капчу при отправке частых личных сообщений. Первое сообщение ушло, если второе ранее некоего лимита, то предложить капчу. Со словами о том, что "подтвердите, что вы не бот, отправляющий кучу лички".

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
killer8080
inpost
как вариант весь функционал завернуть в замыкание, чтоб скрипты из внешнего scope не могли вызывать функции чата.
inpost
sergeiss
Лимит там стоит. То есть нет массовости, есть интервальность определённая. Может быть 1-2 в минуту.

killer8080
Это как? Ты имеешь ввиду так:
<form onsubmit="function() {действие;}"> ?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
sergeiss
Цитата (killer8080 @ 29.11.2014 - 21:45)
чтоб скрипты из внешнего scope не могли вызывать функции чата.

А смысл? Можно ж программно нажать нужные кнопки, а они уже сами вызовут все функции, где бы те ни находились. Скорее всего, на этом уровне и работает userJS с этим чатом.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Invis1ble
killer8080
можно же сымитировать кликами/другими ивентами smile.gif

ЗЫ. я слоу

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Invis1ble
не было печали, да localStorage навнедряли
user posted image

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

inpost
Invis1ble
Ты о чём? У меня очень сильно оптимизировался сайт после localStorage smile.gif Вторая жизнь открылась моему чату smile.gif Теперь хочется ещё с ботами посражаться user posted image

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Invis1ble
я подумал, что проблема после этого появилась smile.gif

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

killer8080
Цитата (inpost @ 29.11.2014 - 20:51)
killer8080
Это как? Ты имеешь ввиду так:
<form onsubmit="function() {действие;}"> ?

нет, я имел ввиду так
(function () {
var secret = 'hdfgvhrukvhbrhvqnwecviue fu4yrf8ie';
function chat_send() {
...
}
...
})()
Цитата (Invis1ble @ 29.11.2014 - 20:57)
можно же сымитировать кликами/другими ивентами

можно конечно, но можно использовать тот же confirm, нажатия на его кнопки подделать нельзя. Попытки же оверрайда нативного конфёрма легко детектируются
Юзабилити, правда, чата при этом немного страдает, но всё же меньше чем от всяких капч. :)
I++
Никак нельзя защититься. Юзер в своем браузере может делать, все.

Цитата
можно конечно, но можно использовать тот же confirm, нажатия на его кнопки подделать нельзя. Попытки же оверрайда нативного конфёрма легко детектируются
Юзабилити, правда, чата при этом немного страдает, но всё же меньше чем от всяких капч. smile.gif


Ничто не помешает выпилить детектор.
inpost
Ок, а получить информацию об используемых userJS тоже не получится? Хотя бы для данного домена?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.