Hi Rekallites,
I feel like I'm missing something.
I have a suspended Win7SP1x86 VMWare machine. The VMSS file is alongside the VMEM file in the VM's folder.
When I try and run the pslist plugin against the VMEM it fails to find a profile:
$ rekal -v -f Win7SP1x86/Win7SP1x86-9928d7af.vmem pslist
<snip>
INFO:rekall.1:Autodetected physical address space VMemAddressSpaceWARNING:rekall.1:Cache directory inaccessible. Disabling.
DEBUG:rekall.1:Will detect profile using these Detectors: nt_index,osx,pe,windows_kernel_file,rsds,ntfs,linux
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/inventory.gzDEBUG:rekall.1:Opened url
http://profiles.rekall-forensic.com/v1.0/inventory.gzWARNING:rekall.1:Inventory for repository "/home/btg/.rekall_cache" seems malformed. Are you behind a captive portal or proxy? If this is a custom repository, did you forget to create an inventory? You must use the tools/profiles/build_profile_repo.py tool with the --inventory flag.
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/nt/eprocess_index.gzDEBUG:rekall.1:Adding nt/eprocess_index to local cache.
INFO:rekall.1:Loaded profile nt/eprocess_index from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/nt/index.gzDEBUG:rekall.1:Adding nt/index to local cache.
INFO:rekall.1:Loaded profile nt/index from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/OSX/index.gzDEBUG:rekall.1:Adding OSX/index to local cache.
INFO:rekall.1:Loaded profile OSX/index from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/pe.gzDEBUG:rekall.1:Adding pe to local cache.
INFO:rekall.1:Loaded profile pe from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/ntfs.gz
DEBUG:rekall.1:Adding ntfs to local cache.
INFO:rekall.1:Loaded profile ntfs from Local Cache Directory:/home/btg/.rekall_cache
ERROR:rekall.1:No profiles match this image. Try specifying manually.
<snip>
However, if I rename the VMEM file to a RAW file, Rekall is happy:
$ rekal -v -f Win7SP1x86/Win7SP1x86-9928d7af.raw pslist
<snip>
INFO:rekall.1:Autodetected physical address space FileAddressSpaceWARNING:rekall.1:Cache directory inaccessible. Disabling.
DEBUG:rekall.1:Will detect profile using these Detectors: nt_index,osx,pe,windows_kernel_file,rsds,ntfs,linux
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/inventory.gzDEBUG:rekall.1:Opened url
http://profiles.rekall-forensic.com/v1.0/inventory.gzWARNING:rekall.1:Inventory for repository "/home/btg/.rekall_cache" seems malformed. Are you behind a captive portal or proxy? If this is a custom repository, did you forget to create an inventory? You must use the tools/profiles/build_profile_repo.py tool with the --inventory flag.
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/nt/eprocess_index.gzDEBUG:rekall.1:Adding nt/eprocess_index to local cache.
INFO:rekall.1:Loaded profile nt/eprocess_index from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/nt/index.gzDEBUG:rekall.1:Adding nt/index to local cache.
INFO:rekall.1:Loaded profile nt/index from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/OSX/index.gzDEBUG:rekall.1:Adding OSX/index to local cache.
INFO:rekall.1:Loaded profile OSX/index from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/pe.gzDEBUG:rekall.1:Adding pe to local cache.
INFO:rekall.1:Loaded profile pe from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url
https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/ntfs.gzDEBUG:rekall.1:Adding ntfs to local cache.
INFO:rekall.1:Loaded profile ntfs from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Opened url https://raw.githubusercontent.com/google/rekall-profiles/master/v1.0/nt/GUID/684DA42A30CC450F81C535B4D18944B12.gz
DEBUG:rekall.1:Adding nt/GUID/684DA42A30CC450F81C535B4D18944B12 to local cache.
INFO:rekall.1:Loaded profile nt/GUID/684DA42A30CC450F81C535B4D18944B12 from Local Cache Directory:/home/btg/.rekall_cache
DEBUG:rekall.1:Found _EPROCESS @ 0x2980640 (DTB: 0x185000)
INFO:rekall.1:Detected ntkrpamp.pdb with GUID 684DA42A30CC450F81C535B4D18944B12
DEBUG:rekall.1:Detection method rsds worked at offset 0x296903c
<snip>
In the two runs, Rekall downloads a different nt profile. In the second run, it downloads a specific GUID which works.
How come it works as a RAW, but not as a VMEM?
Why is Rekall deciding to behave differently?
Thanks!