Mike Auty
671f65ed56
Centralize the ISF locating code.
...
This might benefit from a recache of the linux banners, although it
should continue to work no recache is performed.
We're now in a position to add support for loading symbols directly from
zip files by altering the ResourceAccessor and adding code to the
symbol finder.
2017-11-05 15:18:20 +00:00
Mike Auty
fd582f62e2
Fix a potential exception when earlier automagics don't succeed.
2017-11-04 18:54:52 +00:00
Mike Auty
9d7d547667
Minor linting.
2017-11-04 18:45:18 +00:00
Mike Auty
a4b4a8eed3
Improve the error handling with automagics.
2017-11-04 18:45:08 +00:00
Mike Auty
8166b0cc96
Add better logging around the stacker.
2017-11-04 17:13:01 +00:00
Mike Auty
d9d67efa3a
Add in the capability to stash linux_banners.
...
Since the stacker and Linux automagic will always be different objects
(even if they're the same class), and we don't want to add OS specific
code to the stacker, this is the simplest way of allowing the Linux
symbol automagic to get information from the dtb finding stacker.
2017-11-04 17:09:59 +00:00
Mike Auty
dab5caf104
Paths from the banner cache are already URIs, so we don't need to reconvert them.
2017-11-04 15:52:02 +00:00
Mike Auty
01043b9f3e
Rework isf_filename to isf_url since we can load it from a remote location if required.
2017-11-04 15:47:52 +00:00
Mike Auty
4b7543f2f4
Unify the resource opening.
2017-11-02 21:46:39 +00:00
Mike Auty
dbc73df8f2
Make sure we support windows filenames
...
Consider refactoring out the various URL openning code into
one that just returns the open file handle. This would require changing
the config option of "filename" to "location" and rejigging a few other
bits elsewhere, but would centralize and make it more managable.
2017-11-02 11:56:03 +00:00
Mike Auty
624289b94d
Drop out the NlpDtbfinder from the linux plugins, since the LayerStacker should sort it.
2017-10-08 20:24:24 +01:00
Mike Auty
ae9e33292f
Add in restrictions on automagics should be used for each type of plugin.
2017-10-08 20:22:10 +01:00
Mike Auty
06767bd44c
Ensure we get a warning of some kind when a bad scheme is provided.
2017-10-05 00:13:45 +01:00
Mike Auty
7db811fa09
Move nlpdtbscanner's stack order lower down since it isn't accurate for linux (and was tried before it previously).
2017-09-05 11:00:51 +01:00
Mike Auty
946fbd5e61
Use the convenience function built for exactly this circumstance.
2017-09-04 01:26:40 +01:00
Mike Auty
710043f508
Fix up the ASLR finding to compensate for older task_struct structures.
2017-09-03 23:16:22 +01:00
Mike Auty
a4bb32d797
Rework the linux automagic to include utility functions for finding the ASLR and KASLR shifts.
2017-09-03 21:51:11 +01:00
Mike Auty
6265fc4e2d
Catch errors if the stacker didn't manage to stack correctly.
2017-08-31 01:04:01 +01:00
Mike Auty
e09ad9b884
Make the automagic progress a little easier to understand.
2017-08-31 00:23:41 +01:00
Mike Auty
f7f1c1d5e0
Raise the right kind of exception in Intermediate Format SymbolTables.
2017-08-11 08:49:49 +01:00
Mike Auty
c6724a538a
Initial support for compressed files.
2017-08-11 01:12:50 +01:00
Mike Auty
efdd961313
Prevent exceptions if there are no linux symboltables.
2017-08-11 00:05:50 +01:00
Mike Auty
a008686c20
Reduce the logging level of the Pdbscan automagic.
2017-08-10 23:58:34 +01:00
Mike Auty
9c3ad5588a
Improve the error handling the LinuxSymbolCache.
2017-08-09 18:06:35 +01:00
Mike Auty
9c8add5d5c
Ensure the dtb is not uninitialized.
2017-07-30 21:10:12 +01:00
Mike Auty
b7c8c8a058
Improve the docstrings for automagic.
2017-07-29 12:53:35 +01:00
Mike Auty
d34b344507
Ensure linux doesn't bog down windows searching.
2017-07-20 19:54:10 +01:00
Mike Auty
0b6e50daba
Convert pdbscanner to a generator.
2017-07-20 17:47:21 +01:00
Mike Auty
b8fe2a96be
Avoid a variable-reuse issue.
2017-07-20 11:58:16 +01:00
Mike Auty
f8767af1b8
Catch the most general InvalidAddressException in case it's thrown by a lower layer.
2017-07-20 00:58:07 +01:00
Mike Auty
8087f86bcf
Remove debugging statements.
2017-07-20 00:51:03 +01:00
Mike Auty
fbd70438a0
Slightly more error checking.
2017-07-20 00:49:56 +01:00
Mike Auty
03cdd91fbf
Add in the capability to merge two config dicts (so that manually set settings aren't overwritten).
2017-07-20 00:49:36 +01:00
Mike Auty
e2450a0458
Add in more debugging information.
2017-07-19 17:52:19 +01:00
Mike Auty
edcfda0688
Change the stacking order, to ensure Lime gets loaded before linux.
2017-07-17 22:51:42 +01:00
Mike Auty
d2eef99e37
Don't try making URIs into URIs.
2017-07-17 21:52:01 +01:00
Mike Auty
9f3470a8e9
Speed up linux caching by allowing lack of validation. This should NOT be enabled without knowing exactly what you're doing.
2017-07-17 21:47:31 +01:00
Mike Auty
d49e956546
Improve file URL handling.
2017-07-17 18:33:45 +01:00
Mike Auty
f2bfd39c57
Add in more debugging information.
2017-07-17 17:17:46 +01:00
Mike Auty
23ccb4d4c8
Fix the real root cause, files not containing a banner.
2017-07-17 17:11:05 +01:00
Mike Auty
9b9792f3e2
Ensure we save the results of checking for non-existant files.
2017-07-17 17:06:52 +01:00
Mike Auty
5ca4f8e788
Use a central bit of code to do the load and unload of cached linux banners.
2017-07-17 16:38:25 +01:00
Mike Auty
f6a55876d0
Add in check to avoid unsightly exceptions.
2017-07-17 16:19:36 +01:00
Mike Auty
8b95480e88
Write the cached linuxbanners after each one so that cancellations don't require re-runs.
2017-07-16 22:59:01 +01:00
Mike Auty
b68932a7bc
Improve the linux DTB finding code.
2017-07-16 18:05:19 +01:00
Mike Auty
d0b1177c31
Add in the linux signature scanner.
2017-07-16 18:05:08 +01:00
Mike Auty
b099822ce2
Refactor requirement finding recursion since we use it a lot.
2017-07-16 18:04:22 +01:00
Mike Auty
a5e8d98a9c
Refactor the location of the linux banner cache.
2017-07-13 01:31:19 +01:00
Mike Auty
2453b7f180
Add a little information to the log to see when the cache is being built.
2017-07-10 01:24:52 +01:00
Mike Auty
d1cdf805df
Update the comments slightly.
2017-07-10 01:20:01 +01:00