杂项个人总结

杂项杂七杂八的工具知识点太多了,这里每遇到一种就记录一种

文章目录

  • 压缩包
    • 0x01 压缩包恢复
    • 0x02 压缩包密码暴力破解
    • 0x03 明文攻击
  • 图片
    • 0x01 lsb隐写且有密码
    • 0x01 图片隐写-steghide
    • 0x03 图片隐写-StegSolve-三原色隐写
    • 0x04 图片合并
    • 0x05 坐标生成图片
    • 0x06 GIF帧分离 + 图片拼接(动态图片分解)
    • 0x07 图片修改宽高
    • 0x08 图片盲水印
    • 0x09 拼图
    • 0x10 GIF帧间隔
  • 音频
    • multimon-ng
  • 其他
    • 文件切割
    • bmc
  • 最后

压缩包

0x01 压缩包恢复

用winhex打开,看文件头是否被修改,或缺失,然后补全

0x02 压缩包密码暴力破解

使用工具:ARCHPR
杂项个人总结_第1张图片
使用步骤:

  • 打开压缩包
  • 选择攻击类型
  • 配置参数
  • 开始攻击
    杂项个人总结_第2张图片
    也可以使用自己写python脚本暴力破解密码
import zipfile
import os

def extractFile(zFile, password):
    try:
        zFile.extractall(pwd=password.encode())
    except:
        return False
    else:
        return True


zfile = zipfile.ZipFile("D:\下载/1.zip")	# 字典路径
passwd = open("D:\desktop\字典/6位字典.txt", 'r')	# 字典路径
for password in passwd.readlines():
    # print(password, end='')
    password = str(password.strip('\n'))
    result = extractFile(zfile, password)
    if result:
        print('[+] 成功,有效密码为' + password)
        break
    else:
        print("[-] 失败", password)
        

0x03 明文攻击

条件:有压缩包内一个文件,如下所示
在这里插入图片描述

压缩包内有两个文件003.jpg和test.txt,现在我们有未加密的003.jpg即可使用明文攻击
在这里插入图片描述

使用工具:

  • 打开压缩包
  • 选择明文攻击
  • 加载明文文件
  • 开始攻击
    杂项个人总结_第3张图片

图片

0x01 lsb隐写且有密码

工具:cloacked-pixel-master(lsb隐写)

python lsb.by extract xxx.png 1.txt 解密密码

0x01 图片隐写-steghide

这里先用第一个命令检查,如果叫你输入密码,说明隐藏了东西。如图:
杂项个人总结_第4张图片
然后再分离出来
在这里插入图片描述

工具:steghide

 .\steghide.exe info .\a.jpg
  .\steghide.exe extract -sf .\00017508.jpg

0x03 图片隐写-StegSolve-三原色隐写

工具:StegSolve

BGR 3原色设置为0 提取LSB

0x04 图片合并

有如下两张图片:

先用stegsolve打开图片一。
杂项个人总结_第5张图片
然后使用image combiner选择第二张图片。
杂项个人总结_第6张图片
拿到flag:
杂项个人总结_第7张图片

0x05 坐标生成图片

给坐标信息 ,生成图片 用py脚本,格式必须如下:
杂项个人总结_第8张图片

#-*- coding:utf-8 -*-
from PIL import Image
import re

x = 72 #x坐标  通过对txt里的行数进行整数分解
y = 74 #y坐标  x*y = 行数

im = Image.new("RGB",(x,y))#创建图片
file = open('rgb2.txt') #打开rbg值文件

#通过一个个rgb点生成图片
for i in range(0,x):
    for j in range(0,y):
        line = file.readline()#获取一行
       # line = line.replace('\n','')
        print(line)
        rgb = line.split(",")#分离rgb
        print(rgb)
        im.putpixel((i,j),(int(rgb[0]),int(rgb[1]),int(rgb[2])))#rgb转化为像素
im.show()
im.save('1.png')

转化效果:
杂项个人总结_第9张图片

0x06 GIF帧分离 + 图片拼接(动态图片分解)

kali工具之convert

想用convert命令首先要安装imagemagick,使用如下命令安装:

apt-get install imagemagick

使用convert命令分解gif:

convert a.gif a.png

杂项个人总结_第10张图片
然后要用montage工具把分离的png拼接起来:

安装:

apt-get install montage

拼接:

montage a*.png -tile x1 -geometry +0+0 flag.png

-tile是拼接时每行和每列的图片数,这里用x1,就是只一行
-geometry是首选每个图和边框尺寸,我们边框为0,图照原始尺寸即可

结果:
杂项个人总结_第11张图片

以上步骤一个在线网站就能解决:
动态图片分解

效果:杂项个人总结_第12张图片

0x07 图片修改宽高

如果一个图片在windows中能正常打开,而linux中打不开,那么就是修改图片宽高了,一般报错如下:
杂项个人总结_第13张图片
而图片宽高位置如下:
杂项个人总结_第14张图片
039E:宽
044C:高

这道题就是将044C修改为054C即可,效果如下:
杂项个人总结_第15张图片

0x08 图片盲水印

例题: misc-4-1

杂项个人总结_第16张图片

提示:

Although two days doing the same things, but day2 has a secret than day1

github有处理盲水印的脚本:(前者python2 python3都可以跑)
https://github.com/chishaxie/BlindWaterMark

https://github.com/lucoo01/blindwatermark

这里报错ImportError: No module named cv2 ,于是下载opencv。

python2:

pip install opencv-python
python bwm.py decode day1.png day2.png flag.png

python3:

pip3 install opencv-python
python3 bwmforpy3.py decode day1.png day2.png flag.png

如果遇到pip install opencv-python下载失败,python3跑出来不对,可以参考我的这篇博客:
做题misc-4-1时遇到python No module named cv2 问题(2020-08-26)

0x09 拼图

gaps的安装__kali

gaps的使用

0x10 GIF帧间隔

题目:XMAN-qualifiers-2017 : Misc/SimpleGIf

  • Step 1
    GIF 文件缺失文件头,补上47 49 46 38 39 61
    杂项个人总结_第17张图片

    • Step 2
      观察每一帧间隔发现存在一定规律
identify -format "%s %T \n" 100.gif

杂项个人总结_第18张图片

identify -format "%s %T \n" 100.gif > flag
  • Step 3

提取每一帧间隔并进行转化,推断20 & 10 分别代表0 & 1

cat flag|cut -d ' ' -f 2|tr -d '66'|tr -d '\n'|tr -d '0'|tr '2' '0'

在这里插入图片描述

  • Step 4

转ASCII码得到flag
杂项个人总结_第19张图片

音频

multimon-ng

例:用kali发现这是音频文件
在这里插入图片描述

用multimon-ng直接获取flag

./multimon-ng -t raw -a AFSK1200 transmission.raw

multimon-ng © 1996/1997 by Tom Sailer HB9JNX/AE4WA © 2012-2014 by Elias

Oenal available demodulators: POCSAG512 POCSAG1200 POCSAG2400 FLEX EAS

UFSK1200 CLIPFSK FMSFSK AFSK1200 AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800

FSK9600 DTMF ZVEI1 ZVEI2 ZVEI3 DZVEI PZVEI EEA EIA CCIR MORSE_CW DUMPCSV SCOPE

Enabled demodulators: AFSK1200 AFSK1200: fm WDPX01-0 to APRS-0 UI pid=F0

!/;E’q/Sz’O /A=000000flag{f4ils4f3c0mms}
杂项个人总结_第20张图片

其他

文件切割

题目:ZCTF-2017:Whisper

  • 步骤1

打开附件
杂项个人总结_第21张图片

用Stegsolve观察hint文件,发现提示,线索应该就在这张图片中

杂项个人总结_第22张图片

  • 步骤2

winhex发现尾部有大量字符串,并且像是base64编码之后的
杂项个人总结_第23张图片

  • 步骤3

binwalk&&dd 切割文件

binwalk分析文件

binwalk hint\ 1.png

杂项个人总结_第24张图片
使用dd将后面的data部分分离出来,保存为file_1

dd if=hint\ 1.png of=file_1 bs=1 skip=5984

在这里插入图片描述

base64解码,保存为file_2

base64 -d file_1 > file_2

用binwalk将里面可能存在的文件分离出来

binwalk -e file_2

杂项个人总结_第25张图片分离出来很多文本文档,猜测压缩包的密码就在里面,使用strings和grep命令尝试读取出来

strings * | grep pass

杂项个人总结_第26张图片

使用密码解压压缩包拿到flag

bmc

工具 https://github.com/ANSSI-FR/bmc-tools

py -3 .\bmc-tools.py -s .\bmc -d res

杂项个人总结_第27张图片

最后

其他总结:
http://www.ga1axy.top/index.php/archives/6/#%E5%9B%BE%E7%89%87%E7%9B%B8%E5%85%B3

你可能感兴趣的:(#,ctf知识点总结)