Комментарии 11
Это ещё раз доказывает, что нужно использовать родные решения: если есть оф. плагин - то его, если нет - сделать самому по оф. мануалу. Уже не первый раз читаю про баги Unity IAP.. :(
ASN.1 - о боги. Кто-то ещё использует этот ужасный формат в 2022 году? Я думал он остался только в ssl-сертификатах.
Надо рассказать программистам Unity про фаззинг тесты. Они нынче такие баги хорошо и быстро находят, может ещё десяток бы нашли :)
Как раз недавно за прозрачный фаззинг дали приз internet society "проверено временем"
https://www.internetsociety.org/blog/2022/04/announcing-the-ndss-2022-test-of-time-award-automated-white-box-fuzzing/
Небольшая ремарка: ASN.1 сам по себе не определяет, как именно данные будут сериализованы в последовательность байтов. Способы сериализации называются DER, PER, UPER, XER и другие. Судя по «У формата ASN.1 есть короткие метки, обозначающие тип структуры.», в статье описан именно DER.
несколько вопросов...
почему вместо нормального для таких случаев XML используется какая-то непонятная структура с потенциальными ошибками? это же явно кроссплатформенный код
почему команда Unity сама не пишет тесты на свой код парсинга, тем более что это достаточно просто в данном случае
Какой-то странный парсинг, даже если неверно определялся тип, он же должен был отвалиться когда закончились данные, а не улетать в бесконечный цикл.
Как мы теряли игроков из-за того, что они платили за игру