«Функции расширения и переменные могут быть полезны при предотвращении атак с использованием XML-инъекций».
Источник: https://msdn.microsoft.com/en-us/library/dd567715.aspx
Основная идея в предотвращении инъекции XPath является предварительной компиляцией выражения XPath вы хотите использовать, и чтобы переменные (параметры) в нем, что в процессе оценки будет заменен введенные пользователем значения
В .NET:
- ли ваш XPath expresion предварительно скомпилированные с XPathExpression.Compile().
- Используйте метод XPathExpression.SetContext(), чтобы указать в качестве контекста объект XsltContext, который разрешает определенные переменные вводимым пользователем значениям.
Источник выше, basiclly содержит всю необходимую информацию.
Увидев, что вы не предоставили абсолютно никакого контекста, что бы это ни было - я бы сказал, что это можно легко решить с помощью проверки ввода. – rook