zip伪加密文件分析(进阶版)
作者近日偶然获得一misc题,本来以为手到擒来,毕竟这是个大家都讨论烂了的题,详情访问链接http://blog.csdn.net/ETF6996/article/details/51946250。既然作为进阶版,当然得对的起这括号里三个字,那道题我断断续续研究了两天,才勉强算是破解了。不废话了,直入主题。
对于普通的zip文件有了解的应该都认得下面这张图片:
对于其中各个字段的含义请大家访问首行提供的链接学习,对于了解过的小伙伴接着往下看,以下是题目中的截图:
仔细点研究会发现这里有五个50 4B的hex编码,突然开了脑洞之后,发现此压缩包内应该是文件夹内藏flag,随手建文件夹包含1.txt验证,截图如下:
验证完毕之后当然老方法,改50 4B 01 02 后面的标记位,当然是无果的,我要对得起进阶版这三个字:
再来,再建了个加密的文件夹压缩包(不上图了),研究了一下zip文件头,发现在伪加密、未加密、加密三种格式的zip文件头中哪个字段不一样,分析得到除我们熟知的加密标记位之外,还有一个表示压缩方式的位置,嫌疑很大,改:
这时候,得到了一枚,赶紧打开:
,你特么在逗我?这是个啥?这时候很多小伙伴一定以为我把压缩方式标记位改回去应该就好了吧?直接上图:
呵呵。。。果然玩CTF的都很猥琐。。。由于某些原因我也提交不了答案,然而对于这个文件的分析提醒了小伙伴们,压缩方式也是能影响是否加密的。。。吧?
暂时先分析到这里,未完待续。。。
zip伪加密文件分析(进阶版)的更多相关文章
- Zip伪加密 破解ZIP密码
ZIP是一种相当简单的分别压缩每个文件的存档格式.分别压缩文件允许不必读取另外的数据而检索独立的文件:理论上,这种格式允许对不同的文件使用不同的算法.不管用何种方法,对这种格式的一个告诫是对于包含很多 ...
- ZIP伪加密(deprecated)
ZIP伪加密 经过伪加密的apk,改成zip格式打开会发现里面的文件都经过了加密. APK实际上是Zip压缩文件,但是Android系统在解析APK文件时,和传统的解压压缩软件在解析Zip文件时存在差 ...
- 破解压缩包的几种方式(zip伪加密 爆破 CRC32碰撞 已知明文攻击)
zip伪加密 zip文件是由3部分组成,详见文末 压缩源文件数据区+压缩源文件目录区+压缩源文件目录结束标志 在压缩源文件数据区有个2字节的 全局方式位标记 ,在压缩源文件目录区也有个2字节的 全局方 ...
- Bugku-CTF加密篇之zip伪加密(flag.zip)
zip伪加密
- zip伪加密
简单的话来阐述 zip伪协议的意思是说本来不需要密码的zip文件然后通过修改标志位,然后就可以达到有密码的效果对吗?但是他实际是没有密码. 一个 ZIP 文件由三个部分组成: 压缩源文件数据区+压缩源 ...
- .zip格式和zip伪加密
ZIP文件的组成: 压缩源文件数据区+压缩源文件目录区+压缩源文件目录结束标志 压缩源文件数据区 50 4B 03 04:这是头文件标记(0x04034b50) 14 00:解压文件所需 pkware ...
- /etc/fstab文件分析(第二版)
/etc/fstab文件分析 前面说新建的分区在系统重启之后就会失效,要想永久生效,需要将其写入/etc/fstab文件 一./etc/fstab文件格式:6个组成部分 物理分区名/卷标 挂载点 文件 ...
- buuctf zip伪加密
平时伪加密总是依赖osx,这道题无法直接解压,所以研究一下伪加密先放两张图(图是偷的)一般在压缩源文件数据区全局方式位标记处,真加密为 09 00,伪加密为00 00,而后面将压缩源文件目录区全局方式 ...
- 关于zip伪加密
创建一个zip文件 然后用winhex打开 可以看到第二个PK头的地方对应hex区域有一场串0000000000 在这里的第四个0这里末尾修改成奇数 奇数为加密 偶数为不加密 再去打开就可以看到加密了
随机推荐
- Web前端开发的前景与用处
随着时代的发展,现在从事IT方向的人有很多,所以励志要成为前端开发工程师的人有很多.当然也有很多人在犹豫不知道该从事哪个方向,我今天就是来给大家分析一下Web前端开发的前景.包括工作内容,发展前景和薪 ...
- jQuery专题
jQuery概述 ·为了简化JavaScript的开发,一些JavaScript库诞生了.JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的Web2.0特性的富客户 ...
- Android中ListView控件的使用
Android中ListView控件的使用 ListView展示数据的原理 在Android中,其实ListView就相当于web中的jsp,Adapter是适配器,它就相当于web中的Servlet ...
- controller 解析xml文件
public ActionResult Index() { XmlReader reader = null; try { //获取路径 ..\TGB.Common.Message\TGB.Common ...
- Postgresql存储过程调试:PostgreSQL 之 Function NOTICE
转载自http://zhenghaoju700.blog.163.com/blog/static/13585951820116782843994/ 先安装一个PostgreSQL(见补充知识) 比较O ...
- 预装win8的系统换win7需要做的bios设置
https://zhidao.baidu.com/question/873669708066476212.html (一)联想G50-70由于预装的是WIN8位系统,哪么改装WIN7 64位的方法如下 ...
- WPF与WinForm开发有什么区别?
转自http://hi.baidu.com/leoliu83/blog/item/1d1a4a66dcb41134aa184cfd.html WPF开发于WinForm之后,从技术发展的角度,WPF比 ...
- label标签
- JavaScript面试题
一道常被人轻视的前端JS面试题 标签(空格分隔): JavaScript function Foo() { getName = function () { alert (1); }; return t ...
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
IOS atomic与nonatomic,assign,copy与retain的定义和区别 atomic和nonatomic用来决定编译器生成的getter和setter是否为原子操作. ...