《Web基础渗透与防护》第08章 文件包含攻击与防御.pptxVIP

《Web基础渗透与防护》第08章 文件包含攻击与防御.pptx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第08章文件包含攻击与防御项目描述项目分析项目小结项目训练实训任务

6.1项目描述随着信息化的发展,越来越多的功能或者是业务可以在网上办理,这就需要开发原来越多的网络服务,越来越功能强大的网络服务。开发人员在开发种类繁多的服务过程中,为了代码的可重复使用,会将一些功能相似的代码写在一个文件中,在其他使用该文件中功能时,会将该文件包含进来。这本是代码开发的初衷,减少代码重复性。但却带来了一危险性后果。如果包含一些恶意文件进行攻击,就会造成信息泄露、丢失甚至是系统被攻破的危险。因此我们有必要了解文件包含漏洞的攻击原理、攻击场景,如何防御,这样才能有效的文件包含漏洞的发生。

6.2项目分析在上面的项目描述中,恶意攻击者通过文件包含,可以读取服务器系统文件,甚至是写入恶意可执行文件,已达到在Web服务器中写入木马,从而达到恶意攻击Web服务器的目的。针对上述情况,本项目的任务布置如下表所示。项目目标1、了解文件包含攻击原理;2、能够理解文件包含攻击方式,如信息获取、挂马等;3、能够利用多种手段防御文件包含攻击。项目任务列表任务1:分析文件包含漏洞原理;任务2:利用文件包含漏洞获取服务器控制权限;任务3:中、高安全级别下文件包含漏洞分析;任务4:文件包含漏洞的几种应用;任务5:文件包含漏洞防御;

6.2项目分析项目实施流程文件包含漏洞在具体攻击过程中,分为两类:一类是利用本地包含漏洞读取服务器本地文件;一类是利用远程包含漏洞,将远程服务器中的恶意文件写入到本地服务中。第一类较简单,第二类即远程包含漏洞攻击过程如下图所示:图8-1远程文件包含流程图

6.2项目分析远程文件包含攻击过程描述如下:1、攻击者向本地服务器进行连接,查找是否存在文件包含漏洞。2、本地服务器向攻击者返回信息,攻击者从而进行下一步的判断。3、确认存在远程文件包含漏洞后,在具有管理权限的运程服务上,写入具有恶意程序的文件,例如木马文件。4、通过本地服务的远程文件包含漏洞,将第三步骤中准备好的远程服务器文件包含过来。5、远程服务器通过包含漏洞将恶意文件写入到本地服务器中。6、获取本地服务器的控制权限。

6.2项目分析项目相关知识点1、文件包含服务器通过php等开发语言的特性(函数)去包含任意文件时,由于要包含的文件来源过滤不严,从而可以去包含一个恶意文件,而我们可以构造这个恶意文件来达到其他目的。(1)涉及到的危险函数:include(),require()和include_once(),require_once()include(或require)语句会获取指定文件中存在的所有文本、代码、标记,并复制到使用include语句的文件中。通过include或require语句,可以将PHP文件的内容插入另一个PHP文件(在服务器执行它之前)。include和require语句是相同的,除了错误处理方面:require会生成致命错误(E_COMPILE_ERROR)并停止脚本;include只生成警告(E_WARNING),并且脚本会继续。即Require跟include唯一不同的是,当产生错误时候,include下面继续运行而require停止运行了。因此,如果希望继续执行,并向用户输出结果,即使包含文件已丢失,那么使用include。否则,在框架、CMS或者复杂的PHP应用程序编程中,请

6.2项目分析始终使用require向执行流引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。Include_once:这个函数跟include函数作用几乎相同,只是在导入函数之前先检测下该文件是否被导入。如果已经执行一遍那么就不重复执行了。Require_once:这个函数跟require的区别跟上面所讲的include和include_once是一样的。(2)php.ini配置文件allow_url_fopen=off即不可以包含远程文件。php4存在远程与本地包含,php5仅存在本地包含。(3)文件包含原理使用文件包含功能是因为程序员写程序的时候,不喜欢干同样的事情,也不喜欢把同样的代码(比如一些公用的函数)重复写几次,于是就把需要公用的代码写在一个单独的文件里面,比如share.php,而后在其它文件进行包含调用。在php里就是使用上面列举的那几个函数来达到这个目的的,它的工作流程:想在main.php里包含share.php,将这样写include(share.php)就达到目的,然后就

6.2项目分析可以使用share.php中的函数了,这个

您可能关注的文档

文档评论(0)

扬州牧 + 关注
实名认证
文档贡献者

资料收集自互联网,若有侵权请联系删除,谢谢~

版权声明书
用户编号:8036120077000004

1亿VIP精品文档

相关文档