Как защититься от взлома, если пользователь отправляет XML - PullRequest
1 голос
/ 09 сентября 2010

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

Я использую XML для рендеринга HTML-форм или текста на веб-странице, и я буду кодировать текст и никогда не отображать фактический XML-код в браузере, если только он не предназначен для редактирования. Я подвержен большому количеству взломов? Как мне лучше защититься от этого?

Например:

<criteria name="Performance" type="textbox">115 Horsepower</criteria>

Выше будет отображаться либо ячейка таблицы со словом «115 лошадиных сил», либо текстовое поле со словом «115 лошадиных сил».

Ответы [ 2 ]

1 голос
/ 09 сентября 2010

Вот один пример вектора атаки для содержимого XML:

http://en.wikipedia.org/wiki/Billion_laughs

1 голос
/ 09 сентября 2010

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

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