Взлом значения DropDownList - PullRequest
       6

Взлом значения DropDownList

4 голосов
/ 28 февраля 2010

У меня есть DropDownList, и я пытаюсь предотвратить его использование в качестве вектора атаки. Могу ли я предположить, что пользователь не может фактически изменить значения DDL и выполнить обратную передачу на сервер? В настоящий момент я получаю это сообщение об ошибке ASP.NET, если я пытаюсь изменить пакет после отправки:

For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them.

Правильно ли я считаю, что это связано с нарушением целостности в хэше viewstate? Можно ли это обойти?

Спасибо

Ответы [ 2 ]

3 голосов
/ 28 февраля 2010

На самом деле вы должны быть в состоянии предположить, что параметры раскрывающегося списка не были изменены на стороне клиента, если страница имеет EnableEventValidation = true (по умолчанию, хотя вы можете отключить его для каждой страницы или в файле web.config). Если на стороне клиента выпадающего списка добавляется новое значение, и происходит обратная передача, произойдет ошибка, если вы не зарегистрируете это новое значение для проверки события (http://odetocode.com/blogs/scott/archive/2006/03/21/asp-net-event-validation-and-invalid-callback-or-postback-argument-again.aspx)

3 голосов
/ 28 февраля 2010

Нет, вы не можете этого предположить.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...