Commit Graph
178 Commits
Author SHA1 Message Date
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