|
07.08.2012, 01:31
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
svs_js,
Зачем ?
Сообщение от svs_js
|
и вот смысл в том, что когда мы выводим значение инпута, код ЖС, какой записан в качестве значения поля, выполняется
|
Чем Вы выводите значение инпута ?
Когда должен выполниться этот код ?
Есть еще куча вопросов - потому, что так не стоит делать, посколь можно и элегантней, безопасней и проще
Последний раз редактировалось Deff, 07.08.2012 в 01:34.
|
|
07.08.2012, 01:32
|
Профессор
|
|
Регистрация: 31.05.2012
Сообщений: 396
|
|
Тогда нужно в любом тексте, приходящем от пользователей, который вписывается в HTML код, экранировать чувствительные символы на сервере.
Например, в PHP для этого есть функция htmlspecialchars.
Последний раз редактировалось oneguy, 07.08.2012 в 01:40.
|
|
07.08.2012, 01:33
|
Профессор
|
|
Регистрация: 31.05.2012
Сообщений: 396
|
|
Сообщение от Deff
|
svs_js,
Зачем ?
|
Если я правильно понял, автор хочет защититься от атаки XSS.
|
|
07.08.2012, 08:41
|
Аспирант
|
|
Регистрация: 06.05.2012
Сообщений: 31
|
|
oneguy,
совершенно верно. а вот функции ПХП нет возможности использовать, сайт не на пхп
|
|
07.08.2012, 12:08
|
|
Профессор
|
|
Регистрация: 22.03.2012
Сообщений: 3,744
|
|
Ну и сделайте перед отправкой проверку на присутствие слова script в value
<input type="text" value="<script>alert(1)</script>"
onclick=" (value.indexOf('script') != -1) ? alert('есть script') : alert('нет script')"
/>
|
|
07.08.2012, 19:49
|
Профессор
|
|
Регистрация: 31.05.2012
Сообщений: 396
|
|
Сообщение от svs_js
|
совершенно верно. а вот функции ПХП нет возможности использовать, сайт не на пхп
|
Если не на ПХП, то эту функцию несложно написать самому. Нужно заменить в строке символы "&", "<", ">", "\"" на соответственно "&", "<", ">", """.
|
|
07.08.2012, 19:51
|
Профессор
|
|
Регистрация: 31.05.2012
Сообщений: 396
|
|
Сообщение от bes
|
Ну и сделайте перед отправкой проверку на присутствие слова script в value
|
Этого недостаточно, так как скрипт можно вставлять не только с помощью элемента <script>, а ещё с помощью атрибута on...
Да если ещё проверку делать только на клиенте, то это не помешает хакерам обойти эту защиту.
Последний раз редактировалось oneguy, 07.08.2012 в 19:58.
|
|
07.08.2012, 19:54
|
|
Профессор
|
|
Регистрация: 22.03.2012
Сообщений: 3,744
|
|
Сообщение от oneguy
|
Этого недостаточно, так как скрипт можно вставлять не только с помощью элемента <script>, а ещё с помощью атрибута on..
|
а также href = "javascript :
|
|
|
|