常见危险函数及特殊函数(一)

一、PHP代码执行函数
1.PHP代码执行函数-eval & assert & preg_replace
在这里插入图片描述
函数 eval() 语言结构是 非常危险的, 因为它允许执行任意 PHP 代码。 它这样用是很危险的。如果您仔细的确认过,除了使用此结构以外 别无方法, 请多加注意,不要允许传入任何由用户 提供的、未经完整验证过的数据。
2.在这里插入图片描述
Code
需要被执行的字符串
代码不能包含打开/关闭 PHP tags。比如,‘echo “Hi!”;’ 不能这样传入:’<?php echo "Hi!"; ?>’。但仍然可以用合适的 PHP tag 来离开、重新进入 PHP 模式。比如 ‘echo “In PHP mode!”; ?>In HTML mode!<?php echo “Back in PHP mode!”;’ 。
除此之外,传入的必须是有效的 PHP 代码。所有的语句必须以分号结尾。比如’echo “Hi!”'会导致一个 parse error,而’echo “Hi!”;'则会正常运行。
return 语句会立即中止当前字符串的执行。
代码执行的作用域是调用 eval() 处的作用域。因此,eval() 里任何的变量定义、修改,都会在函数结束后被保留。
3.在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输出结果
在这里插入图片描述
在这里插入图片描述
执行结果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
正常调用
在这里插入图片描述
回调函数
在这里插入图片描述
二、包含函数
在这里插入图片描述
三、命令执行函数
1 exec()
执行一个外部程序
.2 passthru()
执行外部程序并且显示原始输出
3 proc_open()
执行一个命令,并且打开用来输入/输出的文件指针
4 shell_exec()
在这里插入图片描述
在这里插入图片描述
四、文件操作函数
在这里插入图片描述
任意文件读取,写入, 删除往往是上面几个函数受到了控制(当然还有其他函数)
读取:可以读取配置等文件,拿到key
写入:可以写入shell代码相关的内容
删除:可以删除.lock文件而可以重新安装覆盖
在这里插入图片描述
可以读取百度的内容,输入一些
在这里插入图片描述
执行之后的结果
在这里插入图片描述
五、特殊函数
在这里插入图片描述
bool in_array (mixed needle, arrayhaystack [,bool s t r i c t = F A L S E ] ) 在 h a y s t a c k 中 搜 索 n e e d l e , 如 果 没 有 设 置 s t r i c t 则 使 用 宽 松 的 比 较 。 该 函 数 有 一 个 特 性 , 比 较 之 前 会 进 行 自 动 类 型 转 换 i n a r r a y ( strict=FALSE]) 在haystack中搜索needle,如果没有设置strict则使用宽松的比较。 该函数有一个特性,比较之前会进行自动类型转换 in_array( strict=FALSE])haystackneedle,strict使inarray(a,array(1,2,3)}的返回值是真。
在这里插入图片描述
输出提交的内容来判断他是不是字符串
用intval转换
在这里插入图片描述
将变量V设置为1,来判断变量的值是否在数组里,与数组的值是否相等,输出结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值