Попытка использовать ColdFusion для передачи данных формы для публикации/перенаправления/получения

Мне нужно исправить уязвимость в системе безопасности на странице ColdFusion, содержащей ФОРМУ, где мы не хотим, чтобы пользователь мог нажать кнопку «Назад + перезагрузить» в браузере и увидеть поля, заполненные тем, что они ввели до отправки формы.

На сайте есть страница .cfm, которая загружает шаблон для другой страницы .cfm. 2-я страница .cfm имеет объект FORM, который имеет в качестве ДЕЙСТВИЯ первую страницу .cfm. По сути, это страница критериев поиска, которая возвращает результаты.

Я попытался изменить ДЕЙСТВИЕ для ФОРМЫ на 2-й странице .cfm, чтобы указать на страницу temp.cfm, которая имела следующий код

<cfheader statuscode="302" statustext="Moved Temporarily">
<cfheader name="Location" value="firstpage.cfm">
<cfabort>

так что браузер не сможет использовать «назад», чтобы вернуться к исходной странице .cfm с заполненными значениями... но это не передача моих данных FORM мимо этой страницы temp.cfm, и мои поиски всегда вызывают ноль результатов.


person Community    schedule 18.08.2009    source источник


Ответы (3)


После того, как ваша страница действий обработает форму, используйте CFLOCATION, чтобы перенаправить браузер на другую страницу. Здесь используется переадресация 302.

person ale    schedule 18.08.2009

Вы используете cfform? если это так, удалите атрибут PreserveData="true" в своей форме. Или вы можете при желании удалить свое значение = "# form.formfield #" из входных данных формы. Если бы вы могли опубликовать пару строк своей формы, мы, вероятно, смогли бы лучше помочь.

Вы проверили, кэшируется ли страница формы?

person andrewWinn    schedule 18.08.2009

Отключение кэширования в метатеге HTML будет работать. Не нужно использовать перенаправление вообще.

Например. Пользователь щелкнул ссылку выхода из системы, и когда пользователь щелкнет назад, это будет новый запрос, и к тому времени вы можете проверить, зарегистрирован ли СЕССИЯ или нет, если нет, перенаправить на страницу входа.

person Henry    schedule 18.08.2009