欢迎光临散文网 会员登陆 & 注册

攻防世界-MISC-新手练习区:base64stego(python)

2020-08-13 23:19 作者:风二西  | 我要投稿

1.第一步是伪加密,用360压缩可无视。

python2:

# -*- coding: cp936 -*-

b64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'

with open('1.txt', 'rb') as f:

    bin_str = ''

    for line in f.readlines():

        stegb64 = ''.join(line.split())

        rowb64 = ''.join(stegb64.decode('base64').encode('base64').split())

        offset = abs(b64chars.index(stegb64.replace('=', '')[-1]) - b64chars.index(rowb64.replace('=', '')[-1]))

        equalnum = stegb64.count('=')  # no equalnum no offset

        if equalnum:

            bin_str += bin(offset)[2:].zfill(equalnum * 2)

        print ''.join([chr(int(bin_str[i:i + 8], 2)) for i in xrange(0, len(bin_str), 8)])  # 8位一组


攻防世界-MISC-新手练习区:base64stego(python)的评论 (共 条)

分享到微博请遵守国家法律