推广 热搜: 百度  搜索引擎  企业  可以  选择  使用  上海  技术  设备  page 

buildctf的wp(1)

   日期:2024-12-24     作者:90iao    caijiyuan  
核心提示:一.题目:what is this? 二.题目:别真给我开盒了哥 三.题目:ez_waf 四.题目:Guesscion 五.题

一.题目:what is this

二.题目:别真给我开盒了哥

三.题目:ez_waf

四.题目:Guesscion

五.题目:四妹?还是萍萍

六.题目:cookie_Factory

七.题目:Black&White

八.题目:EZ_ZIP

九.题目:HEX的秘密

十.题目:老色批

十一.题目:web_tflock

十二.题目:web_eazyI0gin

十三.题目:刮刮乐

十四.题目:白白的真好看

十五.题目:我写的网站被rce了

十六.题目:ez!http

  1. 题目:别真给我开盒了哥
  2. 解题人:mite
  3. 解题思路:看到这个想的是周围有没有可以参考的路线
  4. 关键步骤和技巧:一看有个s3901,高德查看附近的铁路,快到北京那个地方,旁边有个铁路 就叫津兴铁路和津保铁路,试了一下是津保铁路

三.

  1. 题目:ez_waf
  2. 解题人:mite
  3. 解题思路:看到这个上传文件,因为小学期实训的时候我们组的作业时上传一句话木马文件,但是上传之后老是有危险,一直不知道咋办,后来查了下Waf文件检测只能检测到前5000个字符,后面的不管

     4.关键步骤和技巧:所以前面输大于5000个字符,然后再输一句话木马,上传php文件之后用蚁剑连接,找到flag

四.

  1. 题目:Guesscion
  2. 解题人:mite

3.解题思路:创建实例后,直接打开网站发现没有反应,那么我们通过burp抓,得到回显,通过分析回显知道要正面为60次才能获得flag

用kali nc连接

4.关键步骤和技巧:之后答对60次找到flag,可能要答很几个100次

五.

1.题目:四妹?还是萍萍

2.解题人:mite

3.解题思路:先拼二维码然后可能要扫码获取关键的东西,但是刚开始进去之后关注完不知道干嘛,,通过之前的做法,向公众号输入password,得到一串字符,在观察所给的另一张图片,发现有隐写压缩包,通过binwalk拆不出来,后面用winhex分析知道少了数据,用脚本提取zip.

4.关键步骤和技巧:用ppt文本拼一下二维码

关注后发送password得到密码St7wg.

使用winhex打开搜索全局标记位发现压缩包头的位置,但是50 4b缺少,我们先将16进制数据提取出来

0000是zip结尾

构造脚本将zip数据提取出来

 

掐头去尾(删除头部和尾部多余的数据,或者偏移量精确到想要提取的位置。

头部添加50 4b

保存后使用公众号得到的密码进行解压

在线base64转图片,然后crc爆破宽高修复图片得到flag

在线base64转图片

BuildCTF{PNG_@nd_H31Sh3nHu@}

六.

1.题目:cookie_Factory

2.解题人:127

3.解题思路

创建实例后显示出如下的图片

每次点击饼干points都会改变,饼干位置也会改变,在这里看不出来该怎么得到flag,对附件中的js文件分析知道如下内容

这段代码搭建了一个基于Node.js的Web应用服务器,结合了Express框架处理常规的HTTP请求以及Socket.io库实现实时的双向通信功能。它主要围绕着与客户端的交互展开,包括处理不同类型的事件、维护每个客户端连接的特定状态信息,并根据客户端的操作和数据进行相应的响应及状态更新。

创建express应用实例和基于该实例的http服务器,并指定服务器监听的端口为3000。

设置当前目录为静态资源目录,以便能直接提供如 index.html 等静态文件给客户端,同时定义了针对根路径的GET路由,当客户端访问根路径时返回index.html文件。

客户端连接处理:当有客户端通过WebSocket连接到服务器时(触发socket.io的connection事件:为该客户端在sessions和errors对象中分别初始化一个以其socket.id为键的值为0的记录,用于后续存储与该客户端相关的会话状态和错误相关信息。

注册了多个针对该客户端不同事件的监听器,包括disconnect(客户端断开连接时记录日志)、chatmessage(简单转发接收到的消息回客户端)、receivedError(根据客户端错误信息更新会话状态并反馈给客户端)以及click(根据客户端发送的数据进行一系列复杂的状态判断、计算和反馈)。

事件处理逻辑:chat message事件:当客户端发送chatmessage事件,服务器直接将接收到的消息原封不动地发回给该客户端。

receivedError事件:客户端发送此事件后,服务器会将该客户端在errors对象中的值赋给sessions对象中对应的键值,然后将更新后的sessions值以recievedScore事件的形式发回给客户端。

click事件:客户端发送click事件并携带数据后,首先解析数据为JSON对象。然后进行一系列条件判断和计算:如果该客户端在sessions对象中的值大于1e20,则向客户端发送包含FLAG值的recievedScore事件并返回。

所以确定要得到flag就要让sessions对象中的值大于要求的值,那么我们写一个脚本让其已知点击,最后获取flag即可

脚本为

 

通过node.exe运行脚本最后得到flag

七.

1.题目:Black&White

2.解题人:127

3.解题步骤

解压后发现一堆黑白图片,构造脚本拼图成二维码

 

得到二维码扫码得到

3I8XEDHUCJTARQFOEDX7D+08AC80T8N08Y6948DF2C43C9B6Z2

base45解码得到flag

BuildCTF{Tich1?pAnDa?_HahA_U_w1n}

4.关键步骤和技巧:首先要能想到这些图片可能需要拼凑,可能要拼凑成什么东西,拼成二维码后通过扫描二维码得到的字符,看起来像base字符,通过解码就得到了最后的flag

八.

1.题目:EZ_ZIP

2.解题人:127

3.解题思路

基本的misc图片题二话不说先查看他的内容,放到010editor文件中得到以下内容

由此可知图片中隐写了一个zip文件,通过更改文件后缀,得到一个压缩包,我们点开以后是layer_499zip文件,继续解压发现文件后续为498,497,这里我们猜他要循环解压,写出脚本循环解压

Again解压

 

最后得到最后的压缩包

双击后得到flag.txt,那么flag肯定藏在这里面,点击后发现有密码,由于没有任何提示,我就直接爆破,发现爆破不出来,把最后的txt文件放到010editor应用中查看

这里我们先了解一下伪加密

50 4B 01 02:目录中文件文件头标记(0x02014b50)

3F 00:压缩使用的 pkware 版本

14 00:解压文件所需 pkware 版本

00 00:全局方式位标记(有无加密,这个更改这里进行伪加密,改为09 00打开就会提示有密码了

08 00:压缩方式

5A 7E:最后修改文件时间

F7 46:最后修改文件日期

16 B5 80 14:CRC-32校验(1480B516

19 00 00 00:压缩后尺寸(25

17 00 00 00:未压缩尺寸(23

07 00:文件名长度

24 00:扩展字段长度

00 00:文件注释长度

00 00:磁盘开始号

00 00:内部文件属性

20 00 00 00:外部文件属性

00 00 00 00:局部头部偏移量

通过这些,从zip文件上看进行了伪加密,我们更改伪加密为偶数,再次点开就可以直接拿到flag

4.关键步骤和技巧:首先要知道图片的各种隐藏方式,分析图片,得到压缩包后,对压缩包也要分析,也要了解伪加密是怎么进行的。

hex_str = "c2f5e9ece4c3d4c6fbb3c5fafadfc1b5e3a1a1dfe2e9eee1f2f9f9f9fd"

 

BuildCTF{3Ezz_A5c!!_binaryyy}

5.解题关键和技巧:这个题给的还明确,直接写代码运行

十.

  1. 题目名称:老色批
  2. 解题人:Unicorn
  3. 解题思路

:题目提供的压缩包中只有一张图片result.png,很显然flag应该隐写在图片中,结合题目名为老色批,想到一种隐写方式lsb,最低有效位(LSB)隐写:这是一种比较简单且常用的隐写方法。在图像的像素表示中,每个像素的颜色值通常由若干位二进制数来表示。

buildctf的wp(1)

4.关键步骤和技巧

打开Stegsolve.jar,在file>open打开result.png

打开Analyse>Data Extract进行数据分析

分析数据找到可能存在的信息,QnVpbGRDVEZ7MV9hbV9uMHRf TFNCISEhfQ==,观察可能为base64编码,进行转化之后得到结果BuildCTF{1_am_n0t_LSB!!!}

十一.

1.题目: web_tflock

2.解题人:  xiaoxuan

3.解题思路: 利用搜索引擎爬虫协议协议robots.txt,查看不让访问的文件。robots.txt的内容:User-agent: 爬虫的名称Disallow: 不允许爬虫访问的地址Allow: 允许爬虫访问的地址。对特殊文件访问。

4.关键步骤和技巧: 从/robots.txt中可发现admin用户的密码字典路径为/passwordList/password.txt 找到密码本,爆破admin用户的密码即可

最后爆破出admin的密码为:ti1oLz@OhU,使用用户名 admin 密码 ti1oLz@OhU 登录后获得一个字符串,就是flag直接交就可以了

十二.

1.题目: web_eazyl0gin

2.解题人:  xiaoxuan

3.解题思路: 题目提示查看routes/users.js源码文件,查看是否有用户登录的条件。

4.关键步骤和技巧: 查看routes/users.js源码,发现账号密码。密码进行md5加密

用户名:buıldctf 密码md5解密 012346

十三.

  1. 题目名称:刮刮乐
  2. 解题人:Unicorn
  3. 解题思路:进入站点,按照题目名称,先开始刮,寻找线索,刮差不多的时候提示传参cmd,那么应该为构造payload进行代码执行,不过中间也试过用工具简单漏洞扫描,没有找到有效突破口
  4. 关键步骤和技巧

在URL中构造payload

http://27.25.151.80:44314/?cmd=cat /f*|tee test.txt

结果显示不是自己人

如此,用burp进行拦截,修改数据包,将Referer参数修改为baidu.com

然后访问test.txt,查看是否成功,直接显示BuildCTF{61ce815d-5c55-4c2b-bd29-9c7426c14048}

十四.

  1. 题目名称:白白的真好看
  2. 解题人:mite
  3. 解题思路

0000.txt文件:用0宽解码

得到Flag2:_wh1t3_y0u_s33

White.docx给文本补充颜色

得到Flag1:BuildCTF{tH3_wh1t3

看到二维码,想的是拼错了,拼了好几次都不能扫,用qr reserch扫也没反应,在我查资料的时候发现是汉信码,于是直接找工具

得到:http://weixin.qq.com/r/ekReRh7Eh0P4rVol9xFo

公众号回复得到:snowsnow

最后得到:BuildCTF{Th3_wh1t3_y0u_s33_1s_n0t_wh1t3}

十五.

  1. 题目名称:我写的网站被rce了
  2. 解题人:Unicorn
  3. 解题思路:进入站点,看到一些信息,接着挨个尝试按钮功能,寻找可以利用的漏洞,点击按钮时进行抓包,查看数据包中是否有可疑或者特殊参数,全部抓包发现都存在特殊参数,但仅有查看日志功能参数有值,其他均为空值,尝试做为突破口,修改参数值,构造payload
  4. 关键步骤和技巧

尝试修改查看日志特殊参数log_type的值

有错误回显

结合题目关键词rce,构造远程代码执行payload

log_type=acc||cat${IFS}/fla?||ess

cat为Linux参数,${IFS}内部字段分隔符,/fla?用通配符尝试访问不在白名单允许范围内的文件,如flag.txt等,使用||进行连接

成功得到flag,BuildCTF{518e9a8e-a168-4afe-bdeb-db0baa07a87a}

本文地址:http://ww.kub2b.com/tnews/237.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类生活信息

文章列表
相关文章
最新动态
推荐图文
生活信息
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号