Kconfig (f136e090c73ed2ed568dcd013c8e51ed4693a279) | Kconfig (313dd1b629219db50cad532dba6a3b3b22ffe622) |
---|---|
1# 2# General architecture dependent options 3# 4 5config CRASH_CORE 6 bool 7 8config KEXEC_CORE --- 411 unchanged lines hidden (view full) --- 420 This plugin was ported from grsecurity/PaX. More information at: 421 * https://grsecurity.net/ 422 * https://pax.grsecurity.net/ 423 424config GCC_PLUGIN_STRUCTLEAK 425 bool "Force initialization of variables containing userspace addresses" 426 depends on GCC_PLUGINS 427 help | 1# 2# General architecture dependent options 3# 4 5config CRASH_CORE 6 bool 7 8config KEXEC_CORE --- 411 unchanged lines hidden (view full) --- 420 This plugin was ported from grsecurity/PaX. More information at: 421 * https://grsecurity.net/ 422 * https://pax.grsecurity.net/ 423 424config GCC_PLUGIN_STRUCTLEAK 425 bool "Force initialization of variables containing userspace addresses" 426 depends on GCC_PLUGINS 427 help |
428 This plugin zero-initializes any structures containing a | 428 This plugin zero-initializes any structures that containing a |
429 __user attribute. This can prevent some classes of information 430 exposures. 431 432 This plugin was ported from grsecurity/PaX. More information at: 433 * https://grsecurity.net/ 434 * https://pax.grsecurity.net/ 435 436config GCC_PLUGIN_STRUCTLEAK_VERBOSE 437 bool "Report forcefully initialized variables" 438 depends on GCC_PLUGIN_STRUCTLEAK 439 depends on !COMPILE_TEST 440 help 441 This option will cause a warning to be printed each time the 442 structleak plugin finds a variable it thinks needs to be 443 initialized. Since not all existing initializers are detected 444 by the plugin, this can produce false positive warnings. 445 | 429 __user attribute. This can prevent some classes of information 430 exposures. 431 432 This plugin was ported from grsecurity/PaX. More information at: 433 * https://grsecurity.net/ 434 * https://pax.grsecurity.net/ 435 436config GCC_PLUGIN_STRUCTLEAK_VERBOSE 437 bool "Report forcefully initialized variables" 438 depends on GCC_PLUGIN_STRUCTLEAK 439 depends on !COMPILE_TEST 440 help 441 This option will cause a warning to be printed each time the 442 structleak plugin finds a variable it thinks needs to be 443 initialized. Since not all existing initializers are detected 444 by the plugin, this can produce false positive warnings. 445 |
446config GCC_PLUGIN_RANDSTRUCT 447 bool "Randomize layout of sensitive kernel structures" 448 depends on GCC_PLUGINS 449 select MODVERSIONS if MODULES 450 help 451 If you say Y here, the layouts of structures explicitly 452 marked by __randomize_layout will be randomized at 453 compile-time. This can introduce the requirement of an 454 additional information exposure vulnerability for exploits 455 targeting these structure types. 456 457 Enabling this feature will introduce some performance impact, 458 slightly increase memory usage, and prevent the use of forensic 459 tools like Volatility against the system (unless the kernel 460 source tree isn't cleaned after kernel installation). 461 462 The seed used for compilation is located at 463 scripts/gcc-plgins/randomize_layout_seed.h. It remains after 464 a make clean to allow for external modules to be compiled with 465 the existing seed and will be removed by a make mrproper or 466 make distclean. 467 468 Note that the implementation requires gcc 4.7 or newer. 469 470 This plugin was ported from grsecurity/PaX. More information at: 471 * https://grsecurity.net/ 472 * https://pax.grsecurity.net/ 473 474config GCC_PLUGIN_RANDSTRUCT_PERFORMANCE 475 bool "Use cacheline-aware structure randomization" 476 depends on GCC_PLUGIN_RANDSTRUCT 477 depends on !COMPILE_TEST 478 help 479 If you say Y here, the RANDSTRUCT randomization will make a 480 best effort at restricting randomization to cacheline-sized 481 groups of elements. It will further not randomize bitfields 482 in structures. This reduces the performance hit of RANDSTRUCT 483 at the cost of weakened randomization. 484 |
|
446config HAVE_CC_STACKPROTECTOR 447 bool 448 help 449 An arch should select this symbol if: 450 - its compiler supports the -fstack-protector option 451 - it has implemented a stack canary (e.g. __stack_chk_guard) 452 453config CC_STACKPROTECTOR --- 417 unchanged lines hidden --- | 485config HAVE_CC_STACKPROTECTOR 486 bool 487 help 488 An arch should select this symbol if: 489 - its compiler supports the -fstack-protector option 490 - it has implemented a stack canary (e.g. __stack_chk_guard) 491 492config CC_STACKPROTECTOR --- 417 unchanged lines hidden --- |