一个 伪造文件文件头 的软件
- 使用Python编写的程序,GUI使用PyQt5
- 该程序可用于绕过部分网盘的分享限制(如阿里云盘)
- windows用户可以直接使用
releases
内已打包好的文件 - macos和linux用户需自行安装环境
Python3
和PyQt5
或根据V1.0
版本(无GUI)的文件自行修改git clone https://github.com/15dd/File-Header-Forger.git
或直接网页内下载源代码
- 运行
main.py
经本人测试(2023.1),阿里云盘对文件不光有后缀识别还有文件头识别(不确定,但修改它有效),所以光修改后缀没用。什么是文件头可以自行搜索。如下图,这是一张zip格式的文件的十六进制数据的图片,选中的504B0304
是zip格式的文件头,它可以说明这是一个zip格式的文件,所以我们想绕过检测的话,也要把它改了。
我的做法是将首尾的4个字节对调,实现修改
with open(filePath,"rb+") as rawFile:
rawFile.seek(0,0) #移动到文件的0(头)处偏移为0的位置
BOC = rawFile.read(4) #读取节
rawFile.seek(-4,2) #移动到文件的2(尾)处偏移为-4(向前4个字节)的位置
EOC = rawFile.read(4)
rawFile.seek(-4,2)
rawFile.write(BOC) #向文件末尾的4个写成文件开头的4个字节
rawFile.seek(0,0)
rawFile.write(EOC) #向文件开头的4个写成文件末尾的4个
rawFile.close() #关闭文件
视频教程:bilibili.com/video/BV1A24y1B7Xu