XSS в URI на странице без какого-либо ввода - PullRequest
3 голосов
/ 23 февраля 2011

Является ли XSS-атака пользовательским вводом?Я получил атаки, подобные этой:

'"--></style></script><script>alert(0x002357)</script>

при сканировании страницы php без содержания html с помощью acunetix или netsparker.

Заранее спасибо

Ответы [ 4 ]

1 голос
/ 23 февраля 2011

Помните, что даже если у вас была просто статическая коллекция файлов HTML без каких-либо серверных или клиентских сценариев, вы все равно можете сохранять свои журналы в базе данных SQL или просматривать их как HTML, используя некоторый анализатор журналов, который может быть уязвимым для такого рода URI. Я видел URI в журналах, которые использовали escape-последовательности для запуска вредоносных команд в терминалах командной строки - google для внедрения escape-последовательности, и вы можете быть удивлены их популярностью. Атака веб-инструментов анализа журналов еще более распространена - Google для внедрения журналов. Я не говорю, что эта конкретная атака была направлена ​​на ваши журналы, но я просто говорю, что отсутствие отображения пользовательского ввода на ваших веб-страницах не означает, что вы защищены от вредоносных полезных нагрузок в ваших URI.

0 голосов
/ 24 февраля 2011

Сканеры Blackbox попробуют эту атаку, даже если ваш html не ожидает каких-либо параметров, потому что у них нет простого способа узнать, что происходит в вашем исходном коде), если вы ничего не отображаете или используете что-то вроде PHP_SELF у вас все хорошо.

Также взгляните на XSS на основе DOM, чтобы понять, как XSS может происходить без каких-либо изъянов на стороне сервера.

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

Во-вторых, вы можете вручную проверить, и если JS выполняет, то вы можете выяснить, относится ли оно к вашемуframework, или уязвимость в коде javascript или в URL Rewrite (может быть, вы повторяете ваш текущий путь на странице) или что-то в этом роде.

0 голосов
/ 23 февраля 2011

Я не уверен на 100%, что понимаю ваш вопрос. Если я вас правильно понял, вы использовали сканер безопасности, чтобы проверить ваше веб-приложение на наличие уязвимостей XSS, и оно показало проблему, о которой вы не уверены, действительно ли это проблема.

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

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

0 голосов
/ 23 февраля 2011

Где вы нашли этот XSS? Насколько мне известно, если страница не требует какого-либо пользовательского ввода (обрабатывает / отображает ее), она не может быть уязвимой для XSS.

Edit:

Я думаю, что я неправильно понял ваш вопрос - вы имели в виду, может ли XSS произойти, введя Javascript в адресную строку браузера? Или добавив Javascript в URI? Если последнее - то страница восприимчива к XSS, и вы должны использовать белый список для любых переменных, передаваемых в ваш URI. Если первое, то нет, любые изменения на стороне клиента в адресной строке будут видны только этому одному пользователю.

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