這道題前前後後做了好幾天,這裡記錄一下指令碼如下:
1指令碼執行時間較長#coding:utf-8
2import
zipfile
3import
string
4import
binascii56
defcrackcrc(crc):
7for i in
dic:
8for j in
dic:
9for p in
dic:
10for q in
dic:
11 s = i + j + p +q
12if crc == (binascii.crc32(s) & 0xffffffff):13#
print s
14f.write(s)
15return
1617
defcrackzip():
18for i in range(68):
19 file = '
out' + str(i) + '
.zip
'20 f = zipfile.zipfile(file, 'r'
)21 getcrc = f.getinfo('
data.txt')
22 crc =getcrc.crc23#
以上3行為獲取壓縮包crc32值的步驟24#
print hex(crc)
25crackcrc(crc)
2627 dic = string.ascii_letters + string.digits + '
+/='
2829 f = open('
out.txt
', 'w'
)30crackzip()
31 f.close()
crc32碰撞的原理請翻到這篇文章的0x06部分於是flag即為flag
後來經大神提示,根據rar的檔案結構可以看出還存在乙個名為cmt的檔案,cmt即為comment,即為注釋
php生成壓縮包和開啟壓縮包
需呀用到ziparchive類,php預設帶的有,廢話不說,直接上 親測可以使用,先來個生成壓縮包,解壓縮包後邊補上 開啟php支援ziparchive 在php.ini檔案中將extension php zip.dll 開頭的 的去掉,重啟www伺服器就可以了 1 對多個檔案生成壓縮包 生成壓縮檔...
Ubuntu 壓縮包操作
壓縮包概念 1.打包,把多個檔案打包成乙個檔案 2.壓縮,把大尺寸資料壓成小尺寸 a.有失真壓縮 壓縮前後不一樣 壓縮率比較高,如聲音,影象,等 b.無失真壓縮 壓縮前後一樣 資料的一直性壓縮,檔案,信件等 linux無檔案字尾的概念 現有的.tar,gz,bz2只是乙個不成文的檔案標識,也可以該做...
linux壓縮包相關
老掉牙的歷史就不說了,就從zip往後開始說,有個人要紀念下,就是zip的創始人phil katz,中文就寫作飛利浦卡茲,大家可以看下他的故事。不過現在有壓縮率更好的演算法。在linux環境下主要有bzip2和gzip這兩種。下面總結幾個常用的命令。使用tar來打包檔案,並使用bzip2演算法進行壓縮...