Red
Hide
Это где вылезло
Hide
А что ты сделал с массивом?
Red
Red
Просто распаковал [...[1, 2, 3]]
Hide
Hide
У меня так
Red
Ага)
Red
Кароч был переопределён прототип
Red
Таким образом хакеры могут получать доступ к массивам, на которых используется spread оператор или for .. of .. (for each)
Hide
Red
Я многое знаю о хаках в браузерках
Red
Зачем?
Red
Не знаю
Red
Полезно ли это?
Red
Только для небольшого сообщества браузерных геймдевов
honey
Ну ты можешь добавить свой кастомный метод или переписать существующий*, вроде
honey
Red
Red
Ты о чём?
honey
Array.myCustomMethod = () => console.log('wow my logic is poor')
Anton Soldatov
Anton Soldatov
Если вы хотите дополнительную логику добавить, оберните в proxy и добавляйте, а потом вместо стандартного массива используй этот
Anton Soldatov
Да и вообще он вроде не про это спросил :)
Anton Soldatov
Red
Anton Soldatov
Да
Anton Soldatov
В комментариях познакомишься с людьми по теме — ляпота))
Hide
Red
Не, зачем популяризировать методы взлома
Red
Я наоборот от них защищать пытаюсь
honey
Red
Я максимум меняю дескриптор configurable на false у глобальных классов/объектов, их статических/не статических методов
Red
Anton Soldatov
Вообще SDL не надо трогать это Мега плохая практика
Anton Soldatov
Если до появления прокси в этом был хоть какой-то практический смысл то теперь не
Anton Soldatov
Red
Red
А античит системы очень сложные
Red
И секретные
Red
Хак написать - пять минут
Red
Внедрить защиту - месяцы
Anton Soldatov
Red
Anton Soldatov
По античитам если хочешь
Red
Хех
Anton Soldatov
Это тоже самое :)
Anton Soldatov
И по читам
Anton Soldatov
Это очень прибыльное занятие в обе стороны :)
Red
Лол
Anton Soldatov
ИБ оно и в Африке иб, не так важно, что ломать/защищать :)
Red
Ну меня в команду приняли одной игрушки, сейчас пытаюсь внедрить хотя бы заплатку античита, чтобы превентировать лёгкий монкипатчинг
Anton Soldatov
@rulzone просим твоего мнения, как ИБ милорда
Just
Кто то слышал про sora Ai, если да, то что думаете?
Александр
да а какое тут мнение)))
Браузер априори недоверенная среда) Если нужен контроль за данными, то вся важная логика должна быть реализована на сервере.
На фронт должно попадать только то, что пользователь может увидеть и использовать. Если на фронт попадают данные, которые пользователь не должен по какой-то причине видеть, то это значит архитектура не правильная
Александр
переопределить метод в прототипе массива - это не хак. Это просто знание языка и особенностей этого языка.
Хак - это когда используется недекларированные возможности браузера или приложения.
Александр
защититься от переопределения и внедрения доп.методов в классы и прототипы можно, но дешевле разработать архитектуру под безопасную обработку данных
honey
Anton Soldatov
Anton Soldatov
То есть то, что изначально есть в языке или например рантайме (браузере, ноде)
Red
Red
И есть такой метод как монкипатчинг
Red
Самый распространенный и простой
Александр
ну браузерные игры бывают разные) Есть оффлайн есть онлайн
Александр
взломать можно что угодно)
Александр
В иб всегда рассматривается на возможность взлома, а стоимость взлома
Red
Справедливо. Поэтому для браузерок достаточно обеспечить проверку и защиту прототипов и защиту от изменения сурсов
Александр
Стоимость защиты не должны превышать стоимость информации или продукта.
А в идеале быть не дороже 20-30% стоимости активов
Red
Тоже верно, но не знаю сколько стоют мою знания в этой сфере))
Александр
Если мы говорим про браузер, то самое эффективное - это обфускация исходников
Red
фигня это
Red
для игр не эффективно
Red
падает производительность
Александр
ну либо ты не видел как это правильно делают)
Red
лол
Red
я такого насмотрелся