![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
命令执行
文章平均质量分 62
_rev1ve
这个作者很懒,什么都没留下…
展开
-
[NSSCTF Round#16 Basic]RCE但是没有完全RCE
不过我们可以试试利用数组绕过正则,然后如何让eval函数接收的参数为字符串而不是数组格式。所以思路可以是找到参数shell中的函数可以解析cmd参数的嵌套函数,或者是直接system函数利用最直接的命令绕过(试验后发现走不通),又或者是绕过正则判断而使得eval函数命令执行的时候不报错。,想要利用system直接读取flag会发现正则绕不过去,如果在cmd参数的值包含了嵌套的函数就会仅仅被当成字符串从而无法解析,比如。这里会先把GET传参的参数md5_1和md5_2变成字符串,然后MD5函数处理要强等于;原创 2024-01-14 18:02:52 · 572 阅读 · 0 评论 -
Apache SCXML2 RCE漏洞
(注意用花生壳的https而不是tcp,因为tcp的无法访问web)我们直接在题目处远程RCE读取我们的xml文件,payload如下。注:其他师傅payload为http服务器,我用的是https。利用内网穿透https服务器映射我们虚拟机的8000端口。我们开启临时文件服务器,执行下面命令。反弹shell成功,得到flag。访问8000端口,成功访问。shell.xml源码。除此之外还有很多构造的。原创 2023-11-16 22:36:13 · 1372 阅读 · 0 评论 -
[SCTF 2021]rceme
在 PHP 5.5 及更早版本中,使用函数func_num_args(),func_get_arg(),和 func_get_args()。SplFileObject是标准的文件操作类,用来进行文件读取。文件,然后再利用原生类读取公网ip(也就是映射的服务器)的文件。可以发现无字母数字RCE,同时是也是无参的,然后提示禁用的函数。然后再利用前置知识给出的取反脚本,成功执行phpinfo()我们可以在服务器的根目录上启动服务,写入。然后在kali下的根目录下,开启服务器。然后高光读取,得到flag。原创 2023-11-21 23:37:52 · 599 阅读 · 0 评论 -
利用 LD_PRELOAD 环境变量
LD_PRELOAD是Linux系统的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库。这个功能主要就是用来有选择性的载入不同动态链接库中的相同函数。通过这个环境变量,我们可以在主程序和其动态链接库的中间加载别的动态链接库,甚至覆盖正常的函数库。一方面,我们可以以此功能来使用自己的或是更好的函数(无需别人的源码),而另一方面,我们也可以以向别人的程序注入程序,从而达到特定的目的。什么是链接。原创 2023-11-26 18:59:58 · 1232 阅读 · 0 评论 -
Bypass open_basedir的方法
指定在每个 PHP 脚本执行完毕后自动追加的文件,用php伪协议去读取我们编码过的马,其中木马添加00是为了满足解码字节倍数,然后就是文件头绕过。payload构造的注意点就是:要读的文件需要往前跨多少路径,就得创建多少层的子目录,然后输入多少个…题目是给了我们get_the_flag()函数的,对文件上传进行检测。,检测文件头,然后回显上传路径;symlink() 函数创建一个从指定名称连接的现存目标文件开始的符号连接。发现可以异或绕过,但是考虑限制长度,我们构造如下。本地测试一下,这里我设置的路径。原创 2023-11-27 12:16:04 · 1246 阅读 · 0 评论 -
[湖湘杯 2021 final]MultistaeAgency
路由的执行bash命令,参数为cmd,不过cmd的值是由参数m拼接后的,所以我们可以自己创建cmd值从环境变量中获取,这样执行的就是我们的恶意命令。代码审计完后整理下,web的main.go的getToken函数环境变量可控的,那么我们可以LD_PRELOAD绕过,RCE的关键地方就是。那么我们可以绕过对m的waf,然后反弹shell到的靶机上用curl命令去弹。我们正常的命令执行是通过参数m来控制,并且监听的是9091端口。上传文件,然后F12在网络处发现token值,得到的方法是。原创 2023-12-11 10:28:12 · 839 阅读 · 0 评论 -
[NCTF 2022]calc
不过本地试了下不行,但是这种遍历赋值的方式对于字典的处理上不太一样,可以直接覆盖指定key的值,所以在对于我们的目标,覆盖os.environ是完全可行的。最后就是如何绕过os的检测,考点是python在处理utf-8中的非ascii字符的时候,会被转化成统一的标准格式。前两个条件肯定是满足的,后三个条件是用户可控的,所以这个if语句是肯定可以进入的。由于环境变量中是以字典的形式存在的,我们需要用到for来进行变量覆盖。我们抓包,然后将payload编码一下即可,成功反弹shell。只需要满足下面情况,原创 2023-12-27 13:14:50 · 484 阅读 · 0 评论 -
[SWPUCTF 2021 新生赛]babyrce
[SWPUCTF 2021 新生赛]babyrce原创 2023-03-06 00:02:45 · 232 阅读 · 0 评论 -
[SWPUCTF 2021 新生赛]easyrce
[SWPUCTF 2021 新生赛]easyrce原创 2023-03-05 11:43:19 · 126 阅读 · 0 评论 -
[SWPUCTF 2021 新生赛]caidao
[SWPUCTF 2021 新生赛]caidao原创 2023-03-05 00:54:29 · 1093 阅读 · 0 评论