Mike Auty
23fd704027
Add in the kernel offset recursion code.
2016-12-04 01:00:37 +00:00
Mike Auty
9a3402ccff
Fix the incorrect signature offset returned.
2016-12-03 21:39:04 +00:00
Mike Auty
e4e563ead0
Fix up the array slicing code.
2016-12-03 00:23:00 +00:00
Mike Auty
70815b0837
Shift the location of the pdbscan prefix/suffix values.
2016-12-02 21:44:23 +00:00
Mike Auty
ed552d20e8
Add in support for lzma compressed json data.
2016-12-02 01:34:07 +00:00
Mike Auty
c86f0ddef4
Add in a very rudimentary kernel PDB finding plugin that identifies and automatically loads the appropriate kernel for the image.
2016-11-27 23:40:19 +00:00
Mike Auty
b2c3c76954
Don't forget the fixes that still need to happen.
2016-11-19 23:41:35 +00:00
Mike Auty
72259008f3
Use the physical layer and improve the output.
...
The physical layer will miss certain patterns, but is an order of
magnitude faster at scanning. The main amount of time spent in scanning
Intel spaces is counting through every page in the address space (32, 40
or 64 bits), not the actual scanning. There's no real way around this
if you want to ensure you get every chunk of virtual memory. Since the
scanner could be stopped after its first hit, this might still be
preferable, but should not be the default (particularly for an automagic
scan).
2016-11-19 23:36:48 +00:00
Mike Auty
d2fcc1d4b0
Add in optimization technique to reduce the number of pages that are scanned more than once.
2016-11-19 23:34:08 +00:00
Mike Auty
c9abd290ec
Remove an unnecessary test from the intel scan loop.
2016-11-19 18:05:41 +00:00
Mike Auty
38b1c61acc
Remove debugging values from the pdb scanner.
2016-11-18 17:18:50 +00:00
Mike Auty
3c181e940e
Tidy up to use a single method for reading from the context.
2016-11-18 17:18:30 +00:00
Mike Auty
f707c0c4e9
Add in first shot at an 'efficient' virtual memory scanner. Uses page misses to calculate skipping distances.
2016-11-18 17:14:48 +00:00
Mike Auty
096e2f4610
Make the paged exceptions more useful at knowing how big an area is unavailable.
2016-11-18 11:40:48 +00:00
Mike Auty
f688af529b
Initial commit of pdb kernel scanning automagic code.
2016-11-18 11:39:55 +00:00
Mike Auty
282eaa7f00
Improve/remove unnecessary imports.
2016-11-07 12:26:06 +00:00
Mike Auty
62fb752c82
Add in validation caching for JSON schema use and only record success when actual validation occurs.
2016-11-07 01:17:08 +00:00
Mike Auty
96a7a56edd
Commit the initial JSON schema for the intermediate format.
2016-11-06 01:48:01 +00:00
Mike Auty
7b12483719
Change version to format and move the delegate function factory outside of the class.
2016-11-06 01:33:51 +00:00
Mike Auty
f0c6b0d1a4
Merge branch 'master' of github.com:volatilityfoundation/volatility3
2016-11-04 18:09:04 +00:00
Mike Auty
2dba1bbddd
Update wording to clarify the different between package version and interface version.
2016-11-04 17:56:58 +00:00
Mike Auty
11d60b9f7f
Update the accepted format version.
2016-11-03 01:03:38 +00:00
Mike Auty
28fdbbe348
Refactor the pdb names, to make the class more generic.
2016-11-03 00:53:08 +00:00
Mike Auty
df2172754c
Refactor the pdbscanning code so it doesn't sneak into the library accidentally.
2016-11-01 23:32:12 +00:00
Mike Auty
d6039fb899
Initial port of npetroni's pdbscanner (with bugfix for multiple RDRS entries in a single scan chunk).
2016-11-01 02:06:08 +00:00
Mike Auty
d57733d530
Add in support for format versioning.
2016-11-01 01:33:44 +00:00
Mike Auty
dc375024b2
Set the version back, given we're early enough to do so.
2016-11-01 00:41:20 +00:00
Mike Auty
667014a1fd
Attempt to standardize error message display.
2016-10-30 17:51:45 +00:00
Mike Auty
f771de3703
Tidy up error messages.
2016-10-30 17:07:48 +00:00
Mike Auty
d1b58143fe
Add in UnresolvedTemplate type.
...
This template type allows objects that have not been able to be resolved
to exist within the symbol system. It emits a debug message on creation
so that intermediate format developers can identify potential issues,
but does not raise an exception so as to allow partial tables to be
used.
If the UnresolvedTemplate is called (to create an object) before the
symbol has been added to the symbolspace, it will fail with a
SymbolError (as thrown by the individual SymbolTable). For this reason,
the class has been made private to the SymbolSpace class to prevent
unexpected use.
2016-10-30 16:54:12 +00:00
Mike Auty
287baeb03a
Add in rudimentary symbol support to the intermediate format.
2016-10-26 01:49:52 +01:00
Mike Auty
6f1bdcb6cb
Refactor symbol.offset to symbol.address.
2016-10-26 01:42:37 +01:00
Mike Auty
6b405383c4
Refactor targets to subtypes.
2016-10-26 01:24:58 +01:00
Mike Auty
50f5a5ddb7
Fix up broken vtypes that looks like it might never have worked.
2016-10-26 01:16:25 +01:00
Mike Auty
5f0ceff4d2
Fix up the broken vtypes conversion by translating between the names.
2016-10-26 01:16:07 +01:00
Mike Auty
0b447b6958
Initial implementation of the Intermediate Format, breaks the vtypes format and needs a lot of tidying.
2016-10-26 01:09:29 +01:00
Mike Auty
d232be2f6e
Try to update the generic dtb finder to rule out false positives.
2016-10-01 22:13:42 +01:00
Mike Auty
1a83470993
Convert dtbfinder to a standalone app.
...
This is in development so that it's clearly not production code
(and should not expect to be supported as such).
2016-09-25 19:33:04 +01:00
Mike Auty
824ad5b143
Add in the LimeStacker, and fix the lack of appropriate information on LimeLayer creation.
2016-08-26 08:35:09 +01:00
Mike Auty
37dcbb88b0
Rework lime to use the new layer constructor, and factor out the header check.
2016-08-26 08:30:22 +01:00
Mike Auty
fbe3682592
Allow stack functions to return None as a failure response.
2016-08-26 08:29:45 +01:00
Mike Auty
32bdeafa8a
Improve the stacker to append the generated stack configuration into the original context.
2016-08-24 01:31:45 +01:00
Mike Auty
721d5ade3f
Give the LowestLayer a proper name in the interim configs, and ensure it's in the stack.
2016-08-24 01:30:32 +01:00
Mike Auty
04b760ee3e
Increase the priority so this is always run first, and we're going to use the requirement variable.
2016-08-24 01:29:53 +01:00
Mike Auty
9959697ba5
Move where the rescursion into TranslationLayers happens.
2016-08-24 01:29:11 +01:00
Mike Auty
f3bc1d30b3
Refactor the build_configuration in Layers so that even data layers get their requirements populated.
2016-08-24 01:14:34 +01:00
Mike Auty
4d7701be66
Fix the config printer to sort the values.
2016-08-24 01:13:38 +01:00
Mike Auty
6b47b992a7
Ensure splice requirement perpetuates down the HierarchicalDict.
2016-08-24 01:13:20 +01:00
Mike Auty
341ae950b8
Ensure configurations do not include any generated values (ie TranslationLayer/SymbolLayer names)
2016-08-24 01:12:43 +01:00
Mike Auty
01616af655
Remove comment, it's already been converted.
2016-08-24 01:11:46 +01:00