Более постоянные способы отключения ASLR должны быть сохранены в виртуальной машине по очевидным причинам.
, чтобы проверить возможность перезаписывать обратные адреса фрейма стека и т. д., вам нужно будет скомпилировать без стековых канарейков , а для выполнения кода в стеке необходимо скомпилировать с -z execstack, сделав
$ gcc -fno-stack-protector -z execstack -o <my_program> my_code.c
Поскольку apport поддерживает интерактивную обратную связь, как обсуждалось в https://wiki.ubuntu.com/Apport/DeveloperHowTo#Custom_Invocation, казалось бы, все, что требуется, - это запустить процесс с вариантом на
Да / No Question psuedo code
def add_info (report, ui):
close_terminal = False
if ui and ui.yesno('Close Terminal?') == True:
close_terminal = True
if close_terminal == True:
# user wants terminal to close
Примечание: я не разработчик, поэтому не держите ноги за огонь, но логически это похоже на то, что разработчики могли бы сделать без особых трудностей.