當前位置:成語大全網 - 新華字典 - python 通過crc32得到加密文件內容

python 通過crc32得到加密文件內容

crc檢驗原理實際上就是壹個p位二進制序列之後附加壹個r位二進制檢驗碼(序列), 從而構成壹個總長為n=p+r位的二進制序列, 附加在數據序列之後的這個檢驗碼與數據序列的內容之間存在這某種特定的關系. 如果幹擾因素使數據序列中的某壹位或者某些位發生變化,這種特定的關系就會被破壞, 因此通過這種特性可以利用來爆破文件的內容.

文件的內容只有相同的時候他的crc校驗才會壹樣.只要已知壓縮文件的長度已知就可以獲取他的crc32值來與我們的內容計算得到的值進行相互比較, 從而得到文件內容.(前提是文件內容長度夠小才可以通過這種方法來實現,否則內容過長pc的算力有限)

現在有壹個flag.zip 裏面有壹個flag.txt 文件 密碼未知

使用模塊如下:

得到文件的內容為4個字節長度

字典模塊通過string模塊得到

調用:

如果文件內容過長的話, 通過這種方式就不現實了.

解壓文件得到如下的壓縮文件

得到每個壓縮包都是4個字節的大小, 壓縮的文件為data.txt, 通過腳本得到文件內容, 腳本如下:

運行結果部分如下:

可以看見才多長這個東西很考驗pc的性能, 然後直接進行base64解碼, 得到的內容轉為rar格式的文件, 然後補全文件頭得到flag, 這裏具體就不闡述了

得到的內容如下:

個人網站