
crc检验原理实际上就是一个p位二进制序列之后附加一个r位二进制检验码(序列), 从而构成一个总长为n=p+r位的二进制序列, 附加在数据序列之后的这个检验码与数据序列的内容之间存在这某种特定的关系 如果干扰因素使数据序列中的某一位或者某些位发生变化,这种特定的关系就会被破坏, 因此通过这种特性可以利用来爆破文件的内容
文件的内容只有相同的时候他的crc校验才会一样只要已知压缩文件的长度已知就可以获取他的crc32值来与我们的内容计算得到的值进行相互比较, 从而得到文件内容(前提是文件内容长度够小才可以通过这种方法来实现,否则内容过长pc的算力有限)
现在有一个flagzip 里面有一个flagtxt 文件 密码未知
使用模块如下:
得到文件的内容为4个字节长度
字典模块通过string模块得到
调用:
如果文件内容过长的话, 通过这种方式就不现实了
解压文件得到如下的压缩文件
得到每个压缩包都是4个字节的大小, 压缩的文件为datatxt, 通过脚本得到文件内容, 脚本如下:
运行结果部分如下:
可以看见才多长这个东西很考验pc的性能, 然后直接进行base64解码, 得到的内容转为rar格式的文件, 然后补全文件头得到flag, 这里具体就不阐述了
得到的内容如下:
个人网站
判断一个文件是一个文件夹还是一个文件
File file1=new File(“获取文件的路径”);
boolean flag1=fileisDirectory(); //如果路径是true,则表示这个file1文件是文件夹
File file2=new File(“获取文件的路径”);
boolean flag2=file2isFile(); //如果路径是true,则表示这个file2文件是文件
判断文件是否存在
File file0=new File(“获取文件的路径”);
boolean flag0=fileoexists(); //如果路径是true,则表示这个file0存在
以上就是关于python 通过crc32得到加密文件内容全部的内容,包括:python 通过crc32得到加密文件内容、一触即发如何判断文件和文件夹、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)