Fix #18544: Support x64 in enum_chrome #18558
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The
enum_chrome
module's#decrypt_data
method was crashing on 64-bit sessions due to an incorrect railgun definition for theLocalAlloc
function.LocalAlloc
was defined as having a return value ofDWORD
when it should infact be HANDLE. When it was defined asDWORD
, the 64-bit value would be truncated to 32-bits causing the write operation to trigger a memory access violation which inturn cause the session to crash.Fixed the issue by correcting the definition of
LocalAlloc
.#decrypt_data Refactoring
I also made the following changes to #decrypt_data since I was looking at it so closely:
memsize
mem
andaddr
are always free'edVerification
msfconsole
post/windows/gather/enum_chrome
mdoule and see that the session does not crash