**
杂项基础知识
**
一.常见的各类文件的文件头和文件结尾
列举常见文件头编码特征:
JPEG:
PNG:
GIF:
RAR:
ZIP:
十六进制特征:
图片文件:
JPEG:文件头格式为FF D8 FF,文件尾格式为FF D9。
PNG:文件头格式为89 50 4E 47 0D 0A 1A 0A,文件尾格式为49 45 4E 44 AE 42 60 82。
GIF:文件头格式为47 49 46 38 39 61,文件尾格式为00 3B。
BMP:文件头格式为42 4D,文件尾格式为00 00 00 00。
音频文件:
MP3:文件头格式为49 44 33,文件尾格式为FF FB。
WAV:文件头格式为52 49 46 46,文件尾格式为3E 00 00 00。
视频文件:
AVI:文件头格式为52 49 46 46,文件尾格式为00 00 00 00。
MP4:文件头格式为00 00 00 20 66 74 79 70 69 73 6F 6D,文件尾格式为00 00 00。
压缩文件:
ZIP:文件头格式为50 4B 03 04,文件尾格式为50 4B 05 06。
RAR:文件头格式为52 61 72 21 1A 07 00,文件尾格式为00 00 00。
文档文件:
PDF:文件头格式为25 50 44 46,文件尾格式为0A 25 25 45 4F 46。
DOCX:文件头格式为50 4B 03 04,文件尾格式为50 4B 05 06。
可执行文件:
EXE:文件头格式为4D 5A。
ELF:文件头格式为7F 45 4C 46。
压缩文件相关技能:
1.zip伪加密:
数据的开头是50 4B 03 04这四个字节叫做文件头标记;PK后文件压缩位置有两个字节14 00标识了解压文件所需 pkware 版本;在往后的两个字节00 00叫做全局方式位标记(这里可以判断这个压缩包有无加密,当两个字节为00 00或第一个字节为偶数是无加密状态,但是如果把第一个字节改成奇数如01 00 即显示加密状态,会提示需要输入密码)
2.rar伪加密:
因为会做头部校验一般打开时会报错,通过第24个字符实现加密判断如位数为0即不存在加密,如改为0后压缩包不报错即为伪加密
二.流量分析
1、流量包修复
在线网站:1.PcapFix Online https://f00l.de/hacking/pcapfix.php PcapFix 离线工具:https://github.com/Rup0rt/pcapfix/tree/devel
2、报文协议过滤分析
数据链路层:eth(可过滤mac地址)
网络层:IP(v4/v6) ARP(地址解析协议) RARP 、ICMP(internet控制报文协议) IGMP
传输层:TCP(传输控制协议) UDP(用户数据报协议)
应用层:DHCP、DNS、HTTP、HTTPS、FTP、SMTP、POP3、IMAP
使用方法:
应用层可直接输入协议
tcp和udp使用,tcp.port=“端口号”、udp端口号
Direction
可能的值: ip.src(源地址),ip. dst(目的地址), ,如果没有特别指明来源或目的地,则默认使用 “src or dst” 作为关键字,使用时可通过not, and, or进行拼接如下
http请求方法过滤:http.request.method
3、数据分析和提取
1.数据对象导出分析方法-选择对应文件
选择文件名点击保存
2.直接导出特定分组字节流
三.图片隐写
1、图片隐写术的基础知识——元数据隐写
元数据 主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
元数据中隐藏信息在比赛中是最基本的一种手法,通常用来隐藏一些关键的 Hint 信息或者一些重要的比如password 等信息。
2、IHDR(文件头数据块)
文件头数据块 IHDR(HeaderChunk):它包含有 PNG 文件中存储的图像数据的基本信息,IHDR后的8个字节,前四字节代表图片宽度,后四个字节代表高度
3.利用LSB来进行隐写
LSB全称LeastSignificant Bit,也就是最低有效位。
PNG文件中的图像像数一般是由RGB三原色组成,每一种颜色占用8位,取值范围为0x00~0xFF,即256种颜色,一共包含了256的三次方的颜色,即16777216(1千677W)种颜色。人类的眼睛可以区分约1000万种不同的颜色,这就意味着人类的眼睛无法区分余下的颜色大约有6777216(677W)种。
LSB隐写就是修改RGB颜色分量的最低二进制位(LSB),每个颜色都会有8bit,LSB隐写就是修改了像数中的最低的1Bit,而人类的眼睛不会注意到这前后的区别,每个像数可以携带3Bit的信息,这样就把信息隐藏起来了,这种 LSB 隐藏痕迹的话,可以使用工具 Stegsolve来辅助我们分析。
例题:用左右切换通道,可看见flag二维码
4.通过将压缩包或文件隐藏在图片文件中
这类图片隐写,主要是将文件或压缩包,附在文件二进制流的最后, copy /b example.jpg+hide.zip output.jpg生成output.jpg的新文件,这类隐写可以通过使用Linux下面的binwalk工具,或者使用formost工具进行分离
1.Binwalk工具: binwalk是Linux下用来分析和分离文件的工具,可以快速分辨文件是否由多个文件合并而成,并将文件进行分离。如果分离成功会在目标文件的目录
用法:
分析文件: binwalk filename
分离文件:binwalk -e filename
2.foremost : 如果binwalk无法正确分离出文件,可以使用foremost
用法: foremost 文件名 -o 输出文件件名