返回介绍

Mechanisms

发布于 2024-10-11 20:34:05 字数 3532 浏览 0 评论 0 收藏 0

Information disclosure occurs when an application fails to properly protect sensitive information, giving users access to information they shouldn’t have available to them. This sensitive information can include technical details that aid an attack, like software version numbers, internal IP addresses, sensitive filenames, and filepaths. It could also include source code that allows attackers to conduct a source code review on the application. Still other times, the application leaks private information of users, like a user’s age, bank account numbers, email addresses, and mailing addresses, to unauthorized third parties.

信息泄露发生在应用程序未能正确保护敏感信息时,使用户可以访问他们不应该拥有的信息。这些敏感信息可能包括技术详细信息,如软件版本号、内部 IP 地址、敏感文件名和文件路径。它还可能包括源代码,使攻击者可以对应用程序进行源代码审查。有时,应用程序还会泄漏用户的私人信息,例如用户的年龄、银行帐户号码、电子邮件地址和邮寄地址,传递给未经授权的第三方。

Most systems aim to hide development information, including software version numbers and configuration files, from the outside world, because it allows attackers to gather information about an application and strategize about how to most effectively attack it. For example, learning the exact software versions an application uses will allow attackers to look for publicly disclosed vulnerabilities that affect the application. Configuration files often contain information such as access tokens and internal IP addresses that attackers can use to further compromise the organization.

大多数系统的目标是隐藏开发信息,包括软件版本号和配置文件,以防止攻击者收集关于应用程序的信息并制定如何最有效地攻击它的策略。例如,了解应用程序使用的确切软件版本将使攻击者寻找影响该应用程序的公开披露的漏洞。配置文件通常包含访问令牌和内部 IP 地址等信息,攻击者可以使用它们来进一步破坏组织。

Typically, applications leak version numbers in HTTP response headers, HTTP response bodies, or other server responses. For example, the X-Powered-By header, which is used by many applications, shows you which framework the application runs:

通常,应用程序会在 HTTP 响应头,HTTP 响应正文或其他服务器响应中泄漏版本号。例如,许多应用程序使用的 X-Powered-By 头会向您显示应用程序运行的框架:

X-Powered-By: PHP/5.2.17

On the other hand, applications leak sensitive configuration files by not applying proper access control to the files, or by accidentally uploading a sensitive file onto a public repository that outside users can access.

另一方面,应用程序通过未对文件应用适当的访问控制或意外地将敏感文件上传到外部用户可以访问的公共存储库中而泄漏敏感配置文件。

Another piece of information that applications should protect is their source code. When the backend code of an application is leaked to the public, the leaked code can help attackers understand the application’s logic, as well as search for logic flaw vulnerabilities, hardcoded credentials, or information about the company’s infrastructure, such as internal IPs. Applications can leak source code by accidentally publishing a private code repository, by sharing code snippets on public GitHub or GitLab repositories, or by uploading it to third-party sites like Pastebin.

应用程序应该保护的另一个信息是它们的源代码。当应用程序的后端代码泄露给公众时,泄露的代码可以帮助攻击者理解应用程序的逻辑,并搜索逻辑漏洞漏洞,硬编码凭据或有关公司基础架构的信息,例如内部 IP。应用程序可能会通过意外发布私有代码存储库,通过在公共 GitHub 或 GitLab 存储库上共享代码片段,或通过将其上传到 Pastebin 等第三方站点来泄漏源代码。

Finally, applications often leak sensitive information by including it in their public code. Developers might accidentally place information such as credentials, internal IP addresses, informative code comments, and users’ private information in public source code such as the HTML and JavaScript files that get served to users.

应用程序经常通过将敏感信息包含在其公共代码中泄漏。开发人员可能会意外地将信息(例如凭据、内部 IP 地址、信息性代码注释和用户的私人信息)放在公共源代码中,例如提供给用户的 HTML 和 JavaScript 文件中。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文