Closed GoogleCodeExporter closed 9 years ago
Definitely, this is actually on the roadmap for 2.2:
http://code.google.com/p/volatility/wiki/VolatilityRoadmap#Volatility_2.2_(Offic
ial_Multi-OS_Support)
The "Pool scanner updates" (probably could have been more specific there) is
intended to allow scanning for multiple objects with a single pass through the
address space. You can check out a preview/prototype below (see ScannerGroup
and DiscontigScannerGroup):
http://code.google.com/p/volatility/source/browse/branches/scudette/volatility/s
can.py
Original comment by michael.hale@gmail.com
on 25 Jul 2012 at 11:17
Awesome! Glad to hear there is already some code for that, I'll be happy to
test it. As scudette branch is a rewrite, I noticed the command interface has
changed from the existing significantly. Any way to define an address space
here to load (-l A URN location from which to load an address space)?
Original comment by tamas.k....@gmail.com
on 26 Jul 2012 at 6:28
Hi tamas,
I am trying to keep the command line args as close as possible to 2.x when it makes sense (There is still some work to do with that). You can load an image using -f filename (since the -l command line option was removed). Sorry that documentation is a bit sketchy at the moment.
http://code.google.com/p/volatility/wiki/ScudettesBranch is a start but its a
bit old.
Original comment by scude...@gmail.com
on 26 Jul 2012 at 6:49
[deleted comment]
I am not sure I understand. How is libvmi access provided? Is there a
special address space you are using? I can not see anything specific
in
http://code.google.com/p/volatility/source/browse/#svn%2Ftrunk%2Fvolatility%2Fpl
ugins%2Faddrspaces
Original comment by scude...@gmail.com
on 26 Jul 2012 at 6:15
Yes, it's an addresspace provided by libvmi:
https://code.google.com/p/vmitools/source/browse/tools/pyvmi/pyvmiaddressspace.p
y
It actually turns out to be possible to map a running VM's memory to a file
through FUSE, so I should be able to use -f after all! It's a bit ugly that
way, but if it works, it works.. =)
Original comment by tamas.k....@gmail.com
on 26 Jul 2012 at 7:05
Could you provide a brief description on how to use the ScannerGroup
functionality? I see that I need to define a dictionary of BaseScanners and
pass that to the ScannerGroup but my python skills are a bit rusty. Thanks!
Original comment by tamas.k....@gmail.com
on 26 Jul 2012 at 8:25
Hi Tamas, there's an example in the callbacks.py file:
http://code.google.com/p/volatility/source/browse/branches/scudette/volatility/p
lugins/windows/malware/callbacks.py#535
Original comment by michael.hale@gmail.com
on 27 Jul 2012 at 4:06
Please also resync to the latest since it got broken when I refactored
the pool scanners to yield the pool header itself rather than the
offsets. (This is required since pools are handled differently on
windows 8).
Michael.
Original comment by scude...@gmail.com
on 27 Jul 2012 at 4:23
Awesome, thanks, I'll give it a spin!
Original comment by tamas.k....@gmail.com
on 27 Jul 2012 at 5:23
Original comment by michael.hale@gmail.com
on 9 Aug 2012 at 4:58
Original comment by michael.hale@gmail.com
on 26 Aug 2012 at 5:33
An additional request popped up in a conversation with my team that would also
help us out a lot when using live pool scanning with Volatility. With Xen 4.2
and LibVMI we can detect page changes in the memory of a live VM as it occurs,
therefore if it were possible to restrict the scope of a pool scan to a
specific memory region we could speed up our intrusion detection significantly
by restricting the scope of the scan to that page +/- some buffer in case a
datastructure is spanned across multiple pages. Is that something that's
currently possible or could be added in the future?
Original comment by tamas.k....@gmail.com
on 8 Oct 2012 at 3:15
As you can see the prototype of the scan() method takes an offset and a maxlen:
https://code.google.com/p/volatility/source/browse/branches/scudette/volatility/
scan.py#307
This API is also the same with the current 2.x version of volatility as well.
So you would just call scan() with the offset of the page that changed and the
length you want to scan. Is this what you mean?
Original comment by scude...@gmail.com
on 8 Oct 2012 at 4:07
Yes, thanks! =)
Original comment by tamas.k....@gmail.com
on 8 Oct 2012 at 4:09
Hey Tamas, sorry but this just isn't going to make it in time for 2.3. But the
next release after that, 3.0, should be able to handle this for sure.
Original comment by michael.hale@gmail.com
on 1 Feb 2013 at 4:30
Just doing a little consolidation...I'm going to merge this with issue 310
Original comment by michael.hale@gmail.com
on 9 Apr 2013 at 7:32
Original issue reported on code.google.com by
tamas.k....@gmail.com
on 25 Jul 2012 at 10:03