Agent完成DIDCTF电子取证初学题目

作者:ljnljn学习之路 发布:2026-09-27 20:39 收录:2026-09-28 10:37 5 次阅读 约 2149 字
摘要:题目补完计划 No.1
推荐理由:本文涵盖「Agent」、「电子取证」、「内存取证」等多个主题,重点关注 Agent。

题目补完计划 No.1

说在前头

依旧从这套题目开始(因为最近电脑没空间了又翻到这个,做完了就删掉) 

今天捣鼓了一下把lovelymem和lovelyspark的cli接进了Agent,今天尝试用lovelymem的cli做内存取证题,效果非常好 本身两个工具都是单文件的,所以使用的时候可以直接放到在系统环境变量的文件夹下,随时随地都能调用 就比如专门弄个文件夹装单文件的东西(包括自己写bat也可以当作命令快速调用,感觉是个不错的小技巧)  lovelymem的help界面  lovelyspark的help界面  根据help界面我们可以写一些skills

1. fst_lovelyspark(日志 / 流量分析)

核心是两段式契约:先 analyze 建缓存库拿到 db_path,再对同一个库反复 call。


{ "op": "analyze", "path": "D:\\case\\capture.pcapng" }

→ 返回 data.db_path(如 .../lovelyspark/xxx.db)。后续所有分析都指向这个库:


{ "op": "call", "db": "<db_path>", "tool": "<工具名>", "tool_args": "{\"proto\":\"http\"}" }
  • 工具清单:{ "op": "tools", "sub": "list" }(或 --sub schema 看参数契约)。
  • 一条龙调查:{ "op": "investigate", "path": "...", "focus": "all|overview|threats|files|credentials", "limit": 12 }。
  • 底层抓包透传:{ "op": "tshark", "extra_args": "-Y http -T fields -e ip.src" }。
  • 其它:license(status/device-code/import)、config、capture(merge/filter/repair)、traffic。
  • analyze 首次建库很慢(大 pcap 可达分钟级):timeout 参数默认 600s,别设太小。

2. fst_lovelymem(内存取证)


{ "op": "doctor" }

→ 授权状态 + 引擎配置(starmem 原生引擎 / vol3 即 Volatility3 包装)。


{ "op":"plugins","engine":"starmem","query":"ps"}

{"op":"describe","engine":"starmem","plugin":"pslist"}

{"op":"run","engine":"starmem","image":"E:\\case\\memdump.mem","plugin":"pslist","timeout":"1800"}
  • 产物:run 返回 run_dir;{ "op": "artifacts", "run-dir": "..." } 列出产物;   { "op": "read", "run-dir": "...", "path": "<产物>", "encoding": "utf8|base64|hex" } 读内容;   { "op": "sql", "run-dir": "...", "path": "<sqlite>", "request": "<query.json>" } 查结构化库。
  • partial ≠ 失败:run 的顶层 status 可能是 partial(如进程链表被并发修改的   head_blink_mismatch 告警),只要 result.success=true 产物就完整可用,直接取数据。
  • result.source_record_count 是顶层区段数(如 pslist=1),不是条目数(真实进程数看   processes 数组长度)——不要拿它当记录数。
  • 常用 starmem 插件:pslist / cmdline / netscan / dlllist / filescan / malfind /   handles / registry-hives / cachedump(凭据)/ browser-history。
  • 内存扫描是长任务:timeout 默认 1800s;薄壳给 CLI 跑满再加 3 分钟余量。

3. 通用纪律

  • exe 找不到 → 先查面板「设置」是否填了路径;再查环境变量;不要改代码硬编码。
  • 输出统一 {ok:true/false, ...};失败时带 error + _stderr_tail + _cli_exit_code   (3=授权失败,4=执行/读取失败,5=报告不完整但数据可用,124=超时)。
  • 流量题:fst_lovelyspark 优先,报错/做不出立即回退 tshark(analyzing-network-traffic-with-wireshark 技能)。
  • 内存题:fst_lovelymem 优先(starmem 原生引擎),复杂插件面不够再考虑 vol3 或   analyzing-memory-dumps-with-volatility 技能。 (这里把lovelymem和lovelyspark做了dsh的插件化注入,师傅们使用时也可以直接skills+路径替换;同时也做了tshark和volatility兜底,不过目前看基本不需要)

本次模型使用deepseek-v4-flash-0731(也就是旧版本v4f)

内存取证

手工部分是以前做的,所以用的lovelymem v2,师傅已经开源了这个版本,可以看看 v3的做法可以看这位师傅写的文章:

电子取证初学

dsh自动分了两个子代理做 

内存取证-1

请给出计算机内存创建北京时间? [答案格式:2000-01-11 00:00:00] 注意这里要+8(北京时间) 

内存取证-2

请给出计算机内用户yang88的开机密码? [答案格式:abc.123] 

内存取证-3

提取内存镜像中的USB设备信息,给出该USB设备的最后连接北京时间? [答案格式:2000-01-11 00:00:00] 这里真正像外接 U 盘的设备是:

VID_0781&PID_558CSerial Number: 32313131374D343032343132[2023-06-20 17:01:25 UTC]

其中:

VID_0781

通常对应 SanDisk 闪迪设备,PID_558C 是该 USB 设备的产品 ID。前面的 ROOT_HUB、ROOT_HUB20、VID_0E0F 更像是 USB 控制器、虚拟机相关设备,不是题目要找的外接 USB 存储设备。 所以最后连接时间取:2023-06-20 17:01:25 UTC 13个用户已解出

内存取证-4

请给出用户yang88的LMHASH值? [答案格式:字母小写]  27个用户已解出

内存取证-5

请给出用户yang88访问过文件“提现记录.xlsx”的北京时间? [答案格式:2000-01-11 00:00:00] 不会写捏,没找到 14个用户已解出

内存取证-6

请给出“VeraCrypt”最后一次执行的北京时间? [答案格式:2000-01-11 00:00:00]  23个用户已解出

内存取证-7

分析内存镜像,请给出用户在“2023-06-20 16:56:57 UTC+0”访问过“维斯塔斯”后台多少 次?[答案格式:10] 2  16个用户已解出

内存取证-8

请给出用户最后一次访问chrome浏览器的进程PID? [答案格式:1234] 

Agent记录

全解了  主代理告诉子代理的工具说明  最终报告  总计用时18分13秒,通过对话可以看出Agent还是不太熟悉怎么用cli,还要优化一下skills 

经验积累  感觉后面还是得加个手动删除自动去重啥的,感觉有好多重复的 

也可以看看Agent咋调用这个知识库的 进行搜索然后返回内容和方法  后面打算先让他做图1的标题搜索再进行图2的详细搜索,可以进一步压缩上下文

计算机取证

这里连接了火眼cli解析

计算机取证-1

1.请找出操作系统主机名。 

计算机取证-2

2.请给出源磁盘的SHA256哈希值。

计算机取证-3

3.请找出操作系统中安装的Android模拟器名称和安装日期。(格式:雷电模拟器2025年06月26日) noxplayer夜神模拟器  55个用户已解出

计算机取证-4

4.请找出使用Bitlocker加密的虚拟磁盘文件。(格式:xxx.xx/xxxx.xx) my.vhd/my1.vhd  31个用户已解出

计算机取证-5

5.请找出操作系统安装日期。

计算机取证-6

6.请找出操作系统最后登录的用户。

计算机取证-7

7.请找出操作系统中安装的浏览器最后浏览过的网站域名 [格式: www.baidu.com][1]

passport.baidu.com 

计算机取证-8

8.请找出操作系统中安装的浏览器名称的对应的安装日期。

A.360浏览器2021-05-03 20:16:43

B.Edge浏览器2021-05-03 20:26:44

C.谷歌浏览器2021-05-03 20:16:44

D.搜狗极速浏览器2021-06-03 20:16:44

计算机取证-9

9.请找出操作系统版本号。

计算机取证-10

10.请找出操作系统设置的时区名称。(格式:UTC+2) UTC+0 

计算机取证-11

11.请找出操作系统中安装的浏览器“自动填充”中保存的网站密码信息(网站+用户名+密码)

计算机取证-12

12.请找出用户“poiuy”的SID。

计算机取证-13

13.请给出源磁盘的大小(字节)。(提示:一个扇区=512)

 62914560 × 512 = 32212254720

计算机取证-14

14.请找出各分区文件系统类型。

ntfs

计算机取证-15

15.请找出曾经连接到该系统的U盘的品牌、序列号、最后插拔日期。 (格式:xx+xx+2024-03-12)

SanDisk+4C530001310423109141+2021-05-04 

计算机取证-16

16.请找出回收站中的文件的名称(格式:2333.exe+1.txt+3.E01)

nox_setup_v7.0.0.6_full.exe+新建文本文档1.txt+测试.rtf 

计算机取证-17

17.请找出使用Bitlocker加密的虚拟磁盘文件恢复密钥文件名是什么。

计算机取证-18

18.请找出用户“poiuy”的登录密码。 

Agent记录

全解了  这里提示词写的有点问题,做成串行的了,本来想做并发的,后面让他强制并发了 可以发现dsh新版对子代理的显示也做了优化,更加清晰了  给子代理的工具说明,这里不让再开火眼,不然电脑里就只剩火眼了(什  最终花的时间  第三个卡密码上了  经验积累  后续可能也要加一些沉淀的脚本,可以直接调用的那种,作为小插件处理 

希望能给师傅们有点启发

转载声明:本文转载自原发布平台 (作者:ljnljn学习之路), 原文标题《Agent完成DIDCTF电子取证初学题目》, 查看原文。 版权归原作者及原发布平台所有,本站仅作收录与展示,未对正文内容作实质性修改; 若涉及侵权请联系本站处理。