1

我知道我所问的“搜索”查询位可能会排除对 AD 的任何粗鲁操作。但是稍微打开了这个问题。例如,如果在一个网站上,我从文本框中获取输入来搜索用户,我会冒险猜测如果我不尝试减少它,我可能会让自己面临某种恶意活动。我需要注意什么?例如,任何对 LDAP 有点了解的人都可以输入一个命令,这可能会导致长时间运行的进程占用重要资源(考虑一个有点怨恨的人使用一个非常疯狂的搜索过滤器来处理大量请求)。尽管我有能力限制到规定的 OU,但稍微限制了范围,我敢肯定这里仍然存在漏洞,可能吗?

4

1 回答 1

2

就像任何接受用户输入的应用程序界面一样,攻击者也有可能提供应用程序未预料到的恶意输入。始终最好执行强白名单验证,以确保用户输入与已知/预期值匹配。在其他情况下,可能需要更强大的防御。

如果您正在接受用户输入,并直接放入 LDAP 查询中,那么您需要防止包含无法预料的 LDAP 元字符。如果攻击者成功地修改了 LDAP 语句,这就是一个称为 LDAP 注入的漏洞。

以下文章很好地解释了什么是 LDAP 注入,以及如何防御它: https://www.owasp.org/index.php/LDAP_injection http://projects.webappsec.org/w/page/ 13246947/LDAP%20注入

请记住,用户输入可以是来自客户端的任何内容,而不仅仅是应用程序 POST/GET 参数。HTTP(或其他协议)标头之类的东西同样容易受到攻击。如果攻击者能够在数据传输到应用程序之前拦截数据,则应将其视为“受污染”,并应采取适当的防御措施以确保其不包含恶意输入。

于 2013-03-11T16:49:39.563 回答