Antitop v0.2 beta


Голосування в інтернеті - важлива частина і в багатьох випадках - головний фактор формування вебпроектів. Але для коректності - необхідно піклуватись про безпеку, особливо в випадках, коли в голосуваннях приймають участь анонімні користувачі.
Сьогодні в проекті антитоп - вебсайт http://ukrbash.org

ukrbash.org - національний цитатник. Мова буде йти про нього.

Вітання!

Сьогодні позачерговий випуск проекту AntiTop, і пишу я його по причині великої ефективності коду, який був розміщений в інтернеті завдяки мені та моєму партнеру.


Отже, невеликий графік.


ukrbash.org moon





Після спілкування з модератором даного проекту - "на сайт відбувалась ДДОС атака".


Загалом - погоджуся. Хоч і реальною атакою це назвати важко - швидше "дружня атакочка".

Disclaimer

Процедура, обрана для даної події повністю зворотня і робилась після переконання наявності резервної копії. Крім того - в мене є збережені всі дані та статистика "накрутки". Крім того - my.ukrweb.info - постійний читач УкрБашу і даною дією намагається зробити його кращим!





Спочатку трошки прелюдії.

Реалізація голосування - дуже ефективна та важлива частина більшості web2.0 проектів. Вони формуються на основі таких голосувань. Вся їхня структура та суть побудована на голосуваннях та фідбеках. Отже в такому випадку важливим фактором є безпека, бо посягання на голосування можуть повернути проект зовсім в протилежний бік. Скажімо конкурент, для підняття рейтингу свого проекту може завідомо завалити Ваш, опустивши в 0 найцікавіші частини.


На графіку відображено приклад "тупої" накрутки личільників всіх статей з ТОРу. В результаті на арену виходять "нецікаві" низькорейтингові статті, які підсвідомо можуть сформувати в користувачів проекту негативне враження.





Нажаль, на момент публікації статті помилка невиправлена, тому код, який спричиняє таку "бідосю" я опублікую лише після реального "налагодження" роботи.


"Людія"

На протязі 6 годин різноманітні ІР адреси голосували в мінус статті з ТОРу УкрБаша. Нажаль захисту від цього практично не існує, але захист від "дурня" - життєво необхідний, і реалізація цього захисту - за ukrbash.org. Тестування захисту за my.ukrweb.info - завжди допоможемо в цьому.


Рекомендації

  1. Контроль частоти голосувань - обмежити зверху і привязати обмеження до одного ІР
  2. Додати перевірку referrer в момент голосування
  3. Віддачу голоса анонімним користувачем ускладнити додатковим кроком, залежним від випадкових чисел, але мінімально ненавязаним ускладненнями
  4. Реалізувати обробку результатів голосування не одразу, а з невеликою затримкою - скажімо раз в добу, або раз в кілька годин - тоді зміни на вебсайті можна зафіксувати більш чітко і незамітно для користувачів
  5. Ускладнити метод голосування, переробивши його не через GET, а через POST

Висновок

Безпека - це важливо! 


І вивчення сторони взлому - це перший крок до розуміння самої безпеки.





Успіху Вам!


PS

Проект перейшов із стадії альфа в стадію бета.


Для наступних тем сподіваюсь на Ваші пропозиції.





Trackback URL for this post:

http://itua.name/en/trackback/124
Share this

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
MrGALL's picture

Дякую за

Дякую за тестування мого сайту на міцність ;)
Голосування завжди було проблемним місцем УкрБашу (дуже важко реалізувати голосування для незареєстрованих, захищене від накруток).
Але після вчорашньої "атаки" сайт став більш захищеним (я реалізував частину рекомендацій, а реалізацію інших запланував на майбутнє).

Syndicate content Syndicate content

Партнери

Recent comments

експерименти

Rambler's Top100