Add check for executable stack/heap when rating Linux exploitability.
This CL also consequentially adds a public method to get the number of mappings in a Linux minidump. R=ivanpe@chromium.org Review URL: https://codereview.chromium.org/1291603002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1488 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
@@ -51,17 +51,21 @@ class ExploitabilityLinux : public Exploitability {
|
||||
virtual ExploitabilityRating CheckPlatformExploitability();
|
||||
|
||||
private:
|
||||
// This method takes the address of the instruction pointer and returns
|
||||
// Takes the address of the instruction pointer and returns
|
||||
// whether the instruction pointer lies in a valid instruction region.
|
||||
bool InstructionPointerInCode(uint64_t instruction_ptr);
|
||||
|
||||
// This method checks the exception that triggered the creation of the
|
||||
// Checks the exception that triggered the creation of the
|
||||
// minidump and reports whether the exception suggests no exploitability.
|
||||
bool BenignCrashTrigger(const MDRawExceptionStream *raw_exception_stream);
|
||||
|
||||
// Checks if the stack pointer points to a memory mapping that is not
|
||||
// labelled as the stack.
|
||||
bool StackPointerOffStack(uint64_t stack_ptr);
|
||||
|
||||
// Checks if the stack or heap are marked executable according
|
||||
// to the memory mappings.
|
||||
bool ExecutableStackOrHeap();
|
||||
};
|
||||
|
||||
} // namespace google_breakpad
|
||||
|
||||
Reference in New Issue
Block a user