mirror of
https://git.suyu.dev/suyu/breakpad.git
synced 2025-12-26 01:05:07 +01:00
Add check for Linux minidump ending on bad write for exploitability rating.
If a crash occurred as a result to a write to unwritable memory, it is reason to suggest exploitability. The processor checks for a bad write by disassembling the command that caused the crash by piping the raw bytes near the instruction pointer through objdump. This allows the processor to see if the instruction that caused the crash is a write to memory and where the target of the address is located. R=ivanpe@chromium.org Review URL: https://codereview.chromium.org/1273823004 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1497 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
parent
ee2d76fe90
commit
f073540795
13 changed files with 584 additions and 8 deletions
|
|
@ -58,6 +58,13 @@ ExploitabilityRating Exploitability::CheckExploitability() {
|
|||
Exploitability *Exploitability::ExploitabilityForPlatform(
|
||||
Minidump *dump,
|
||||
ProcessState *process_state) {
|
||||
return ExploitabilityForPlatform(dump, process_state, false);
|
||||
}
|
||||
|
||||
Exploitability *Exploitability::ExploitabilityForPlatform(
|
||||
Minidump *dump,
|
||||
ProcessState *process_state,
|
||||
bool enable_objdump) {
|
||||
Exploitability *platform_exploitability = NULL;
|
||||
MinidumpSystemInfo *minidump_system_info = dump->GetSystemInfo();
|
||||
if (!minidump_system_info)
|
||||
|
|
@ -75,7 +82,9 @@ Exploitability *Exploitability::ExploitabilityForPlatform(
|
|||
break;
|
||||
}
|
||||
case MD_OS_LINUX: {
|
||||
platform_exploitability = new ExploitabilityLinux(dump, process_state);
|
||||
platform_exploitability = new ExploitabilityLinux(dump,
|
||||
process_state,
|
||||
enable_objdump);
|
||||
break;
|
||||
}
|
||||
case MD_OS_MAC_OS_X:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue