Как я передаю переменную в шаблон чаш Грааля из файла Расположения?

Я работал над приложением asp.net, которое прошло проверку защиты ведущей компанией по обеспечению безопасности, и я изучил этот легкий прием предотвращению менее известной, но важной уязвимости системы обеспечения безопасности.

ниже объяснения от: http://www.guidanceshare.com/wiki/ASP.NET_2.0_Security_Guidelines_-_Parameter_Manipulation#Consider_Using_Page.ViewStateUserKey_to_Counter_One-Click_Attacks

Рассматривает использование Страницы. ViewStateUserKey для противостояния нападениям с одним щелчком. Если Вы аутентифицируете свои вызывающие стороны и используете ViewState, устанавливаете Страницу. Свойство ViewStateUserKey в обработчике событий Page_Init для предотвращения нападений с одним щелчком.

void Page_Init (object sender, EventArgs e) {
  ViewStateUserKey = Session.SessionID;
}

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

нападение одного щелчка А происходит, когда взломщик создает Веб-страницу (.htm или .aspx), который содержит скрытое поле формы, названное __ СОСТОЯНИЕ ОТОБРАЖЕНИЯ, которое уже заполнено данными ViewState. ViewState может быть сгенерирован от страницы, которую взломщик ранее создал, такие как страница магазинной тележки с 100 объектами. Взломщик соблазняет не подозревающего пользователя в просмотр к странице, и затем взломщик заставляет страницу быть отправленной на сервер, где ViewState допустим. Сервер не имеет никакого способа знать что ViewState, порожденный от взломщика. Проверка ViewState и HMACs не противостоят этому нападению, потому что ViewState допустим, и страница выполняется под контекстом защиты пользователя.

установка By свойство ViewStateUserKey, когда обзоры взломщика к странице для создания ViewState свойство инициализируется к его имени. Когда законный пользователь отправляет страницу серверу, она инициализируется с именем взломщика. В результате сбои проверки ViewState HMAC и исключение сгенерированы.

14
задан Mikey Donuts 1 December 2009 в 22:13
поделиться

2 ответа

You'd need to use a page property: http://grails.org/doc/1.1.1/ref/Tags/pageProperty.html

Then pass it into the render tag using the model param.

cheers

Lee

2
ответ дан 1 December 2019 в 06:16
поделиться

Я все время делаю этот узор. На мой взгляд, я могу прикрепить свойство к странице либо вручную, либо с помощью тега параметра в представлении, которое я визуализирую. Это не описано в руководстве пользователя Grails, но очень удобно.

<parameter name="foo" value="bar" />

Затем я мог бы получить доступ к свойству page с помощью тега pageProperty .

<g:set var="activeNavItem" value="${pageProperty(name: 'page.foo')}"/>

Макет вообще не должен обрабатывать эту переменную: -)

20
ответ дан 1 December 2019 в 06:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: