1
7z文件的文件头是37 7A BC AF 27 1C,可尝试在图片中查找是否有这些字符,有可能需要修复文件头。
常见文件头有
- zip 文件 50 4B 03 04
- JPEG (jpg),文件头:FF D8 FF E0
- PNG (png),文件头:89 50 4E 47 0D 0A 1A 0A
- GIF (gif),文件头:47 49 46 38
- TIFF (tif),文件头:49 49 2A 00
- RAR Archive (rar),文件头:52 61 72 21
- Wave (wav),文件头:57415645
- AVI (avi),文件头:41564920
2
在python3中,对于unicode字符可以使用.decode(“unicode_escape”)解码得到相应字符,但要注意点,unicode字节码的形式是\uxxxx,但如果是英文字符(不足4位,只有2位)时python默认只显示2位,为了解码需要在前面补上0,例如’f’对应得应该是\u0066,而python输出只会显示2位,解码的时候要在前面补0
#示例代码
str2 = b"XHU2Nlx1NmNcdTYxXHU2N1x1N2JcdTY4XHU2MVx1NjNcdTZiXHU2NVx1NzI="
a = base64.b64decode(str2)
print(a)
c = a.decode().replace("\\u","\\u00")
print(c.encode("utf-8").decode("unicode_escape"))
3
linux下的密码破解工具john的使用
对于密码文件shadow,只需
john shadow
john shadow --show
即可暴力破解密码
查找特定文件和文件名
查找目录:find /(查找范围) -name '查找关键字' -type d
查找文件:find /(查找范围) -name 查找关键字 -print
4
python整除使用双斜杠
a = 1//2
5
python pillow库的使用,以bugku的红绿灯一题为例
使用了大佬的代码,转载在地址
from PIL import Image
im = Image.open("Traffic_Light.gif")
savepath = "D:\\CTF\\题目\\BUGKU\\misc\\gif"
try:
# tell是帧数,而seek是取当前帧数的图片。
im.save(savepath + 'light{0}.png'.format(im.tell()))
while True:
im.seek(im.tell() + 1)
im.save(savepath + 'light{0}.png'.format(im.tell()))
except:
pass
flag = ""
for i in range(1168):
image = Image.open(savepath + 'light' + str(i) + '.png')
# print image.getpixel((115,55))#输出颜色值
# print image.getpixel((115,145))#利用画图定位了红和绿的位置
if image.getpixel((115, 55)) == 251:
flag += str(1)
elif image.getpixel((115, 145)) == 186:
flag += str(0)
i = 0
res =''
while i <len(flag):
tmp = "0b"+flag[i:i+8]
tmpp = chr(int(tmp,2))
res += tmpp
i+=8
print(res)
print(len(res))