什么是RCE漏洞?
远程代码执行简称RCE,是一类软件安全缺陷/漏洞。RCE 漏洞将允许恶意行为人通过 LAN、WAN 或 Internet 在远程计算机上执行自己选择的任何代码,属于更广泛的任意代码执行 (ACE) 漏洞类别。
产生RCE漏洞的根本原因在于,服务器像php环境版本对可执行变量函数没有做过滤,导致在没有自定义相对路径的情况下就运行命令去执行,从而导致服务器被入侵。或者在Web应用中开发者为了灵活性,简洁性等会让应用调用代码或者系统命令执行函数去处理,同时没有考虑用户的输入是否可以被控制,造成代码/系统命令执行漏洞。
会造成哪些危害呢?
攻击者可以直接获取服务器权限;来读取敏感数据、文件并写入写入恶意文件getshell
发现RCE漏洞,该怎么修复?
1.通用的修复方案,升级插件/框架/服务最新版。
2.如若必须使用危险函数,那么针对危险函数进行过滤。
如何防范此漏洞?
1.在进入执行命令函数前进行严格的检测和过滤;
2.尽量不要使用命令执行函数,不能完全控制的危险函数最好不使用,如果非要用的话可以加验证防止被其他人利用。
3.对于eval函数,一定要保证用户不能轻易接触eval的参数,如果需要运用到则必须严格判断输入的数据是否含有危险变量;