用pi agent定制一个取证agent

作者:t1mM9的笔记 发布:2026-10-03 11:28 收录:2026-10-08 12:18 4 次阅读 约 1680 字
摘要:pi agent
推荐理由:本文涵盖「Agent」、「Codex」、「Skill」等多个主题,重点关注 Agent。
最近了解到有些ctf有ai赛道,觉得挺有意思,用自己的ai来做题,想到前几天,自己做不出ctf的时候,找codex做,有些题codex也没做出来,想着自己来做一个看看。网上有很多大佬开源了自己的agent,结合他们的agent,我简单做了一个取证的agnet,我打算将来通过不断升级,能成为一个能全自动解ctf题目和做取证题目的agnet。

框架与模型的选取

我是选择用pi agent来做框架,gpt来做llm,给一些不太了解pi的朋友们介绍一下,Pi Agent 的优势在于轻量、透明和高度可组合。它能够通过 AGENTS.md 定义长期行为(相当于定义agent的身份),通过标准化 Skill 提供取证、逆向和流量分析方法,通过 MCP 连接 IDA、JADX、Wireshark 和 Autopsy 等专业工具,并支持云端与本地模型切换。其配置主要由普通的 Markdown 和 JSON 文件组成,便于使用 Git 管理、审查和迁移。配合权限扩展后,还可以对文件修改、终端命令和 MCP 操作进行细粒度约束,因此适合逐步构建一个可审计、可扩展的网络安全分析 Agent。其实最开始,我甚至想手工创造一个框架,对于我来说还是太不现实了。
我选择pi agent的最大原因是因为它非常轻量化(我不想这个agent占用太多空间),这同时意味着它可以自定义的地方非常多。不选其他功能更多的agnet的原因是我想知道我的agnet的所有的功能。用pi agent来搭建,所有的插件,skills都要自己去搞,这样能更了解自己定制的agent有什么,需要补充什么。
要想下载pi agent,直接去官网看看就行了
选择的llm肯定是gpt啦,因为我之前买了gpt的plus,不能浪费了>:<

pi工作的环境

ai在训练的时候,命令行的训练语料通常是linux或者maxos风格的,导致在windows powershell上运行的时候经常会报错,很费时间,很耗token。为了解决这个问题,我一开始是打算在vm中搞一个kali虚拟机搞这个agnet,但是发现有些不方便,内存的占用会挺大,会挺慢的。之后发现一个很不错的解决方法,就是wsl,windows自带的linux的子系统,给我们提供了一个能在linux环境中运行agnet的方法,非常方便,而且就算agent觉醒了,把所有文件都删了,也不会影响我存在物理机里的文件,重装一下就i行了。
下载wsl的方式很简单,首先确定自己的cpu有没有开启虚拟化,没有开要打开(我不知道怎么打开,现在大部分电脑都是打开的。)
image
之后,在powershell中执行
wsl --install --web-download(web-download让国内下载更快一点)
之后重启,再运行一编上面的代码,下载linux发行版,我下的是kali linux
wsl --install kali linux

具体的框架

我的agent的具体框架如下:
屏幕截图 2026-10-02 180114
.agents文件夹
里面存放了skills。主要有forensic-analysis,reverse-analysis,traffic-analysis,playwright-cli,前三个是我让ai编写的取证,逆向和流量分析的skill,最后一个是再网上找到的用来控制浏览器的skill(这个skill我没有做任何限制,我是打算让ai帮我做ctfweb的不知道可不可行)
.pi文件夹
里面存放了我下载的插件,有btw,permission,ctf(这个是前两天刚推出的我来看看好不好用),webaccess之后会下载subagent等等的插件,由于是第一版,所以少了一点;里面还存放了mcp设置,我暂时装了4个mcp:ida,wireshark,jdax和autopsy,这几个的mcp相对成熟,基本上都算是官方的mcp(我的ida是9.2然后懒得重装了,用社区里大佬的方法连接的mcp),连接到mcp.json文件中;还有一个config,规定了哪些工具可以直接执行;哪些操作需要询问;哪些操作直接禁止;哪些文件路径不可访问;哪些终端命令禁止;哪些 MCP 工具允许调用;哪些 Skill 可以自动加载;
cases文件夹
这是agent工作的地方,我的想法是evidence文件夹中放题目,之后agent再workstations中工作,做出题目或者找到flag之后会写一个简单的wp丢到history中,agnet再工作的时候会再skills和history中找知识和skill
AGENTS.md
这里就是具体的agnet的工作,行为等的信息
这样通过这四部分就搭建了一个很简单的取证的agent。

实战

这里以手机取证和电脑取证为例,普通的程序逆向codex本来就能很好完成。
image
好像这个权限设置的太紧了,pi每做一步都要我手动enter
感觉这个取证的skill也有点问题,现在取证的速度特别特别慢。好像把所有文件都遍历一遍。
image
第一次用autopsy,挂载方式还是有点问题
image
也是在我额度用完前顺利完成了
第8题答案好像是110
‍

总结

这一版本的agent还是有很多不足的,比如在运维方面(现在可以说只有一个权限控制的json其他一点运维都没有),我不知道运行到什么情况(每次都要打开btw传问,太唐了::》),不能手工接入一起分析文件,导致有些文件分析的速度会非常的慢。agent的权限也得再修改,手动的地方太多了;在工具方面,mcp还是太少了,一些简单的打开zip等活动甚至是现写python做的(不知道这个要不要修改,我感觉可以自己写一个解压的pyhton让agent调用之类的),感觉可以在连一些解压软件的mcp,还有密码爆破软件的mcp(我看有些大佬用的是windows操控的mcp这个我也学习一下,好像这样就能操控windows,但这样权限问题又是一个大头了)。;skills方面,skills还要进一步修改,原先的skill是先全盘解析一下每个文件的内容,实在是太慢了,我改成了先看题,从题目中找关键词,再搜索再解析。总之问题还是非常之多。
‍

转载声明:本文转载自原发布平台 (作者:t1mM9的笔记), 原文标题《用pi agent定制一个取证agent》, 查看原文。 版权归原作者及原发布平台所有,本站仅作收录与展示,未对正文内容作实质性修改; 若涉及侵权请联系本站处理。