diff options
author | Liu.andrew.x@gmail.com <Liu.andrew.x@gmail.com> | 2015-06-30 20:34:39 +0000 |
---|---|---|
committer | Liu.andrew.x@gmail.com <Liu.andrew.x@gmail.com> | 2015-06-30 20:34:39 +0000 |
commit | 12213a5e15b60f0027fb2271908f4d52494a617b (patch) | |
tree | 6e15d03a81be492f74b69d95058337aee4383112 /src/processor/exploitability_linux.h | |
parent | This CL adds support for ARM and ARM64 architectures when calculating (diff) | |
download | breakpad-12213a5e15b60f0027fb2271908f4d52494a617b.tar.xz |
Checking for benign exceptions that trigger a minidump.
If the exception reponsible for the crash is benign, such as a floating point
exception, we can rule out the possibility that the code is exploitable. This
CL checks for such exceptions and marks the dump as not exploitable if such an
exception is found.
R=ivanpe@chromium.org
Review URL: https://codereview.chromium.org/1212383004
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1467 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/processor/exploitability_linux.h')
-rw-r--r-- | src/processor/exploitability_linux.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/processor/exploitability_linux.h b/src/processor/exploitability_linux.h index 95607602..42f9bc52 100644 --- a/src/processor/exploitability_linux.h +++ b/src/processor/exploitability_linux.h @@ -53,6 +53,10 @@ class ExploitabilityLinux : public Exploitability { // This method 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 + // minidump and reports whether the exception suggests no exploitability. + bool BenignCrashTrigger(const MDRawExceptionStream *raw_exception_stream); }; } // namespace google_breakpad |