1. 1. 金三胖
  2. 2. 你竟然赶我走
  3. 3. 二维码
  4. 4. 大白
  5. 5. N种方法解决
  6. 6. 乌镇峰会种图
  7. 7. wireshark
  8. 8. 基础破解
  9. 9. 文件中的秘密
  10. 10. LSB
  11. 11. zip伪加密
  12. 12. 被嗅探的流量
  13. 13. rar
  14. 14. qr
  15. 15. 镜子里面的世界
  16. 16. ningen
  17. 17. 爱因斯坦
  18. 18. 小明的保险箱
  19. 19. easycap
  20. 20. 隐藏的钥匙
  21. 21. 另外一个世界
  22. 22. FLAG
  23. 23. 神秘龙卷风
  24. 24. 数据包中的线索
  25. 25. 假如给我三天光明
  26. 26. 后门查杀
  27. 27. webshell后门
  28. 28. 来首歌吧
  29. 29. 面具下的flag
  30. 30. 荷兰宽带数据泄露
  31. 31. 九连环
  32. 32. 被劫持的神秘礼物
  33. 33. [BJDCTF2020]认真你就输了
  34. 34. [BJDCTF2020]藏藏藏
  35. 35. 被偷走的文件
  36. 36. 刷新过的图片
  37. 37. [GXYCTF2019]佛系青年
  38. 38. [BJDCTF2020]你猜我是个啥
  39. 39. snake
  40. 40. keli
  41. 41. 史努比
  42. 42. 秘密文件
  43. 43. [BJDCTF2020]鸡你太美
  44. 44. 菜刀666
  45. 45. [BJDCTF2020]一叶障目
  46. 46. [SWPU2019]神奇的二维码
  47. 47. [BJDCTF2020]纳尼
  48. 48. 梅花香之苦寒来
  49. 49. [HBNIS2018]excel破解
  50. 50. [HBNIS2018]来题中等的吧
  51. 51. [ACTF新生赛2020]outguess
  52. 52. 穿越时空的思念
  53. 53. 谁赢了比赛
  54. 54. [WUSTCTF2020]find_me
  55. 55. [SWPU2019]我有一只马里奥
  56. 56. [GUET-CTF2019]KO
  57. 57. [GXYCTF2019]gakki
  58. 58. [ACTF新生赛2020]base64隐写
  59. 59. [MRCTF2020]ezmisc
  60. 60. [HBNIS2018]caesar
  61. 61. [SWPU2019]伟大的侦探
  62. 62. 黑客帝国
  63. 63. [HBNIS2018]低个头
  64. 64. [MRCTF2020]你能看懂音符吗
  65. 65. [SUCTF2018]single dog
  66. 66. 我吃三明治
  67. 67. [SWPU2019]你有没有好好看网课?
  68. 68. [ACTF新生赛2020]NTFS数据流
  69. 69. sqltest
  70. 70. john-in-the-middle
  71. 71. [ACTF新生赛2020]swp
  72. 72. [UTCTF2020]docx
  73. 73. [GXYCTF2019]SXMgdGhpcyBiYXNlPw==
  74. 74. 喵喵喵

NS - Buuctf MISC Part

练习平台Buuctf

金三胖

gif帧中间藏了flag,使用puzzle solver解一下即可

你竟然赶我走

附件为一个jpg,010editor打开,flag在文件尾

二维码

图片藏了个zip,binwalk -e 分离,然后根据提示4number进行爆破,得到密码7639,解压得到flag

大白

修复图片宽高,使用puzzle solver修复

N种方法解决

下载是个exe,丢DIE里看了下不对,strings看了下发现是个base64图片,把base64抠出来丢cyberchef里,解出来是二维码,扫一下就是flag

乌镇峰会种图

附件为一个jpg,010editor打开,flag在文件尾

wireshark

提示找密码,跟踪tcp流,在第二个stream中找到密码

基础破解

爆破密码,提示了4位数,爆破得到2563,解压出来解一下看到Zmxh,base64解压就是flag

文件中的秘密

附件为一个jpeg,010editor打开,flag在中间有一段

LSB

stegsolve打开,RGB的0打勾,选择ROW LSB RGB,是一张二维码,扫描就是flag

zip伪加密

方法1: 手动修改第二个504B段的类似于09 00(奇数表示加密),改为08 00即可,改完mac打不开用windows
方法2: 使用ZipCenOp.jar修改

被嗅探的流量

wireshark打开搜索flag即可

rar

爆破4位数密码,8795,解开就是flag

qr

cyberchef扫描二维码即可

镜子里面的世界

zsteg中给出了flag(secret)

ningen

爆破4位数密码,8368,解开就是flag

爱因斯坦

附件为jpg,尾部存在压缩包,密码在中间某段,this_is_not_password(jpg信息段)

小明的保险箱

附件为jpg,尾部存在压缩包,提示爆破4位密码

easycap

跟踪TCP流即是flag

隐藏的钥匙

附件为jpg,尾部存在疑似flag的东西,一串base64解开即可

另外一个世界

附件为jpg,尾部存在疑似flag的东西,一串bin解开即可

FLAG

zsteg -a看到了个压缩包,提取出来zsteg -E 'b1,rgb,lsb,xy' 42011487927629132.png > 1.zip
然后strings秒了

神秘龙卷风

rar爆破密码5463,打开是brainfuck,解一下就是flag

数据包中的线索

流量包里有个base64图片,打开就是flag

假如给我三天光明

压缩包密码需要找盲文(braille),结果为kmdonowg,解压出一个音频,打开像morse密码,记录下长短
-.-. - ..-. .-- .--. . .. ----- ---.. --... ...-- ..--- ..--.. ..--- ...-- -.. --..
解出来flag为去掉CTF后剩下内容转小写(坑)

后门查杀

D盾扫一下,include/include.php为后门,flag为连接密码

webshell后门

D盾扫一下,member/zp.php为后门,flag为连接密码

来首歌吧

打开有一侧音轨为morse密码
..... -... -.-. ----. ..--- ..... -.... ....- ----. -.-. -... ----- .---- ---.. ---.. ..-. ..... ..--- . -.... .---- --... -.. --... ----- ----. ..--- ----. .---- ----. .---- -.-.

面具下的flag

附件为jpg,分离出一个zip(伪加密),解压得到一个vmdk,使用7z x flag.vmdk -o./解压内容,一个brainfuck,一个ook解开即可

荷兰宽带数据泄露

考察工具,RouterPassView,打开username为flag,记录下文件头02 F9 5C 97

九连环

jpg分离得到压缩包(伪加密)和一张jpg,使用010看了下没东西,转为尝试空密码的steghide,得到压缩包密码,解压即可

被劫持的神秘礼物

流量包,用户名admina,密码adminb,合并后md5即可

[BJDCTF2020]认真你就输了

解压得到xls,flag在其中(改为压缩包打开查看)

[BJDCTF2020]藏藏藏

jpg分割出一个zip,打开word里有个二维码,扫描得到flag

被偷走的文件

流量包中有个rar,拿出来,爆破4位数字密码(脑洞),5790输入即是flag

刷新过的图片

考察工具F5-steganography的使用,java -mx40M Extract lopez.jpg -p xxxx ,无密码去掉-p即可,结果在output.txt中,此题为一个压缩包,伪加密解开即可

[GXYCTF2019]佛系青年

伪加密,与佛论禅解开即可

[BJDCTF2020]你猜我是个啥

是个png,但是假的,flag在末尾

snake

jpg图片,分离出一个cypher一个key,key需要搜索得到anaconda,cypher(脑洞)是serpent加密,在线网站用http://serpent.online-domain-tools.com/,离线的暂未解决

keli

附件为png,zsteg或者aperisolve简单看了下没思路,拿cloacked-pixel解,密码keli,解得一张jpg,jpg尾部有个压缩包,爆破密码000000,得到一个01组成的二维码,使用脚本转换下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from PIL import Image
MAX = 260 #根据01字符串长度开根计算图宽高
pic = Image.new("RGB",(MAX, MAX))
#若是(255,255,255)、(0,0,0)需要先转换01
str = ""

i=0
for y in range (0,MAX):
for x in range (0,MAX):
if(str[i] == '1'):
pic.putpixel([x,y],(0, 0, 0))
else:
pic.putpixel([x,y],(255,255,255))
i = i+1
pic.show()
pic.save("./flag.png")

史努比

附件zip伪加密,一个零宽隐写给了密码snb_123!,然后用cloacked-pixel解出来即可

秘密文件

TCP包中有个rar,爆破密码1903,解压就是flag

[BJDCTF2020]鸡你太美

给了两个gif,010打开发现有个缺了头,插入一个GIF头,47 49 46 38

菜刀666

流量包里,有个上传图片,拿出来是个密码,后续有流里有个压缩包,直接解压缩就是flag

[BJDCTF2020]一叶障目

修复png高宽,puzzlesolver解决

[SWPU2019]神奇的二维码

二维码扫描没用,binwalk分离,拿到很多东西,在doc中解base64得到密码,解开另一个压缩包得到音频,使用morse2ascii转换得到morse密码,解开就是flag,其他都是虚晃一枪。

[BJDCTF2020]纳尼

给gif加个头GIF89a,打开gif,帧里拼起来就是flag

梅花香之苦寒来

附件为jpg,打开后文件尾跟了一堆hex,解开发现是xy坐标,使用随波逐流工具箱生成下图片,是个二维码,扫开就是flag

[HBNIS2018]excel破解

010editor里搜66 6c 61 67秒了

[HBNIS2018]来题中等的吧

解morse,flag就是alphalab,蚌埠住了

[ACTF新生赛2020]outguess

附件jpg的exif信息中有个社会主义核心价值观编码,解开是abc,联想题目outguess,直接解密得到flag

穿越时空的思念

提出来是morse,morse2ascii解码得到flag

谁赢了比赛

binwalk分解得到rar,爆破密钥为1020,解开得到一个gif,用puzzlesolver拆分,得到一个提示图,然后使用aperisolve看了下,单通道里有二维码,直接扫出来就是flag

[WUSTCTF2020]find_me

exiftool秒了,评论里有一串盲文,用toolsfx解

[SWPU2019]我有一只马里奥

运行得到1.txt(binwalk分离解压好像有点问题),txt提示了ntfs和flag.txt,然后使用notepad .\1.txt:flag.txt 读取ntsf流。

补充制作ntfs流程,echo 123 > 1.txt:flag.txt

[GUET-CTF2019]KO

ook解开即可

[GXYCTF2019]gakki

附件为jpg,分离得到压缩包,爆破密码,然后得到一串字符串,杂乱无序一开始以为是base,但不是。最后尝试统计频率发现flag

[ACTF新生赛2020]base64隐写

base64隐写

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#coding=UTF-8
import base64

def get_base64_diff_value(s1, s2):
base64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
res = 0
for i in range(len(s1)):
if s1[i] != s2[i]:
return abs(base64chars.index(chr(s1[i])) - base64chars.index(chr(s2[i])))
return res

def solve_stego():

with open('./base64_steg.txt', 'rb') as f:
file_lines = f.readlines()

bin_str = ''
for line in file_lines:
line = line.strip()
steg_line = line
norm_line = base64.b64encode(base64.b64decode(line))

diff = get_base64_diff_value(steg_line, norm_line)

pads_num = steg_line.count(b'=')
if diff:
#print bin(diff)
bin_str += bin(diff)[2:].zfill(pads_num * 2)

else:
bin_str += '0' * pads_num * 2

res_str = ''

for i in range(0, len(bin_str), 8):

res_str += chr(int(bin_str[i:i+8], 2))
print(res_str)

solve_stego()

[MRCTF2020]ezmisc

修复png,puzzlesolver秒了

[HBNIS2018]caesar

凯撒移位,偏移量1,toolsfx秒了

[SWPU2019]伟大的侦探

压缩包有密码,密码本里是乱码,要用EBCDIC编码打开获得密码wllm_is_the_best_team!,然后是跳舞小人,对应解出flag即可。

黑客帝国

hex解开得到一个rar,爆破压缩包得到一个图片,修复文件头,把png文件头改成jpg的FF D8 FF E0

[HBNIS2018]低个头

键盘密码,对着敲

[MRCTF2020]你能看懂音符吗

解压得到的文件头有问题,替换一下第一个和第二个字节构成正确的rar头,解出一个word,改后缀找到一串音符。使用在线网站解密
https://www.qqxiuzi.cn/bianma/wenbenjiami.php?s=yinyue

[SUCTF2018]single dog

附件jpg,使用binwalk分离,然后使用toolsfx的aaencode模块解码

我吃三明治

jpg和jpg中间有段base,使用basecrack的magic模式解一下

[SWPU2019]你有没有好好看网课?

两个压缩包,其中一个提示6位数密码,然后分解mp4为图片,找到 ..... ../... ./... ./... ../ 这是敲击码,需记住,后面还有个base64,解开得到密码wllmup_up_up,解压压缩包得到jpg,flag在文件尾

[ACTF新生赛2020]NTFS数据流

需要注意所有ntfs需要使用winrar进行解压,再使用AlternateStreamView查看ntfs流,最后找到293.txt:flag.txt,使用notepad打开即可

sqltest

流量包中是sql盲注,wireshark过滤http contains "tb_flag%20%20limit%200,1))" 然后扣出来解开即可
102 108 97 103 123 52 55 101 100 98 56 51 48 48 101 100 53 102 57 98 50 56 102 99 53 52 98 48 100 48 57 101 99 100 101 102 55 125

john-in-the-middle

流量包中提取到一个logo.png,使用steghide找到在切换通道的过程中找到flag

[ACTF新生赛2020]swp

流量包里有个zip,然后hint.html里提示伪加密,拿到flag,strings秒了

[UTCTF2020]docx

docx改zip,图片里有flag

[GXYCTF2019]SXMgdGhpcyBiYXNlPw==

base64隐写

喵喵喵

png使用zsteg提取b1,bgr,lsb,xy中的数据流,是个png,需要修复高宽得到一个二维码,扫码后下载rar,没别的东西猜测NTFS,提取出一个pyc,使用pycdc反编译出源码,编写解密代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
def decode(ciphertext):
ciphertext = ciphertext[::-1]
for i in range(len(ciphertext)):
if i % 2 == 0:
s = int(ciphertext[i]) - 10
else:
s = int(ciphertext[i]) + 10
s = chr (i ^ int(s))
print(s, end='')
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']
if __name__ == '__main__':
decode(ciphertext)