浅谈Web应用的文件包含漏洞与防护

2021-03-07 03:13杨京田嘉豪
网络安全技术与应用 2021年8期
关键词:安全漏洞中间件浏览器

◆杨京 田嘉豪

浅谈Web应用的文件包含漏洞与防护

◆杨京 田嘉豪

(陕西省网络与信息安全测评中心 陕西 710065)

随着网络Web2.0、网络移动社交等一系列新型的互联网信息技术和网络产品的不断出现,基于Web网络环境下的互联网新技术应用越来越广泛,政府在投入发展信息化建设的整个过程中,越来越多的应用都铺设在Web平台上。Web应用迅速发展的同时,不断加深人们对其的依赖,也吸引了互联网黑客的注意。由于Web应用能够让任何登录互联网的人访问,所以这些Web应用程序就成了大量黑客攻击的目标,Web安全威胁态势逐步升级。为了得到Web服务器的控制权限并开展攻击活动,互联网黑客利用各类Web漏洞进行网站篡改、数据窃取,更有甚者为了控制网站或服务器,插入恶意代码,对人民财产和公众利益造成严重侵害。如今,学习、挖掘及防范Web应用安全漏洞已是越来越多的企业、用户关注的重点。

Web安全;文件包含;防护

1 何为文件包含漏洞

Web应用程序在其开发的过程中,技术人员通常都是将一些可重复使用的函数写到某个目录文件中,在需要使用特定的函数时,对此类信息文件进行调用,而不必再次进行编写,这种调用信息文件的整个过程通常被我们所称为“包含”。如果包含的文件是动态的,通过一种动态包含的方式进行引入文件时,由于针对所传入的文件名未通过过滤与校验,导致对其他的文件进行了非授权操作,例如调用了一些已经定义好的类或者是函数,就很容易导致意外的文件泄露甚至恶意的代码注入,而正是因为可以包含其他文件从而有可能会产生文件包含漏洞。

大多数Web语言都可以使用文件包含操作。目前,大部分Web应用由PHP开发,由于PHP语言的文件包含功能强大因此也容易出现文件包含漏洞。

2 文件包含漏洞分类

文件包含,包括本地文件包含和远程文件包含两种形式,下面对这两种形式进行介绍。

第一,本地文件包含漏洞(Local File Include,本地文件包含故名包含的文件在本地服务器),它是PHP中一种较为典型的高危漏洞。本地文件包含就是通过浏览器包含Web服务器上的文件,当浏览器包含文件没有进行严格的过滤时,允许遍历目录的字符注入浏览器并执行,由于技术人员未对用户输入的内容进行有效过滤与检查,导致恶意用户可以控制被包含的文件,一旦成功,Web应用服务器将一些特定文件当成php执行,从而导致恶意用户可获取一定的服务器权限。

第二,远程文件包含漏洞(Remote File Inclusion,远程文件包含故名包含的文件不在本地服务器,而需要远程访问其他服务器)。它其实也属于“代码注入”的一种,其原理就是注入一段用户能控制的脚本或代码,由于浏览器对于用户输入没有进行有效的过滤与检查,导致其在服务端执行恶意文件的代码。该漏洞利用的前提是PHP开启了远程包含功能,且被包含的变量前没有目录的限制。

文件包含漏洞一旦被互联网黑客进行恶意利用,不仅会暴露Web应用的配置文件,也会暴露自身的源代码,为黑客进一步发掘Web应用漏洞提供条件,最终导致黑客控制整个网站甚至服务器。

3 文件包含漏洞防护

因为文件包含漏洞的利用并不困难,往往是黑客常用的攻击手段,下面列出几点常见的防护措施。

3.1 包含目标的参数过滤

使用白名单或者黑名单过滤,不要直接导入用户输入的内容,同时也可以在做好过滤在包含的文件名前后加固定后缀。

3.2 路径限制

使用目录限制的方式,用固定好的路径来规定用户输入的变量内容,将被包含的文件限制在特定的目录内,并设置禁止目录跳转,以达到限制用户可调用的目录范围的目的。比如,开启 open_basedir 函数,将其设置为指定目录,则只有该目录的文件允许被访问,但是开启 open_basedir 会影响性能。

3.3 中间件的安全配置

限制用户访问目录范围:php.ini 中通过限制设置,比如 open_basedir 等等来限制目录用户能够访问特定目录文件的目标以及范围等,另外,apache中间件也有相关配置可进行限制。

3.4 权限管理

设置用户的访问权限:在中间件中我们针对不同的用户,可以限制当前中间件的用户访问权限,例如在Web 服务器中设置独立的用户,限制其仅可以访问特定目录和使用中间件的权限,从而也就能够有效地避免恶意用户越权访问其他目录文件。

本文简要介绍了何为文件包含漏洞、文件包含漏洞分类及防护。面对文件包含漏洞,并不是无计可施,需要多注意维护Web应用的安全,发现异常及时采取措施。没有绝对的安全,只有不断加强安全防护。

[1]平小红,惠鑫,容杰,刘攀.Web及网络数据库系统的安全漏洞与应对技术探究[J].网络安全技术与应用,2020(08):16-17.

[2]梁本来.Web应用安全漏洞与防御机制研究综述[J].电脑知识与技术,2021,17(01):54-55+68.

[3]袁勇,池静.网站建设中网页设计的安全漏洞及解决对策[J].网络安全技术与应用,2006(07):76-77.

猜你喜欢
安全漏洞中间件浏览器
基于模糊测试技术的软件安全漏洞挖掘方法研究
微软发布新Edge浏览器预览版下载换装Chrome内核
反浏览器指纹追踪
智能设备安全漏洞知多少
安全漏洞太大亚马逊、沃尔玛和Target紧急下架这种玩具
RFID中间件技术及其应用研究
基于Android 平台的OSGi 架构中间件的研究与应用
安全漏洞检测技术在计算机软件中的应用
中间件在高速公路领域的应用
一种支持智能环境构建的中间件