RCE:远程命令/代码执行(remote command/code execute)
在 Web 应用中有时候程序员为了考虑灵活性、简洁性,会在代码调用代码或命令执行函数去处理。比如当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能控制这个字符串,将造成代码执行漏洞。同样调用系统命令处理,将造成命令执行漏洞。一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命令操作的接口
eval()函数中的eval是evaluate的简称,这个函数的作用就是把一段字符串当作PHP语句来执行,一般情况下不建议使用容易被黑客利用。
#在本地写入以下脚本
#对x进行传参,参数被当做php代码执行
#将eval改为system并输出,这里system是将get传递的字符串当做系统命令去执行
#给x传参,查询ip地址
RCE漏洞形成的条件
---条件1:可控变量(无论是注入,还是RCE都有传参数)
---条件2:漏洞函数(用什么函数对于这个参数进行操作,如上题命令执行和代码执行漏洞的区别就是漏洞函数的不同,如果是输出,就是XSS,如果文件提交,就是文件上传,如果输出查询,就是SQL注入)
标签:WEB,函数,命令,漏洞,代码执行,RCE,执行 From: https://www.cnblogs.com/Zx770/p/17575059.html