news 2026/7/11 0:19:11

assert函数eval函数蚁剑的思考

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
assert函数eval函数蚁剑的思考

关于assert函数

官方文档:PHP: assert - Manual

在PHP版本<7.0时

assert会将传入的参数试着作为PHP代码去执行,这个参数可以是一个函数或者是一个表达式(是表达式时和本文讨论内容关系不大,具体请参考官方文档中的演示)也可以是一个字符串。在参数是字符串时则对其中的PHP代码语法要求不严格(字符串中的PHP代码最后一句代码尾端的;可以省略,其余的则不行),但对于多句PHP代码组成的字符串只会执行第一句(如果这个字符串中PHP代码存在语法错误则该字符串中的所有PHP代码均不会被执行)。

在PHP版本>=7.0时
在这时PHP对于assert函数进行了更新(具体是在PHP7的哪个版本这里博主并不清楚Orz,但这个更新导致的后果通常是对于7.0及以上的版本来讨论的),assert在更新后无法将使用字符串作为参数,而传入GET或POST的数据默认的类型就是字符串,这就导致了assert不适宜再用来直接写马。

奇怪的特性

assert无法执行关于echo的代码,起初以为是echo是语言构造器的原因,但是用了同为语言构造器的print,发现却能用,emmmm…

关于eval函数

官方文档:PHP: eval - Manual

eval会将传入的字符串作为PHP代码来进行解析,字符串中可以包含多句PHP代码,且所有的PHP代码均会被执行,但如果存在语法错误则整个字符串中的PHP代码均不会执行。字符串中可以包含PHP标签,但必须和已存在的标签闭合(PHP文件头部和尾部的PHP标签)。此外eval并没有assert的奇怪特性,关于echo的代码能够被正常执行。

关于蚁剑

要明白为什么会此前payload中仅有部分可用就得先明白蚁剑通过payload中的SHELL究竟干了啥,这里用wireshark看下蚁剑发的包(这里蚁剑编码采用了base64,用default会导致有时的连不上马)。

可以看到蚁剑使用了POST方式对cmd传入eval执行一个随机生成的POST变量名的值base64解码,并且获得了相应的响应,便有了蚁剑绿色框显示的连接成功。这里将POST变量名的值转码一下再继续观察。

通过观察这段蚁剑测试连接起主要作用代码,不难发现两个特点:

使用了echo
由多句PHP代码构成
那么结论就明了了,关于payload部分可用的结果可以做出如下解释:

使用GET值作为马的连接密码的payload全部不可连接->蚁剑探测马是否可以用只使用了POST方式进行探测
仅使用assert的payload不可连接->原因有两个,一是因为蚁剑用来探测的语句由多句PHP代码构成,但assert只能执行第一句PHP代码;二是因为探测的语句使用了echo,而assert无法执行关于echo的代码

参考文章:https://www.cnblogs.com/Article-kelp/p/14704975.html

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/5 0:29:09

游戏串流平台完整教程:从零开始搭建高性能远程游戏系统

游戏串流平台完整教程&#xff1a;从零开始搭建高性能远程游戏系统 【免费下载链接】Sunshine Sunshine: Sunshine是一个自托管的游戏流媒体服务器&#xff0c;支持通过Moonlight在各种设备上进行低延迟的游戏串流。 项目地址: https://gitcode.com/GitHub_Trending/su/Sunsh…

作者头像 李华
网站建设 2026/7/1 16:39:27

抖音无水印下载工具:快速获取纯净视频内容的终极解决方案

抖音无水印下载工具&#xff1a;快速获取纯净视频内容的终极解决方案 【免费下载链接】DouYinBot 抖音无水印下载 项目地址: https://gitcode.com/gh_mirrors/do/DouYinBot 在当前短视频内容爆炸式增长的时代&#xff0c;抖音已成为内容创作者和普通用户获取灵感的重要平…

作者头像 李华
网站建设 2026/7/5 12:37:28

小红书数据采集完整指南:5分钟学会Python爬虫实战

小红书数据采集完整指南&#xff1a;5分钟学会Python爬虫实战 【免费下载链接】xhs 基于小红书 Web 端进行的请求封装。https://reajason.github.io/xhs/ 项目地址: https://gitcode.com/gh_mirrors/xh/xhs 想要快速获取小红书平台的公开数据吗&#xff1f;xhs这款基于P…

作者头像 李华
网站建设 2026/7/3 15:07:00

番茄小说下载器:打造个人数字图书馆的终极利器

番茄小说下载器&#xff1a;打造个人数字图书馆的终极利器 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 在数字阅读日益普及的今天&#xff0c;如何将心仪的番茄小说内容永久…

作者头像 李华
网站建设 2026/7/1 16:33:14

魔兽争霸III性能优化完全攻略:10个技巧让经典游戏重获新生

魔兽争霸III性能优化完全攻略&#xff1a;10个技巧让经典游戏重获新生 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸III在现代电脑上…

作者头像 李华