Skip to content

Commit 3f7188b

Browse files
author
Ariel Ben-Yehuda
committed
add comment about objtool
1 parent badc6b0 commit 3f7188b

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

text/3855-mitigation-enforcement.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -350,12 +350,23 @@ for them.
350350

351351
This is somewhat hard to do with an external tool, since there is
352352
no way of looking at a binary and telling what mitigations its components
353-
have (for example [`hardening-check(1)`], exists, but its check for
354-
stack smashing protection only checks that at least 1 function has stack
355-
cookies, rather than checking that every interesting function has it
356-
enabled).
357-
353+
have.
354+
355+
There are howevever some external tools that do check for mitigations,
356+
but they have limitations:
357+
358+
1. [`hardening-check(1)`] exists, but its check for stack smashing protection only
359+
checks that at least 1 function has stack cookies, rather than checking that
360+
every interesting function has it enabled.
361+
2. The Linux kernel has [`objtool`], which checks for some other mitigations (for
362+
example, retpolines). It however needs to access the `.o` object files
363+
rather than to the final linked executable or shared library - which
364+
requires its user to control the linking process - and also has hardcoded
365+
limitations that make it only suitable for the Linux kernel, rather than
366+
being useful as a general-purpose tool.
367+
358368
[`hardening-check(1)`]: https://manpages.debian.org/testing/devscripts/hardening-check.1.en.html
369+
[`objtool`]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/objtool/Documentation/objtool.txt?id=5cd64d4f92683afa691a6b83dcad5adfb2165ed0
359370

360371
## .note.gnu.property
361372

0 commit comments

Comments
 (0)