Сначала тут писали что структура прилететь непонятно откуда может, непонятно с какими полями и непонятно зачем. А проверить почему-то не хотели...
И "мирные обстоятельства" — это работа ПО на уровне обычного пользователя, с уклоном под ламера, который попытается провести банальную атаку, вставить неверные данные, подменить данные.
От атак более продвинутых пользователей, никто не защищён. Конечно, защиту всё равно делать надо, проверять код, тестеров нанимать. Но это не поможет в итоге, найдут лазейку.
Вроде как гетерогенная система не определяет уровень пользователя ну никак. Это может быть ламер, может быть пентестер, может вообще не быть.
А зачем тогда вообще писать ПО, если вы не знаете кто им будет пользоваться? И причём тут система? Вы сами должны понимать это...
Вот, о чем и речь. В реальной системе легальный пользователь это любой, кто проходит формальную проверку. Не обязательно человек. Программа коректно реализующая вызов АПИ или внешнию браузер который шлет запрос на страничку для пользователя или скрипт вызывающий curl с корректными параметрами. Вы уверены, что к вашему веб серверу только люди обращаются?
И что в этом страшного? В любом случае, есть защита от ботов.
Ну ок, поисковик тоже бот.
а вы не думаете что например в функцию вызова драйвера какой-нибудь юзер может передать ноль, указатель на какой нибудь абсолютно левый массив, ну и свою левую структуру, обработка которой приведёт к исполнению кода в ring0
Нет, поисковик это поисковик))
Понятное дело! Но на эту в здравом уме то защиту делают.. Взгляните на любую функцию, мало что в user-mode библиотеках куча проверок, так ещё и в kernel-mode проверки. Это вот и есть защита на ламера. Даже проще говоря, банальная защита своего кода.
Ну вот, робот это не бот это другое. Это уже игра определениями пошла.
Обсуждают сегодня