1。
我正在管理一个使用Adobe CQ5作为其管理系统的网站。我知道querybuilder.json
文件夹中有一个工具/bin
- 我的问题是,如果外部用户使用此工具,他们会使用哪种API语法来查询" important&# 34;或者"敏感信息"。我需要知道这一点,以便在GET或POST期间阻止对这些语法字符串的访问。感谢任何帮助,谢谢!
所以,我要问的是,如果攻击者能够访问查询构建器链接,他是否能够查询密码或内部登录,如果是,如何?如果是这样,我可以删除查询构建器的哪种语法来激发这一点?
2。 此外,是否有人能够告诉我adobe querybuilder的正确语法,它可以为您提供其列出的目录所在的主机名或Web位置?
因此,例如,如果我返回/apps/geometrixx/user/login
作为输出,我还想获取此文件路径所在的URL在我的服务器上。是否有可用于此操作的语法?
答案 0 :(得分:1)
防止未经授权访问此类工具的最佳方法是在调度程序上deny
* .json,并且只对您的应用程序特定json调用allow
。您可以在Security Checklist。
有关查询构建器的文档可在此处找到:http://docs.adobe.com/docs/en/aem/6-0/develop/search/querybuilder-api.html
答案 1 :(得分:1)
请考虑停用对发布实例的/bin
前缀开头的路径的所有请求。
这是所有servlet的通用存储,对于创作非常有用,但对其他实例则没有那么多。
如果您在应用程序中有任何自定义servlet,请查看Apache Sling documentation并考虑使用基于资源的servlet。
@SlingServlet(
resourceTypes = "sling/servlet/default",
selectors = "hello",
extensions = "html",
methods = "GET")
public class MyServlet extends SlingSafeMethodsServlet {
通过这种方式,您可以使用ACL控制对servlet的访问 - 如果您有权访问该节点(即您可以根据此资源查看/呈现组件),您将可以访问该servlet。