从hex到shellcode格式的python

时间:2017-09-19 14:48:42

标签: python format hex shellcode

我尝试将十六进制字符串转换为shellcode格式 例如:我有一个像aabbccddeeff11223344这样的十六进制字符串文件 我想通过python转换它以显示这种确切的格式: "\xaa\xbb\xcc\xdd\xee\xff\x11\x22\x33\x44"包括引号""

我的代码是:

with open("file","r") as f:
    a = f.read()
    b = "\\x".join(a[i:i+2] for i in range(0, len(a), 2))
    print b

所以我的输出是aa\xbb\xcc\xdd\xee\xff\x11\x22\x33\x44\x

我知道我可以通过sed命令来完成它,但我想知道如何通过python实现这一目标。

1 个答案:

答案 0 :(得分:0)

binascii标准模块将在此处提供帮助:

import binascii

print repr(binascii.unhexlify("aabbccddeeff11223344"))

输出:

>>> print repr(binascii.unhexlify("aabbccddeeff11223344"))
'\xaa\xbb\xcc\xdd\xee\xff\x11"3D'