**本文尽量不使用随波逐流等一把梭工具**
jinsanpang
下载得到gif动图 中间明显闪过flag串内容
分离动图得到flag
可以用一键分离的工具或脚本也可以用stegsolve的Frame Browser功能逐帧翻
你竟然赶我走
下载得到jpg文件,放进010editor中查看 图片尾存在flag
二维码
扫码得到误导信息secret is here(电脑扫码工具CQR)
010分析发现图片尾明显存在压缩包特征(十六进制504B0304,文本PK)
**附常见文件头**
可以使用foremost、binwalk等方式提取压缩包文件
这里我们直接在010中创建十六进制文件然后将压缩包部分复制粘贴保存为.zip文件
打开压缩包发现加密文件"4number.txt" 提示密码为四位数字
使用ARCHPR对密码进行爆破
使用爆破得到的密码打开txt得到flag
大白
图片乍一看没啥问题 但放到kali中就会原形毕露
宽高正确的图片放进kali中应该会显示缩略图 而宽高不正确的图片则会像这样
以此判断图片宽高被修改 我们选择用脚本爆破宽高 也存在大量一把梭工具
import os
import binascii
import struct
crcbp = open(r"D:\桌面\workbench\dabai.png","rb").read() # 打开图片= open("C://Users//abc//Desktop//flag.png","rb").read()
crc32frombp = int(crcbp[29:33].hex(), 16) # 读取图片中的CRC校验值
print(crc32frombp)
for i in range(4000): # 宽度1-4000进行枚举
for j in range(4000): # 高度1-4000进行枚举
data = crcbp[12:16] + \
struct.pack('>i', i) + struct.pack('>i', j) + crcbp[24:29]
crc32 = binascii.crc32(data) & 0xffffffff
# print(crc32)
if (crc32 == crc32frombp): # 计算当图片大小为i:j时的CRC校验值,与图片中的CRC比较,当相同,则图片大小已经确定
print(i, j)
print('hex:', hex(i), hex(j))
exit(0)
得到结果 679 479
再次打开010 如图所示位置为png图片宽高信息 修改为爆破结果 或者直接给高度改一个超过原本高度的大值 也能得到flag
乌镇峰会种图
what can i say
wireshark
题目描述:黑客通过wireshark抓到管理员登陆网站的一段流量包(管理员的密码即是答案)
wireshark打开流量包 ctrl+f搜索如下
N种方法解决
exe文件看着唬人 010打开发现是base64加密的jpg文件
在线网站或脚本工具 base64解密并写入文件保存为jpg格式(实际是png) 扫码得到flag
推荐Base64解码 Base64编码 UTF8 GB2312 UTF16 GBK 二进制 十六进制 解密 - The X 在线工具
基础破解
题目描述四位数字加密 直接爆破 打开发现一串编码过的字符
简单来说最后一位或两位是等号的一眼base64 解码得到flag
文件中的秘密
文件属性详细信息
LSB
CTF(Misc)工具~stegsolve(图片隐写解析器)的使用_stegsolve使用方法-CSDN博客
stegsolve观察发现 red green blue 0通道中有异常数据
analyse dataextract勾选这3个通道发现其中隐藏了一个png图片 save bin另存为png文件得到二维码 扫码得到flag
zip伪加密
题目名字很明显了
简单来说就是文件中第二个14 00 后为跟着的两位为全局方式标记位 奇数显示为加密 偶数显示为未加密 修改伪加密全局方式标记为偶数即可打开伪加密压缩包(winrar直接点击压缩包修复大多数情况下可以直接修复伪加密(或一把梭工具))
被嗅探的流量
懒人方法:直接丢kali提取文件
正确方法:追踪tcp流发现 在eq2中上传了flag.jpg文件
图片末尾即为flag
rar
题目描述压缩包密码是四位纯数字 what can i say?
qr
扫码得到flag
镜子里面的世界
stegsolve熟悉的三个通道
或是直接在kali中使用zsteg得到key
还以为key有进一步加密结果就是flag了吗
爱因斯坦
图片尾部存在压缩包
属性备注中存在密码
分离压缩包并打开得到flag
ningen
图片尾部存在压缩包
题目描述压缩包密码为四位数字 爆破得到密码 解压得到flag
小明的保险箱
图片尾部存在RAR压缩包 提取后四位密码爆破得到flag
easycap
追踪tcp流得到flag
隐藏的钥匙
图片尾部存在大量垃圾数据 其中包含base64加密的flag 解密得到flag
另外一个世界
图片末尾存在01字符串 八位一组转ASCLL码得到flag
数据包中的线索
追踪tcp流 在eq7中发现大量base64编码,解密后转换为图片得到flag
Base64解码 Base64编码 UTF8 GB2312 UTF16 GBK 二进制 十六进制 解密 - The X 在线工具
神秘龙卷风
根据题目描述四位密码爆破 得到++++.>组成的龙卷风 一眼brainfuck
https://zhuanlan.zhihu.com/p/44091850
brainfuck解密得到flag
Brainfuck/Ook! Obfuscation/Encoding [splitbrain.org]
FLAG
stegsolve很模糊看不出来
可以放到kali里用zsteg
依旧是选择三个颜色的0通道发现压缩包 导出
打开会提示压缩文件损坏 但是没关系,直接用记事本打开文件发现flag
假如给我三天光明
下载得到一张图片和一个带有音频的压缩包
海伦凯勒+假如给我三天光明 一眼盲文
网上找个对照表翻译 使用翻译出的明文解压 打开压缩包得到音频文件
明显听到摩斯电码
使用Audacity打开音频文件 放大后可以看出长短不一的音频波形图
较长的替换为-,较短的替换为.并添加空格可以将音频翻译为摩斯电码
-.-. - ..-. .-- .--. . .. ----- ---.. --... ...-- ..--- ..--.. ..--- ...-- -.. --..
摩斯电码在线识别网站
https://morsecode.world/international/decoder/audio-decoder-adaptive.html
去掉CTF后包裹flag头即可
后门查杀
题目描述:小白的网站被小黑攻击了,并且上传了Webshell,你能帮小白找到这个后门么?(Webshell中的密码(md5)即为答案)。
根据题目描述 我们需要找到文件夹中的后门 大概率是某种内存码 解压后直接使用D盾扫描
发现其中包含include.php文件
代码审计得到密码 即为flag
webshell后门
同上
来首歌吧
音频中段可以隐约听到摩斯声,audacity打开发现分为左右两声道
分离立体音轨 只保留左声道
破译摩斯得到flag
面具下的flag
文件尾部明显发现压缩包
提取后发现是伪加密 修复后得到flag.vmdk文件
其中存在key_part_one 是之前提到过的brainfuck编码
使用7z解压vmdx
7z x flag.vmdk -o./
可以看到key_part_two中出现了真正的flag2
ook解码后拼接得到真正flag
荷兰宽带数据泄露
下载得到conf.bin路由器配置文件使用routerpassview工具阅读
题目没说flag是什么 尝试使用用户名提交成功
九连环
分离图片得到压缩包
伪加密
jpg文件常用的一种加密方式steghide
得到ko.txt
解压得到flag
被劫持的神秘礼物
找到帐号密码,串在一起,用32位小写MD5哈希一下得到的就是答案
追踪TCP流
这里疑似为账号密码,拼在一起md5得到flag
认真你就输了
下载得到excel表 表中有一大堆垃圾信息 且不断提到flag就在chart下
按照中文直译应该是flag就在图表下 但是excel和word一样,如果将后缀改为.zip可以直接打开看到详细结构
于是将后缀改为.zip 在charts路径下找到flag.txt
被偷走的文件
直接搜索字符串 虽然不能直接得到flag但是找到了flag.rar
追进去发现其中有几个FTP的流
通过导出FTP-DATA就能保存到这个flag.rar
爆破压缩包密码得到flag
PS:可以直接用foremost分离出流量包中包含的文件
PPS:这题直接把流量包后缀改成zip也能直接打开
藏藏藏
010分析看到文件尾部有压缩包 单独提取得到一个 福利.docx 打开发现一个二维码 扫码得到flag
佛系青年
下载得到压缩包 其中png没有加密 txt被加密
翻了半天图片发现 压缩包是伪加密 服了 修复后打开得到
“佛曰:遮等諳勝能礙皤藐哆娑梵迦侄羅哆迦梵者梵楞蘇涅侄室實真缽朋能。奢怛俱道怯都諳怖梵尼怯一罰心缽謹缽薩苦奢夢怯帝梵遠朋陀諳陀穆諳所呐知涅侄以薩怯想夷奢醯數羅怯諸”
与佛论禅解密得到flag
你猜我是个啥
下载得到zip文件 想打开却失败了
放进010中观察发现是png文件
修改后缀后是一个二维码
扫码发现“flag不在这”
010图片尾发现flag(也就是说啥也不用改直接010也能看到)
刷新过的图片
题目描述“浏览图片的时候刷新键有没有用呢”
猜测为F5隐写
java Extract Misc.jpg
得到output.txt 但是明显是个zip文件
改后缀解压发现需要密码
修复伪加密打开得到flag
秘密文件
搜索flag发现这段话
又是用FTP传的一个rar文件
foremost分离
尝试打开发现需要密码 又没有提示 又尝试四位数字爆破
打开得到flag
鸡你太美
下载解压得到“篮球.gif"和”篮球副本.gif"
对比两个文件头可以看出 副本的文件头有残缺
修复后得到flag
just_a_rar
下载得到"4位数.zip"尝试四位数字爆破
解压后得到flag.jpg
010在图片中部发现flag
或是图片exif信息中直接查看
snake
图片尾部发现压缩包
解压得到cipher 和 key
记事本打开key发现base64编码
Nicki Minaj最喜欢的关于蛇的歌是什么?
通过百度得知为anaconda
但现在仍然不知道密文的加密方式
继续百度与蛇相关的加密方式
由于密文直接打开是乱码 所以可能要找一个直接对文件进行解密的在线网站
Serpent Encryption – Easily encrypt or decrypt strings or files
解密得到flag
菜刀666
追踪流可以看到很多文件
直接使用foremost 分离
得到压缩包提示需要密码
首先需要知道类似这样的语句是经过url编码和base64编码后得到的
而我们在流7中可以明显看到这样一大段内容
其中z2中的内容明显是一个jpg图片文件
将其单独导出后发现密码
使用密码解压压缩包得到flag
一叶障目
图片放入kali显示异常
说明宽高有问题
修改高度大于844得到flag
神奇的二维码
下载得到二维码
扫码肯定是假信息
binwalk提取出一大堆文件
其中 18394.rar需要密码
而flag.doc中存在大量密文
多次base64解码后得到key
comEON_YOuAreSOSoS0great
使用key打开压缩包得到good.mp3
分析 明显是摩斯密码
翻译后转小写得到flag
纳尼
提示:咦这个文件怎么打不开?
010补齐GIF文件头
得到的动图中每一帧都有一段base字符串
分离后使用QQ/微信截图的提取文字功能提取字符串
base64解码得到flag
excel破解
010秒了(感觉不是预期解)
来题中等的吧
摩斯 细的对应. 粗的对应-
梅花香之苦寒来
结合图片上的文字提示“图穷匕见” 发现图片尾有大量数据
十六进制转二进制得到大量坐标
根据图片属性中的提示猜测需要绘图
将得到的坐标保存后去掉前后括号
使用脚本绘图得到二维码 扫描二维码得到flag
import matplotlib.pyplot as plt
import numpy as np
x, y = np.loadtxt("D:\桌面\draft.txt", delimiter=',', unpack=True)
plt.plot(x, y, '.')
plt.show()
outguess
解压后图片属性中发现社会主义核心价值观加密
结合图片名字outguess使用outguess解密得到flag
谁赢了比赛?
图片尾疑似有文件
foremost提取文件 得到压缩包
爆破四位数字打开 提取出gif图片
其中第309、310帧特殊
单独提取保存
stegsolve观察red0通道发现二维码
扫码得到flag
find_me
备注中发现盲文
穿越时空的思念
很明显右声道是摩斯电码
翻译摩斯电码去除重复部分得到flag
我有一只马里奥
下载得到一个exe文件 双击运行会在当前目录下创建一个1.txt
内容如下
提示我们ntfs流
使用ntfs流处理工具检测1.txt就看到了flag.txt
KO
OOK解密
Brainfuck/Ook! Obfuscation/Encoding [splitbrain.org]
base64隐写
题如其名 解密得到flag
https://www.tr0y.wang/2017/06/14/Base64steg/
这篇博客讲的比较全了
(现在有很多直接解base64隐写的工具)
ezmisc
放入kali中发现图片宽高异常
修改宽高后得到flag
gakki
图片尾有RAR
提取后发现需要密码
四位数字爆破得到密码
打开发现flag.txt 疑似是一堆乱码
利用工具或写脚本字频分析拼接得到flag
caesar
题如其名 凯撒解密得到flag
single dog
图片尾压缩包
解压得到1.txt 里面都是颜文字 解密得到flag
低个头
题目名字 经典的键盘密码提示
EWAZX RTY TGB IJN IO KL
flag{CTF}
黑客帝国
RAR文件的十六进制
存在密码 四位数字爆破
解压得到png文件但是打不开 010观察发现其实是jpg文件修改了文件头
将文件头改回jpg即可打开图片得到flag
伟大的侦探
将文本文件放入010中 切换到EBCDIC编码方式即可看到密码
wllm_is_the_best_team!
使用该密码解压
得到一组图片
跳舞小人加密
翻译得到flag
你能看懂音符吗
下载得到压缩包 发现打不开 010中观察 修改为普通RAR文件头52 61 72 21
解压得到docx
正常应该看到这样一个word文档
而在设置中勾选上隐藏文字后即可看到隐藏的内容
但是正常复制好像复制不出来
我们还是把docx文件后缀改为zip
在该路径下即可找到word中的文字内容
音符解密得到flag
我吃三明治
010中观察发现文件尾隐藏了另一张图片
两张图片中间的一串编码即为base32加密后的flag(怪不得是三明治呢)
解密base32得到flag
你有没有好好看网课?
解压flag1得到flag2.zip 和 flag3.zip
其中flag3.zip提示密码为六位数字
得到flag.docx和影流之主.mp3
flag.docx中内容如下 最后下划线部分是个放大镜没显示出来
结合题目名字 “你有没有好好看网课” 猜测在视频5.20秒和7.11秒有内容 而且很小 开始盯帧
实际在视频的5.66秒发现一串敲击码 逆天了出题人
在7.38秒发现一串base64编码
分别解码后拼接得到密码wllmup_up_up
打开flag2.zip得到real flag.jpg
文件尾发现flag
NTFS数据流
解压文件得到500个文本文档
根据题目名用NTFS管理工具扫描
在293.txt中发现flag(有个坑点在于涉及到NTFS的文件要用winrar解压才行)
sqltest
根据题目名 观察流量包 不难猜测这是一个sql盲注流量包
我们只看http协议的请求包
在过滤器中写入http.request
导出分组解析结果为CSV文档
就可以看到所有sql注入的流量
这里直接跳到629行 爆破字段值 也就是flag
将629行的脚本URL解码
GET /index.php?act=news&id=1 and ascii(substr(((select concat_ws(char(94), flag) from db_flag.tb_flag limit 0,1)), 1, 1))>100 HTTP/1.1
前一半不用看 我们只要分析and之后的内容
from db_flag.tb_flag:从flag数据的flag表中
select concat_ws(char(94),flag:选择flag字段,并用"^"连接
substr(.....,1,1):获取连接后字符串的第一个字符
ascii(....)>100:判断这个字符的ascii码是否大于一百
GET /index.php?act=news&id=1 and ascii(substr(((select concat_ws(char(94), flag) from db_flag.tb_flag limit 0,1)), 1, 1))>200 HTTP/1.1
下一条判断是否大于两百
GET /index.php?act=news&id=1 and ascii(substr(((select concat_ws(char(94), flag) from db_flag.tb_flag limit 0,1)), 1, 1))>150 HTTP/1.1
再下一条判断是否大于一百五 通过两面包夹之式最终确定字符串的值
GET /index.php?act=news&id=1 and ascii(substr(((select concat_ws(char(94), flag) from db_flag.tb_flag limit 0,1)), 1, 1))>102 HTTP/1.1
最终在六百三十九行确定了第一个字符的ascii码为102,也就是“f"
然后substr(...,2,1) 开始判断下一个字符
GET /index.php?act=news&id=1 and ascii(substr(((select concat_ws(char(94), flag) from db_flag.tb_flag limit 0,1)), 2, 1))>100 HTTP/1.1
也就是说每一次substr的值更换之前 确定了上一个字符的值
我们只需要提取所有更换前的字符拼接就能得到flag
john-in-the-middle
追踪tcp流发现总共就六个流 可以自己手动看一看
发现这些流量中传递了一些文件 包括png图片
导出所有的http文件
logo.png中有一面小旗子 也就是flag
stegsolve观察得到flag
docx
打开word检索一番没什么信息
直接改后缀为zip 在media文件夹下发现大量文件
在最大的图片中发现flag
swp
153个TCP流 粗略看一遍 发现流量中存在图片 压缩包等文件
导出看了一下除了secret.zip 其他东西好像都没什么用
伪加密修复打开flag.swp找到flag
SXMgdGhpcyBiYXNlPw==
Is this base?
打开文本文档发现大量base64编码 一眼base64隐写
解密得到flag
间谍启示录
foremost提取iso文件
运行flag.exe会在目录下生成一个机密文件.txt
如果没有记得开启文件夹的隐藏文件
喵喵喵
stegsolve观察图片 RGB0通道有异常 分析时选择BGR模式
得到png图片 save bin 保存为png后缀 发现图片打不开
010分析得到的图片 发现图片头有垃圾 把垃圾字节删掉再保存就行了
发现图片是半个二维码
010重新打开发现CRC有错误
修改图片高度为280即可看到全部二维码
扫码得到一个网盘地址
下载解压后得到一个flag.txt
很坑爹 这里是NTFS隐写
用winrar解压单独放在文件夹里 用NTFS处理工具扫描
得到一个pyc文件
python的pyc文件详细理解 - 海_纳百川 - 博客园
这里用在线网站对pyc文件进行反编译方便我们阅读
或者用uncompyle6反编译
kali 中 pip install uncompyle6 安装
uncompyle6 1.pyc > 1.py导出py脚本
得到加密脚本
import base64
def encode():
flag = '*************'
ciphertext = []
for i in range(len(flag)):
s = chr(i ^ ord(flag[i]))
if i % 2 == 0:
s = ord(s) + 10
else:
s = ord(s) - 10
ciphertext.append(str(s))
return ciphertext[::-1]
ciphertext = [
'96',
'65',
'93',
'123',
'91',
'97',
'22',
'93',
'70',
'102',
'94',
'132',
'46',
'112',
'64',
'97',
'88',
'80',
'82',
'137',
'90',
'109',
'99',
'112']
写脚本逆向加密脚本
def decode(c):
ciphertext = c[::-1]
flag = ''
for i in range(len(ciphertext)):
if i % 2 == 0:
s = int(ciphertext[i]) - 10
else:
s = int(ciphertext[i]) + 10
s = s ^ i
flag += chr(s)
print(flag)
ciphertext = [
'96',
'65',
'93',
'123',
'91',
'97',
'22',
'93',
'70',
'102',
'94',
'132',
'46',
'112',
'64',
'97',
'88',
'80',
'82',
'137',
'90',
'109',
'99',
'112']
decode(ciphertext)
思路就是逆着加密脚本写得到flag
小易的U盘
.iso文件bandzip可以直接当作压缩包打开
可以观察到其中有一大堆垃圾文件 和一大堆autoflag.exe推测其中肯定有一个真的
打开autorun.inf 提示我们打开autoflag -副本(32)
运行这个exe会给在一个文件里一直写入"f"(别问怎么知道的)
这里有一点点不算逆向的逆向 用ida打开 exe
在main_0中找到flag(连F5都不用按)
爬
解压得到一个无后缀文件 010观察应该是PDF
提示flag被图片挡住了
移开图片之后底下还是一张图片
用QQ截图功能提取文字
十六进制转字符得到flag