上QQ阅读APP看书,第一时间看更新
3.1.4 命令执行漏洞
命令执行漏洞是在Web应用、网络设备、业务系统上由于代码过滤不严格导致用户提交的数据被解析执行而造成的漏洞,其形成的原因是在目标应用或设备开发时对执行函数没有过滤,对用户输入的命令安全监测不足。命令执行漏洞可以分为系统命令执行和脚本(PHP、JSP等)代码执行两类,分别通过传入系统命令和脚本代码实现。利用命令执行漏洞可通过浏览器或其他辅助程序提交并执行恶意代码,如GitLab远程命令执行漏洞(见图3-5)。蓝队主要利用命令执行漏洞实现以下目的:
·通过命令执行,非法获取目标的敏感信息,比如用户口令、安全配置等;
·执行任意系统命令,比如添加账户操作、非法获取控制权;
·通过执行恶意代码植入木马,实现水坑攻击,以进一步拓展。
图3-5 影响非常广泛的GitLab远程命令执行漏洞(CVE-2021-22205)
命令执行漏洞多存在于各种Web组件、网络应用之中,如Web容器、Web框架、CMS软件、安全组件、OA系统等。比如:vCenter远程命令执行漏洞(CVE-2021-21972)是vSphere Client(HTML5)在vCenter Server插件中存在的一个远程执行代码漏洞,未经授权的攻击者可以通过开放443端口的服务器向vCenter Server发送精心构造的请求,从而在服务器上写入Webshell,最终造成远程任意代码执行;微软RDP远程代码执行漏洞(CVE-2019-0708)是一个RDP服务远程代码执行漏洞,未经认证的恶意攻击者通过向目标主机RDP服务所在端口发送精心构造的请求,即可在目标主机上执行任意代码。