Как я могу защитить свою сетевую игру от читеров? - PullRequest
3 голосов
/ 29 марта 2009

Я только что написал одно из моих первых веб-приложений (Linux, Apache, MySQL, Django) и хотел бы запустить его публично. Это задача на основе веб-формы, замаскированная под игру; Я намерен в конечном итоге поставить его на Amazon Mechanical Turk и дать небольшие бонусы людям, которые набрали определенные баллы.

Несмотря на то, что это приложение не имеет чрезвычайно высокого риска для безопасности, мне нужно защитить его от манипуляций и обратного инжиниринга. Тем не менее, у меня мало формального обучения в области тестирования / безопасности. Учитывая, что есть реальные призы, которые можно выиграть, я знаю, что у людей будет стимул обманывать, будь то изменение данных POST, нажатие кнопки «назад» и повторная подача данных, пока они не выиграют, и т. Д. До сих пор я имел дело с этими проблемы на случайной основе, вставляя тесты безопасности, поскольку я думаю о возможных подвигах. Однако я понимаю, что, вероятно, существует множество форм манипуляции, о которых я еще не думал.

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

Ответы [ 4 ]

2 голосов
/ 29 марта 2009

Справочник по безопасности браузера Google содержит много информации о потенциальных уязвимостях в веб-архитектуре, в частности подробности, на которые влияет поведение веб-браузеров (в отличие от серверных уязвимостей, таких как SQL) инъекционные атаки и тому подобное). Это хорошая отправная точка для изучения того, как браузеры работают таким образом, что влияет на безопасность, например, как они обрабатывают файлы cookie, запросы между доменами, изображения и типы MIME и т. Д.

2 голосов
/ 29 марта 2009

Очень хорошее место для чтения - OWASP; см. http://www.owasp.org/index.php/Main_Page. Они имеют обширную документацию по безопасности сайта.

Редактировать: для быстрого обзора, проверьте "десятку".

2 голосов
/ 29 марта 2009

SQL-инъекция

Запретить злоумышленникам изменять запросы SQL через строки URL-запросов.

DoS-атаки

Запретить пользователям с одного и того же IP-адреса слишком частый доступ к вашему сайту за короткий промежуток времени.

Надежность пароля

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

Защитный код

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

1 голос
/ 29 марта 2009

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

...