0044-gdb-Restrict-GDB-access-when-locked-down.patch 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. From 508270838998f151a82e9c13e7cb8a470a2dc23d Mon Sep 17 00:00:00 2001
  2. From: Javier Martinez Canillas <javierm@redhat.com>
  3. Date: Wed, 24 Feb 2021 15:03:26 +0100
  4. Subject: [PATCH] gdb: Restrict GDB access when locked down
  5. The gdbstub* commands allow to start and control a GDB stub running on
  6. local host that can be used to connect from a remote debugger. Restrict
  7. this functionality when the GRUB is locked down.
  8. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
  9. Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
  10. Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
  11. ---
  12. grub-core/gdb/gdb.c | 32 ++++++++++++++++++--------------
  13. 1 file changed, 18 insertions(+), 14 deletions(-)
  14. diff --git a/grub-core/gdb/gdb.c b/grub-core/gdb/gdb.c
  15. index 847a1e1..1818cb6 100644
  16. --- a/grub-core/gdb/gdb.c
  17. +++ b/grub-core/gdb/gdb.c
  18. @@ -75,20 +75,24 @@ static grub_command_t cmd, cmd_stop, cmd_break;
  19. GRUB_MOD_INIT (gdb)
  20. {
  21. grub_gdb_idtinit ();
  22. - cmd = grub_register_command ("gdbstub", grub_cmd_gdbstub,
  23. - N_("PORT"),
  24. - /* TRANSLATORS: GDB stub is a small part of
  25. - GDB functionality running on local host
  26. - which allows remote debugger to
  27. - connect to it. */
  28. - N_("Start GDB stub on given port"));
  29. - cmd_break = grub_register_command ("gdbstub_break", grub_cmd_gdb_break,
  30. - /* TRANSLATORS: this refers to triggering
  31. - a breakpoint so that the user will land
  32. - into GDB. */
  33. - 0, N_("Break into GDB"));
  34. - cmd_stop = grub_register_command ("gdbstub_stop", grub_cmd_gdbstop,
  35. - 0, N_("Stop GDB stub"));
  36. + cmd = grub_register_command_lockdown ("gdbstub", grub_cmd_gdbstub,
  37. + N_("PORT"),
  38. + /*
  39. + * TRANSLATORS: GDB stub is a small part of
  40. + * GDB functionality running on local host
  41. + * which allows remote debugger to
  42. + * connect to it.
  43. + */
  44. + N_("Start GDB stub on given port"));
  45. + cmd_break = grub_register_command_lockdown ("gdbstub_break", grub_cmd_gdb_break,
  46. + /*
  47. + * TRANSLATORS: this refers to triggering
  48. + * a breakpoint so that the user will land
  49. + * into GDB.
  50. + */
  51. + 0, N_("Break into GDB"));
  52. + cmd_stop = grub_register_command_lockdown ("gdbstub_stop", grub_cmd_gdbstop,
  53. + 0, N_("Stop GDB stub"));
  54. }
  55. GRUB_MOD_FINI (gdb)
  56. --
  57. 2.14.2