前言:PHP中有很多危险函数,如phpinfo() ,这次就来详细总结一下PHP中的危险函数,并借助大师傅们的例子来进行代码审计的练习。
一、PHP代码执行函数
eval()函数
定义和用法:
eval() 函数把字符串按照 PHP 代码来计算.
该字符串必须是合法的 PHP 代码,且必须以分号结尾。
这个用法就会产生漏洞,通过一个例子来看一下:
<?php
$var = "var";
if (isset($_GET["arg"]))
{
$arg = $_GET["arg"];
eval("\$var = $arg;");
echo "\$var =".$var;
}
?>
输入:http://127.0.0.1/1.php?arg=phpinfo()就会发现已经执行了eval函数

再输入一串字符串,让eval()函数作为命令执行
http://127.0.0.1/1.php?arg=var_dump(scandir('./'))
#scandir()函数列出./(当前)目录中的文件和目录:

除此之外,还可以结合system()函数来获取当前运行的服务的信息
http://127.0.0.1/1.php?a
本文总结了PHP中的危险函数,包括代码执行函数(如eval(), assert(), preg_replace(), create_function() 和 call_user_func())、命令执行函数(如exec(), shell_exec(), passthru()等)、包含函数和文件操作函数。这些函数在不安全使用时可能导致严重的安全问题,如代码注入和命令执行。通过实例展示了如何利用这些函数进行恶意操作,提醒开发者注意避免在不受控制的输入中使用这些函数。"
115412415,10005630,快速排序变体解决第k小整数问题,"['算法', '数据结构', '排序算法', '分治', '编程竞赛']
最低0.47元/天 解锁文章
202

被折叠的 条评论
为什么被折叠?



