Как предотвратить инъекцию LDAP при использовании DirectorySearcherC#

Место общения программистов C#
Ответить
Anonymous
 Как предотвратить инъекцию LDAP при использовании DirectorySearcher

Сообщение Anonymous »

Это было задано ранее, но ответы устарели, и я хотел бы знать, что такое современный подход. Справочник для сотрудника с идентификатором сотрудников < /code>, который является строкой, которая, возможно, поступила из веб -формы или чего -то еще, и не может быть полностью доверяем. < /P>

DirectorySearcher search = new DirectorySearcher(new DirectoryEntry());
search.Filter = "(&(objectClass=user)(employeeid=" + id + "))";
search.PropertiesToLoad.Add("mail");
search.PropertiesToLoad.Add("telephonenumber");
SearchResult sresult = search.FindOne();
< /code>

Как вы можете видеть, было бы не слишком сложно ввести значение < /code>, которое будет делать то, что я на самом деле не намерен делать. OWASP считает это серьезной уязвимостью. Каков лучший современный подход для предотвращения этого? активно поддерживается.string encoded = Microsoft.Security.Application.Encoder.LdapFilterEncode(id);
< /code>

Но кажется, что эта библиотека больше не поддерживается: < /p>


antixss теперь IS End of Life
in .net 4.0 Версия Antixs была включена в Framework, и
может быть включена через конфигурацию. В asp.net v5 белый список на основе
encoder будет единственным энкодером.
Таким образом, автономные версии Antixs должны рассматриваться Люди, использующие
более ранние версии .NET, чтобы включить альтернативную, кодируемое белым списком
, но никаких дополнительных улучшений, вне исправлений безопасности, будет
быть Сделано. Это было всегда готово к производству: < /p>


Отказ от ответственности
Этот проект предназначен как основной выборки при реализации пользовательского LINQ
Поставщики запросов. Он не был тщательно протестирован, и мы не оказываем никакой поддержки. Не используйте его в среде производства
без надлежащего тестирования и проверки поведения технологии
. Пользователи наиболее могут сообщать о проблемах и ошибках через трекер вопросов
на этом сайте. Есть ли что -нибудь в более новых версиях .NET Framework, чтобы смягчить инъекцию LDAP?

Подробнее здесь: https://stackoverflow.com/questions/516 ... rysearcher
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»