基本信息
文件名称:Web基础渗透与防护(第2版)课件 项目三命令注入攻击与防御.pptx
文件大小:2.32 MB
总页数:65 页
更新时间:2025-06-24
总字数:约1.49万字
文档摘要

项目三命令注入攻击与防御项目描述 项目分析 项目相关知识项目训练项目小结 实训任务

项目描述SVU?公司新开发了通过?Web?查询?IP?地址功能,渗透测试工程师小?D?负责测试该功能的安全,并提出针对性的加固方案。因此,小?D?需要了解命令注入漏洞的基础知?识。本项目的具体要求如下:(1)测试可用命令连接符;(2)测试可执行命令;(3)测试是否可以控制服务器;(4)针对测试结果,给出加固方?案。

项目分析命令注入攻击为恶意攻击者往Web页面里插入恶意命令,使得恶意命令在服务器中被执行,从而达到恶意攻击Web服务器的目的。针对上述情况,本项目的任务布置如下:项目目标(1)了解命令注入攻击原理;(2)能够理解常命令注入的攻击方式,如信息获取、密码破解等;(3)能够利用多种手段防御命令注入攻击;

项目分析命令注入漏洞与文件上传漏洞攻击过程基本相似,攻击过程如下图所示:项目任务列表任务1:利用简单命令注入漏洞理解攻击原理;任务2:利用命令注入获取信息; 任务3:掌握中、高安全级别下命令注入攻击方法;任务4:掌握防御命令注入攻击

项目分析命令注入攻击过程描述如下:(1)用户或者是攻击者分析测试是否存在命令注入漏洞;(2)通过服务器返回信息,确定是否存在命令注入;(3)向服务器注入恶意命令;(4)通过恶意命令获取服务器信息。(5)用户在获取服务器控制权后,可以利用服务器做跳板,继续攻击或者是破坏服务器所在局域网。

项目相关知识点命令注入简介计算机说到底还是为人服务的,并由人来操纵。计算机的操纵方式涉及数据,以及操作这些数据的指令。数据和指令都是事先准备好的,各司其职,人们通过指令对输入的数据进行处理,获得期望的结果后通过特定的渠道输?出。随着?IT?技术的飞速发展,计算机的形态逐渐多样化(大型服务器、PC、智能终端等),不同的人在计算机系统中所扮演的角色各异(开发者、维护者、高级用户、普通用户、管理者等)。在这些场景中,数据甚至指令通常都无法事先确定,需要在运行的过程中动态输入。如果这两者混杂在一块,没有经过良好的组织,就会被黑客加以利用,成为一种典型的攻击方式——命令注入。命令注入概述

项目相关知识点命令注入简介命令注入攻击的一种典型应用场景是用户通过浏览器提交执行命令,由于服务器没有针对执行命令进行有效过滤,导致在没有指定绝对路径的情况下执行命令,可能会允许攻击者通过改变$PATH?或程序执行环境的其他方面来执行一个恶意构造的代码。这个漏洞存在的原因在于开发人员编写源代码时没有针对代码中可执行的特殊函数入口进行过滤,导致客户端可以提交恶意构造语句,并交由服务器执行。命令注入攻击中WEB服务器没有过滤类似system(),eval(),exec()等函数是该漏洞攻击成功的最主要原因。命令注入攻击的常见模式是,在仅需要用户输入命令执行所需数据的文本框中,恶意用户利用多条命令通过相应连接符连接可全部执行的规则,在输入所需数据的同时利用连接符连接恶意命令。如果装载数据的系统并未设计良好的数据过滤安全方案,将会导致恶意命令被一并执行,最终导致信息泄露或正常数据被破?坏。

项目相关知识点防御思路对于此类攻击的防御思路是,首先,假定所有的输入都是可疑的,并且尝试对所有提交的输入可能执行命令的构造语句进行严格的检查,或者控制外部输入,系统命令执行函数的参数不允许在外部传递;其次,不仅要验证数据的类型,还要验证其格式、长度、范围和内容;不仅要在客户端进行数据的验证与过滤,还要在服务器完成关键的指令过滤;再次,对输出的数据进行检查,数据库里的值有可能在一个大型网站的多处都有输出,即使在输入过程中进行编码处理,各处的输出数据也要进行安全检查;最后,在发布应用程序之前测试所有已知的威?胁。命令注入概述

项目相关知识点DOS命令连接符:Usage:第一条命令第二条命令[第三条命令...]?,用这种方法可以同时执行多条命令,而不管命令是否执行成功。?(;)Usage:第一条命令(;)第二条命令[(;)第三条命令...]?,用这种方法可以同时执行多条命令,当碰到执行出错的命令后将不执行后面的命令,如果一直没有出错则一直执行完所有命令。示例如下:?findokc:\test.txt(;)echo成功如果找到了ok字样,就显示成功,找不到就不显示。

项目相关知识点DOS命令连接符:||Usage:第一条命令||第二条命令[||第三条命令...],用这种方法可以同时执行多条命令,当碰到执行正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令。示例如下: