SCW图标
英雄背景无分隔线
博客

コーダーがセキュリティを征服する:共有と学習シリーズ-リモートファイルインクルージョン

ヤープ・キャラン・シン
发表于 2019 年 7 月 18 日
最后更新于 2026年3月10日

阅读本系列博客的朋友可能会注意到远程文件包含漏洞与之前讨论的本地文件包含和路径遍历漏洞之间有很多相似之处。它们的根本原因是相似的,推荐的修复方法也是如此。

在许多方面,远程文件包含漏洞比其本地文件对应的漏洞要危险得多,也更容易被利用。因此,应该尽快发现并补救它。或者更好的是,网络应用的设计应该首先防止它的发生。

在这一集里,我们将学习。

  • 黑客如何利用远程文件包含漏洞
  • 为什么允许远程文件包含是危险的
  • 可以解决这个问题的技术。

攻击者是如何利用远程文件包含的?

远程文件包含漏洞利用了大多数编程框架中存在的 "动态文件包含 "命令或机制。这种能力的目的是允许开发人员使用位于二级服务器上的文件来执行应用服务器上的活动。显然,如果落入坏人之手,这可能是危险的。

攻击者如何利用这种能力是通过找到任何允许不受控制的用户输入的网站或应用程序,这可能来自HTTP头或交互式表格中的输入区等东西。他们将此作为一个启动点来生成文件包含命令。

例如,如果一个网站使用GET功能加载页面,如page = request.getParameter("page'); include page; 那么攻击者可以使用page命令发送一个查询,但要有一个他们控制的网站的URL和他们想执行的文件的路径。然后查询被传递给服务器,远程文件在主机上被执行。这个活动是允许的,因为它现在是受信任的应用程序的一部分。

为什么远程文件包含漏洞是危险的?

远程文件包含所带来的危险程度极高。与本地文件包含漏洞不同的是,攻击者运行的文件必须存在于主机上,而且攻击者还要通过试验和错误来发现,而远程文件包含则没有这样的限制。显然,攻击者知道他们想要利用的文件的位置,因为这些文件可能存在于他们自己的机器上,或者他们控制的网站上。这些文件也可以由他们自己选择,不需要在利用前存在于目标机器上。该文件甚至可能包括专门为利用远程主机而编写的脚本。

简而言之,一旦攻击者能够找到并利用远程文件包含漏洞,就没有什么能阻止他们获得对一个应用程序甚至整个网站的完全控制。当然,存储在那里的任何数据都不会对他们的入侵感到安全。

移除远程文件包含漏洞

永远不要让用户输入直接传递给文件包含命令执行。相反,使用命令的间接参考图,只从那里执行命令。间接参考图将不受信任的用户输入映射到服务器上一组硬编码的可信值。要确保将用户可以输入数据的任何区域列入白名单,不要忘记将HTTP头、表单参数甚至cookies都列入该名单。这样做将关闭任何想要创建文件包含命令的攻击者可以使用的窗口。

作为奖励,对用户生成的内容进行适当的消毒和验证,并采用参考地图来执行命令,不仅可以压制远程文件包含漏洞,还可以压制其他一些漏洞,包括这个漏洞的危险表弟,本地文件包含和路径遍历漏洞。

关于远程文件包含的更多信息

要进一步阅读,你可以看一下OWASP的远程文件包含漏洞参考指南。你也可以用Secure Code Warrior 平台的免费演示来测试你新发现的防御知识,该平台培训网络安全团队成为终极网络战士。要了解更多关于击败这个漏洞以及其他威胁的流氓画廊,请访问Secure Code Warrior 博客。

显示资源
显示资源

多くの点で、リモートファイルインクルージョンの脆弱性は、ローカルファイルインクルード脆弱性よりもはるかに危険であり、悪用も簡単です。そのため、できるだけ早く発見して修正する必要があります。

您还有兴趣吗?

Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。

了解更多

Secure Code Warrior致力于在整个软件开发生命周期中保护代码,并协助构建将网络安全置于首位的文化。无论您是应用程序安全经理、开发人员、首席信息安全官还是安全相关人员,我们都能帮助您降低与不安全代码相关的风险。

预约演示
分享:
领英品牌社交x 标志
著者
ヤープ・キャラン・シン
2019年7月18日发布

Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。

分享:
领英品牌社交x 标志

阅读本系列博客的朋友可能会注意到远程文件包含漏洞与之前讨论的本地文件包含和路径遍历漏洞之间有很多相似之处。它们的根本原因是相似的,推荐的修复方法也是如此。

在许多方面,远程文件包含漏洞比其本地文件对应的漏洞要危险得多,也更容易被利用。因此,应该尽快发现并补救它。或者更好的是,网络应用的设计应该首先防止它的发生。

在这一集里,我们将学习。

  • 黑客如何利用远程文件包含漏洞
  • 为什么允许远程文件包含是危险的
  • 可以解决这个问题的技术。

攻击者是如何利用远程文件包含的?

远程文件包含漏洞利用了大多数编程框架中存在的 "动态文件包含 "命令或机制。这种能力的目的是允许开发人员使用位于二级服务器上的文件来执行应用服务器上的活动。显然,如果落入坏人之手,这可能是危险的。

攻击者如何利用这种能力是通过找到任何允许不受控制的用户输入的网站或应用程序,这可能来自HTTP头或交互式表格中的输入区等东西。他们将此作为一个启动点来生成文件包含命令。

例如,如果一个网站使用GET功能加载页面,如page = request.getParameter("page'); include page; 那么攻击者可以使用page命令发送一个查询,但要有一个他们控制的网站的URL和他们想执行的文件的路径。然后查询被传递给服务器,远程文件在主机上被执行。这个活动是允许的,因为它现在是受信任的应用程序的一部分。

为什么远程文件包含漏洞是危险的?

远程文件包含所带来的危险程度极高。与本地文件包含漏洞不同的是,攻击者运行的文件必须存在于主机上,而且攻击者还要通过试验和错误来发现,而远程文件包含则没有这样的限制。显然,攻击者知道他们想要利用的文件的位置,因为这些文件可能存在于他们自己的机器上,或者他们控制的网站上。这些文件也可以由他们自己选择,不需要在利用前存在于目标机器上。该文件甚至可能包括专门为利用远程主机而编写的脚本。

简而言之,一旦攻击者能够找到并利用远程文件包含漏洞,就没有什么能阻止他们获得对一个应用程序甚至整个网站的完全控制。当然,存储在那里的任何数据都不会对他们的入侵感到安全。

移除远程文件包含漏洞

永远不要让用户输入直接传递给文件包含命令执行。相反,使用命令的间接参考图,只从那里执行命令。间接参考图将不受信任的用户输入映射到服务器上一组硬编码的可信值。要确保将用户可以输入数据的任何区域列入白名单,不要忘记将HTTP头、表单参数甚至cookies都列入该名单。这样做将关闭任何想要创建文件包含命令的攻击者可以使用的窗口。

作为奖励,对用户生成的内容进行适当的消毒和验证,并采用参考地图来执行命令,不仅可以压制远程文件包含漏洞,还可以压制其他一些漏洞,包括这个漏洞的危险表弟,本地文件包含和路径遍历漏洞。

关于远程文件包含的更多信息

要进一步阅读,你可以看一下OWASP的远程文件包含漏洞参考指南。你也可以用Secure Code Warrior 平台的免费演示来测试你新发现的防御知识,该平台培训网络安全团队成为终极网络战士。要了解更多关于击败这个漏洞以及其他威胁的流氓画廊,请访问Secure Code Warrior 博客。

显示资源
显示资源

要下载报告,请填写以下表格。

恳请允许我们向您发送有关本公司产品及/或相关安全编码主题的信息。我们始终以高度谨慎的态度处理您的个人信息,绝不会出于营销目的将其出售给其他公司。

送信
scw 成功图标
SCW 错误图标
要提交表单,请启用“Analytics”Cookie。设置完成后,您可以再次将其禁用。

阅读本系列博客的朋友可能会注意到远程文件包含漏洞与之前讨论的本地文件包含和路径遍历漏洞之间有很多相似之处。它们的根本原因是相似的,推荐的修复方法也是如此。

在许多方面,远程文件包含漏洞比其本地文件对应的漏洞要危险得多,也更容易被利用。因此,应该尽快发现并补救它。或者更好的是,网络应用的设计应该首先防止它的发生。

在这一集里,我们将学习。

  • 黑客如何利用远程文件包含漏洞
  • 为什么允许远程文件包含是危险的
  • 可以解决这个问题的技术。

攻击者是如何利用远程文件包含的?

远程文件包含漏洞利用了大多数编程框架中存在的 "动态文件包含 "命令或机制。这种能力的目的是允许开发人员使用位于二级服务器上的文件来执行应用服务器上的活动。显然,如果落入坏人之手,这可能是危险的。

攻击者如何利用这种能力是通过找到任何允许不受控制的用户输入的网站或应用程序,这可能来自HTTP头或交互式表格中的输入区等东西。他们将此作为一个启动点来生成文件包含命令。

例如,如果一个网站使用GET功能加载页面,如page = request.getParameter("page'); include page; 那么攻击者可以使用page命令发送一个查询,但要有一个他们控制的网站的URL和他们想执行的文件的路径。然后查询被传递给服务器,远程文件在主机上被执行。这个活动是允许的,因为它现在是受信任的应用程序的一部分。

为什么远程文件包含漏洞是危险的?

远程文件包含所带来的危险程度极高。与本地文件包含漏洞不同的是,攻击者运行的文件必须存在于主机上,而且攻击者还要通过试验和错误来发现,而远程文件包含则没有这样的限制。显然,攻击者知道他们想要利用的文件的位置,因为这些文件可能存在于他们自己的机器上,或者他们控制的网站上。这些文件也可以由他们自己选择,不需要在利用前存在于目标机器上。该文件甚至可能包括专门为利用远程主机而编写的脚本。

简而言之,一旦攻击者能够找到并利用远程文件包含漏洞,就没有什么能阻止他们获得对一个应用程序甚至整个网站的完全控制。当然,存储在那里的任何数据都不会对他们的入侵感到安全。

移除远程文件包含漏洞

永远不要让用户输入直接传递给文件包含命令执行。相反,使用命令的间接参考图,只从那里执行命令。间接参考图将不受信任的用户输入映射到服务器上一组硬编码的可信值。要确保将用户可以输入数据的任何区域列入白名单,不要忘记将HTTP头、表单参数甚至cookies都列入该名单。这样做将关闭任何想要创建文件包含命令的攻击者可以使用的窗口。

作为奖励,对用户生成的内容进行适当的消毒和验证,并采用参考地图来执行命令,不仅可以压制远程文件包含漏洞,还可以压制其他一些漏洞,包括这个漏洞的危险表弟,本地文件包含和路径遍历漏洞。

关于远程文件包含的更多信息

要进一步阅读,你可以看一下OWASP的远程文件包含漏洞参考指南。你也可以用Secure Code Warrior 平台的免费演示来测试你新发现的防御知识,该平台培训网络安全团队成为终极网络战士。要了解更多关于击败这个漏洞以及其他威胁的流氓画廊,请访问Secure Code Warrior 博客。

观看在线研讨会
开始吧
了解更多

请点击以下链接下载此资源的PDF文件。

Secure Code Warrior致力于在整个软件开发生命周期中保护代码,并协助构建将网络安全置于首位的文化。无论您是应用程序安全经理、开发人员、首席信息安全官还是安全相关人员,我们都能帮助您降低与不安全代码相关的风险。

显示报告预约演示
下载PDF文件
显示资源
分享:
领英品牌社交x 标志
您还有兴趣吗?

分享:
领英品牌社交x 标志
著者
ヤープ・キャラン・シン
2019年7月18日发布

Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。

分享:
领英品牌社交x 标志

阅读本系列博客的朋友可能会注意到远程文件包含漏洞与之前讨论的本地文件包含和路径遍历漏洞之间有很多相似之处。它们的根本原因是相似的,推荐的修复方法也是如此。

在许多方面,远程文件包含漏洞比其本地文件对应的漏洞要危险得多,也更容易被利用。因此,应该尽快发现并补救它。或者更好的是,网络应用的设计应该首先防止它的发生。

在这一集里,我们将学习。

  • 黑客如何利用远程文件包含漏洞
  • 为什么允许远程文件包含是危险的
  • 可以解决这个问题的技术。

攻击者是如何利用远程文件包含的?

远程文件包含漏洞利用了大多数编程框架中存在的 "动态文件包含 "命令或机制。这种能力的目的是允许开发人员使用位于二级服务器上的文件来执行应用服务器上的活动。显然,如果落入坏人之手,这可能是危险的。

攻击者如何利用这种能力是通过找到任何允许不受控制的用户输入的网站或应用程序,这可能来自HTTP头或交互式表格中的输入区等东西。他们将此作为一个启动点来生成文件包含命令。

例如,如果一个网站使用GET功能加载页面,如page = request.getParameter("page'); include page; 那么攻击者可以使用page命令发送一个查询,但要有一个他们控制的网站的URL和他们想执行的文件的路径。然后查询被传递给服务器,远程文件在主机上被执行。这个活动是允许的,因为它现在是受信任的应用程序的一部分。

为什么远程文件包含漏洞是危险的?

远程文件包含所带来的危险程度极高。与本地文件包含漏洞不同的是,攻击者运行的文件必须存在于主机上,而且攻击者还要通过试验和错误来发现,而远程文件包含则没有这样的限制。显然,攻击者知道他们想要利用的文件的位置,因为这些文件可能存在于他们自己的机器上,或者他们控制的网站上。这些文件也可以由他们自己选择,不需要在利用前存在于目标机器上。该文件甚至可能包括专门为利用远程主机而编写的脚本。

简而言之,一旦攻击者能够找到并利用远程文件包含漏洞,就没有什么能阻止他们获得对一个应用程序甚至整个网站的完全控制。当然,存储在那里的任何数据都不会对他们的入侵感到安全。

移除远程文件包含漏洞

永远不要让用户输入直接传递给文件包含命令执行。相反,使用命令的间接参考图,只从那里执行命令。间接参考图将不受信任的用户输入映射到服务器上一组硬编码的可信值。要确保将用户可以输入数据的任何区域列入白名单,不要忘记将HTTP头、表单参数甚至cookies都列入该名单。这样做将关闭任何想要创建文件包含命令的攻击者可以使用的窗口。

作为奖励,对用户生成的内容进行适当的消毒和验证,并采用参考地图来执行命令,不仅可以压制远程文件包含漏洞,还可以压制其他一些漏洞,包括这个漏洞的危险表弟,本地文件包含和路径遍历漏洞。

关于远程文件包含的更多信息

要进一步阅读,你可以看一下OWASP的远程文件包含漏洞参考指南。你也可以用Secure Code Warrior 平台的免费演示来测试你新发现的防御知识,该平台培训网络安全团队成为终极网络战士。要了解更多关于击败这个漏洞以及其他威胁的流氓画廊,请访问Secure Code Warrior 博客。

目录

下载PDF文件
显示资源
您还有兴趣吗?

Jaap Karan Singhは、セキュア・コーディング・エバンジェリストであり、チーフ・シンであり、セキュア・コード・ウォリアーの共同創設者です。

了解更多

Secure Code Warrior致力于在整个软件开发生命周期中保护代码,并协助构建将网络安全置于首位的文化。无论您是应用程序安全经理、开发人员、首席信息安全官还是安全相关人员,我们都能帮助您降低与不安全代码相关的风险。

预约演示[下载]
分享:
领英品牌社交x 标志
资源中心

开始所需的资源

其他投稿
资源中心

开始所需的资源

其他投稿