Misc-----[2021祥云杯初赛]鸣雏恋 提取压缩包文件图片名8个为一组 转ASC码base64转图片
得到一個.docx文件
目前大部分的.docx文檔都是 以壓縮的形式存在的
修改末尾為zip 查看
在這一步中 我之前直接把這個鳴雛戀.docx給foremost 分離了,分離后的壓縮包打開后沒找到 love.zip 與
key.txt ε=(′ο`*)))唉
.
這里是領寬度字符隱寫
vim key.txt 打開查看即可
http://330k.github.io/misc_tools/unicode_steganography.html
壓縮包密碼是:Because I like naruto best
接著我們來打開 love.zip 壓縮包
分析可得:
有129488張圖片,圖片只有兩種類型,分別用,0 1 來表示 8個為一組,轉為10進制后 轉為字母即可
算法的大致思路如下:
-
先提取壓縮包內的所有文件名和文件大小.
-
因為zipobj.namelist()文件列表中的文件名不是按遞增排序的,所以需要先將文件名和文件大小提取到另一個列表內
-
第一條數據是空的需要刪除
-
這個大列表內存在著許多的小列表,每個子列表代表一個文件,子列表的第一個元素是文件名稱,第二個元素是文件大小
-
因為文件名稱是以out/名稱為格式的,所以需要刪除后綴和out/字符串,保留數字后再轉換成數字類型
-
使用sorted()函數對大列表進行遞增,如果列表的元素都為列表時,默認會按每個子列表的第一個元素遞增排序
-
之后的操作就是將文件大小替換成0和1,每8位二進制就轉換成十進制,然后再從十進制轉換成ASCII碼對應的字符
-
最后把字符結果寫入文件
base64轉圖片
http://tool.chinaz.com/tools/imgtobase/
總結
以上是生活随笔為你收集整理的Misc-----[2021祥云杯初赛]鸣雏恋 提取压缩包文件图片名8个为一组 转ASC码base64转图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CTF--misc 零宽度字符隐写
- 下一篇: Python zipfile 文件名称编