Очки (PTS) во флеш игре
Мой друг сделал флеш игру для моего сайта. Игра делает запрос в /game/p00ints.php с точками в $_POST['points'].
Но хакер может легко узнать, как получить больше очков, так что, как мой друг или я можем исправить эту дыру в безопасности?
С наилучшими пожеланиями,
Эрик Перссон
2 ответа
Быстрое решение - добавьте некоторую контрольную сумму в качестве второго параметра, например, md5("секретное слово"+md5(точки)). Это усложнит жизнь хакеру, и, надеюсь, они не будут беспокоить.
Я не думаю, что существует абсолютное 100% безопасное решение, так как флэш-память может быть декомпилирована.
Чтобы исправить это, нужно рассчитать все точки на сервере и заставить клиента отправлять необработанный ввод (например, удерживать левую клавишу со стрелкой 1 секунду, нажать клавишу ввода, удерживать левую кнопку мыши 2 секунды и т. Д.). Даже тогда злоумышленники могут написать ботов, чтобы обойти ваш флеш-клиент (но боты должны будут отправлять необработанные данные). Я понимаю, что реализовать это сложно, но я думаю, что это самое безопасное решение.
Добавление закрытого ключа во флэш-файл может стать препятствием для казуальной игры. Однако он не обеспечивает реальной безопасности, потому что кто-то может легко декомпилировать SWF.