審題,tar沒用,不需要爆破
下載附件得到tar.gz壓縮包
查看16進制的時候發現是PK的頭,對應的題目的提示tar不好使(就是不tar壓縮的)
那麼解壓密碼既然不用爆破,16頭尾也沒啥發現就試試用文件名去解壓
發現可以解壓但是得到的還是壓縮包,繼續重複操作...
當時我解了半小時(時間沉dedao默成本導致...)一直以爲下一個就出了..
累了去水水羣吐槽,這是什麼千層餅..很快得到出題人的回覆
行吧上腳本
import zipfile
import os
import re
#不知道爲啥zip加了close還是提示正在操作,便無法邊解壓邊刪上個壓縮包,有解決方法請師傅不吝賜教
def del_old_zip(file_path):
os.remove(file_path)
def un_rar(file_name,pwd=None):
try:
zip = zipfile.ZipFile(file_name)
zip.extractall(pwd=pwd.encode())
zip.close()
except Exception as e :
print(e)
print('Fail:'+file_name)
return False
else:
print('Success')
return True
def listdir():
file_dir="C://Users/Administrator/Desktop/buuoj/"
list_= [i for i in os.listdir(file_dir) if 'gz'in i]
list_.sort(key=lambda fn: os.path.getmtime(file_dir+fn) if not os.path.isdir(file_dir+fn) else 0)
return list_[-1]
if __name__ == '__main__':
for i in range(300):
file = r"".join(listdir())
pwd = file[:-7]
un_rar(file,pwd)
最後解壓出來的就是flag
-----------------------------------------------------------------我是分割線--------------------------------------------------------------
看完了覺得不錯就點個贊或者評論下吧,感謝!!!
如果本文哪裏有誤隨時可以提出了,收到會盡快更正的