2010-11-04 2 views
2

Несмотря на мою паранойю, я никогда не собирался разбираться в безопасности в Интернете, поэтому моя нехватка знаний вызывает у меня некоторую путаницу в этом.JavaScript неустойчивый вопрос безопасности

Пример: предположим, что у вас есть 2 текстовых поля, оба предназначены для ввода пользователем.

Пользователь вводит все, что захочет, в эти два текстовых поля и нажимает кнопку, тогда кнопка использует немного JavaScript и объединяет все, что находится в этих двух текстовых полях, и отображает ее в div.

Мой вопрос в этом случае, так как он использует клиентскую часть JavaScript, вам действительно нужно дезинформировать ввод пользователя?

Что делать, если оно выводится в текстовое поле вместо div? Или как предупреждение?

Я понимаю, что когда дело доходит до форм/PHP, вы всегда хотите дезинформировать ввод, но я не очень-то знаком с мерами предосторожности JavaScript.

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

ответ

3

Нет, это не проблема безопасности. Причина в том, что злоумышленник должен заставить браузер жертвы совершить это действие, чтобы он был XSS.

Однако, если вы возьмете ввод от чего-то вроде document.location, а затем распечатайте его на странице, используя document.write(), то это DOM based XSS. Но это очень необычная форма XSS.

+0

Спасибо. Я подумал так же, просто хотел удостовериться, что не было какого-то безумного способа, чтобы он оказался в безопасности. – DaiYoukai

+0

@ Безопасность Archonix - очень сложная вычислительная проблема. На SO есть очень умные люди, но обязательно проверяйте свои системы безопасности и проводите собственные исследования. Я видел некоторые ужасно небезопасные ответы. – rook

2

Вам не нужно санировать то, что не идет на сервер.

Если люди хотят что-то сделать с их экземпляром вашей страницы, единственное, что они могут причинить, - это сами. Посмотрите на все, что вы можете сделать с расширением, например GreaseMonkey ... мы говорим намного больше, чем просто конкатенировать строки и отображать их.

Смежные вопросы