1
我正试图通过在Linux上使用binfmt_misc来注册特定程序来运行包含幻数的二进制文件。将hexdump转换为字节序列
:name:type:offset:magic:mask:interpreter:flags
Linux内核文档提供了这个字符串的文件/ binfmt_misc的几个例子:
:i386:M::\x7fELF\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff:/bin/em86:
:i486:M::\x7fELF\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x06:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff:/bin/em86:
:DEXE:M::\x0eDEX::/usr/bin/dosexec:
:DOSWin:M::MZ::/usr/local/bin/wine:
神奇的数字
这是由echo'ing格式字符串完成我感兴趣的显示为01eb
in emacs'hexl-mode:
00000000: 0000 01eb 0000 4d8f 0000 09a0 0000 0314 ......M.........
到目前为止,我有:
:nine:M:$OFFSET:$MAGIC::/home/robb/nine/nine:
,但我不知道什么样的价值观我需要更换$OFFSET
和$MMAGIC
。
1为偏移量,因为你想指向第二个数字和01eb,这是你的魔法数字。没有? – 2011-08-01 17:52:01