1

假设我们有一个 thumb2 elf 文件,其中包含 objdump 的以下反汇编代码段:

00279ae0 <some_func>:
  279ae0: e92d 4ff0     stmdb    sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
  279ae4: 4606          mov    r6, r0
  279ae6: f8df 9338     ldr.w    r9, [pc, #824]
  279aea: f44f 7380     mov.w    r3, #256
  ....
  279af2: 44f9          add    r9, pc
  279af4: ed2d 8b02     vpush    {d8}
  279af8: f8d6 108c     ldr.w    r1, [r6, #140]

1) 如果我将第 279af2 行修改为一些非法指令,例如“ffff”,而不是在执行时,进程在运行到 ffff 时会得到一个 SIGILL/ILL_ILLOPC

2)如果我将第 279af4 行修改为非法指令 ed2d ffff,进程将直接退出,而不会收到任何信号或 kmsg 中的任何输出......我真的很想知道为什么这只发生在 NEON 指令上?在这种情况下,我期待一些错误提示,但没有...除了内核消息之外,我在哪里可以找到额外的错误提示?

非常感谢你们。

4

0 回答 0