0x01 工具介绍
LovelyMem是一款基于 MemProcFS、Volatility2 和 Volatility3 的内存取证工具,旨在为数字取证和安全分析人员提供便捷、高效的内存分析解决方案。与传统的 VolatilityPro 等工具相比,LovelyMem 提供了更快速的取证速度和更易用的功能界面。它集成了多个常见的内存分析工具,用户可以通过简单的配置和操作,迅速进行内存数据的取证和分析。此外,LovelyMem 还提供了插件扩展支持,便于开发者定制和增加更多功能。
一款基于 MemProcFS、Volatility2、Volatility3 的快捷内存取证工具。
区别于 VolatilityPro,LovelyMem 提供了更快的取证速度和更便捷的功能。
视频展示:https://www.bilibili.com/video/BV1z912YpECB
下载地址在末尾
0x02 功能简介
工具特点
- 工具集成:集成了 MemProcFS、Volatility2 和 Volatility3 等多种内存取证工具,用户无需分别配置各个工具,便能直接使用。
- 快速检查:提供快速访问常用取证功能,使用户能够快速对内存进行分析和诊断,减少手动操作时间。
- 任务编排:支持创建和执行自定义的取证任务流程,便于用户根据需求制定分析计划和工作流。
- 报告编辑器:内置报告编辑器,用户可以方便地生成和编辑内存取证报告,方便后续的数据整理和分享。
- AI助手:内置 AI 辅助分析功能,可以帮助用户分析复杂的内存数据,提供智能化的分析支持。
- 配置设置:提供图形化界面配置工具路径、LLM 设置和代理设置,用户可以根据自己的需求轻松调整配置。
- 插件扩展:支持插件开发,用户可以根据需求添加新的功能或修改现有功能,插件支持解压文件等操作,提升工具的灵活性和扩展性。
- Windows 内存取证支持:特别适用于 Windows 系统的内存取证任务,能够高效处理相关数据和信息。
界面展示
0x03更新说明
🦪v0.93.5a版本更新
修复
线程问题版本更新
更新内容:
新增
新增拖入功能(
)新增优化更方便的字符串搜索(
)新增按钮右键参数执行
新增区域各按钮搜索功能
新增支持vol2Linux取证,需要手动导入profile
新增10个主题
修改
修改了标签页的位置,改为了侧边
修复
修复requirements.txt中的错误和缺少的包( )
修复vol2json转csv中可能会导致一个编码错误(
)
0x04 使用介绍
具体准备
根据 config
文件夹下的 base_config.yaml
自助配置以下内容,或者直接在软件中通过 "高级功能" 下的 "设置" 按钮进行图形化配置。
tools:
memprocfs:
path: "../Tools/MemProcFS/MemProcFS.exe"
volatility2:
path: "../Tools/volatility2/vol.exe"
volatility2_python:
path: "../Tools/volatility2_python/vol.py"
volatility3:
path: "../Tools/volatility3/vol.py"
volatility3_symbols:
path: "../Tools/volatility3/symbols"
gimp:
path: "../Tools/gimp/bin/gimp-console-2.10.exe"
volatility2_plugin:
path: "../Tools/volatility2_plugin"
base_tools:
python310:
path: "../Tools/python3/python.exe"
python27:
path: "../Tools/python27/python27.exe"
strings:
path: "../Tools/other/strings.exe"
other_tools:
RegistryExplorer:
path: "../Tools/RegistryExplorer/RegistryExplorer.exe"
EvtxECmd:
path: "../Tools/EvtxECmd/EvtxECmd.exe"
运行
配置好相关内容后,运行:
python launcher.py
插件开发
下面是一个解压文件的插件示例,其他插件示例可参考 extensions
文件夹。
import zipfile
import os
# 插件信息字典,包含插件的基本信息
plugin_info = {
"title": "解压文件", # 插件标题
"description": "解压ZIP、RAR等压缩文件", # 插件描述
"usage": "选择一个压缩文件,然后点击此插件", # 使用说明
"category": "文件操作" # 插件类别
}
def run(file_path):
"""
插件的主要执行函数
参数:
file_path (str): 要处理的文件的路径
返回:
None
"""
# 检查文件是否存在
if not os.path.exists(file_path):
print(f"错误: 文件 {file_path} 不存在")
return
# 获取文件扩展名
_, file_extension = os.path.splitext(file_path)
# 根据文件扩展名选择相应的解压方法
if file_extension.lower() == '.zip':
extract_zip(file_path)
else:
print(f"不支持的文件类型: {file_extension}")
def extract_zip(file_path):
"""
解压ZIP文件
参数:
file_path (str): ZIP文件的路径,即文件槽内文件路径
返回:
None
"""
try:
# 创建输出目录
output_dir = os.path.join('output', 'extracted_files')
os.makedirs(output_dir, exist_ok=True)
# 解压文件
with zipfile.ZipFile(file_path, 'r') as zip_ref:
zip_ref.extractall(output_dir)
print(f"文件已成功解压到: {output_dir}")
# 列出解压后的文件
print("解压的文件列表:")
for root, dirs, files in os.walk(output_dir):
for file in files:
print(os.path.join(root, file))
except zipfile.BadZipFile:
print("错误: 无效的ZIP文件")
except Exception as e:
print(f"解压过程中发生错误: {str(e)}")
# 注意: 如果需要支持其他类型的压缩文件(如RAR),
# 可以添加相应的解压函数并在run()中调用
0x05 下载
https://github.com/Tokeii0/LovelyMem
原文始发于微信公众号(渗透安全HackTwo):基于Memprocfs和Volatility的可视化内存取证工具-更新|自动化取证工具
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论