FlySecAgent:——MCP全自動AI Agent的實戰利器

最近,出于對人工智能在網絡安全領域應用潛力的濃厚興趣,我利用閑暇時間進行了深入研究,并成功開發了一款小型輕量化的AI Agent安全客戶端FlySecAgent。

什么是 FlySecAgent?

這是一個基于大語言模型和MCP(Model-Controller-Plugin)和Rag架構的網絡安全智能助手項目。它旨在通過自然語言交互,幫助用戶執行滲透測試任務、查詢安全信息、分析流量包等。

項目地址: https://github.com/hnking-star/FlySecAgent

FlySecAgent實戰體驗

配置好url,并且寫上對應的key,這里我使用的是gpt-4o來演示

運行項目界面,并且在服務端啟動好對應的mcp工具

sql注入

以往,SQL注入攻擊需要資深安全人員手動構造復雜的語句,或依賴sqlmap等工具的特定參數。而FlySecAgent則將這一過程提升到智能化的新高度。當筆者指令助手進行SQL注入時,它能夠迅速識別目標,并精準地爆破出完整的數據庫名、表名,直至詳盡的數據內容。

當我讓助手幫我對其進行sql注入。發現他爆出了完整的庫名

發現他爆出了完整的表名

爆出完整的數據

這展現了FlySecAgent結合AI的強大潛力:它能夠理解上下文,自動生成和調整攻擊載荷,使得sqlmap等工具的運用變得前所未有的靈活和高效,極大地減少了人工查找特定指令的繁瑣步驟。

fofa查詢

在資產偵察階段,Fofa等搜索引擎是不可或缺的利器。FlySecAgent將其集成,使得復雜查詢變得輕而易舉。例如,當筆者要求查詢"baidu.com"的子域名時,FlySecAgent迅速列出了大量相關子域名。

發現他列出了baidu的許多子域名

進一步,當指令查詢某個IP段的C段信息時,FlySecAgent也能精確識別并列出所有相關的C段地址。這種能力使得安全研究人員能夠以前所未有的速度和便捷性,進行大規模的資產清查和目標鎖定。

成功列出所有的C段

調用kali進行nmap掃描

FlySecAgent 的強大之處還在于其對常用滲透測試工具的無縫集成。通過調用Kali Linux中的工具,它能夠執行一系列關鍵任務:

對其進行端口掃描

發現都準確無誤

調用kali進行文件掃描

調用fscan進行掃描

其他工具的掃描

FlySecAgent 支持通過 stdiosse 兩種MCP連接方式,這為開發者和安全專家提供了無限的擴展空間。這意味著,用戶可以連接更多功能豐富的第三方MCP工具,從而顯著提升FlySecAgent的滲透測試能力。目前,Kali的MCP因其豐富的工具集而被高度推薦,它能夠進一步釋放FlySecAgent在實際滲透場景中的威力。

數據包研判效果

POST /admin/controller.jsp HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8
Cookie: JSESSIONID=ABCD1234567890; user_token=xyzABC123; admin_session=true;
Content-Type: application/x-www-form-urlencoded
Content-Length: 110
Cache-Control: no-store, no-cache, must-revalidate

xc=b2JmdXNjYXRlZCBqYXZhIHJlZmxlY3Rpb24gY29kZSBmb3IgY29tbWFuZCBleGVjdXRpb24%3D&pass=MzIxYWRhYmNl??

這是一個簡單的webshell流量

經過分析,得出了結果,但是結果不是很準確,有可能是因為我的知識庫目前還沒完善,這個數據包分析都是基于rag去檢索的,所以有想法的師傅可以往知識庫中添加東西來提高它研判的準度

Rag調用本地安全知識庫

FlySecAgent 提供了一個本地知識庫目錄,用戶可以在其中添加大量的安全知識。上文提到的流量包分析功能正是基于這一RAG知識庫實現的。通過RAG機制,大模型在處理用戶指令或分析數據時,會首先從本地知識庫中檢索相關信息,然后結合自身的語言理解和推理能力給出更精準的答案。

使用該目錄可以往其中添加大量的安全知識,上面的流量包分析也是我基于rag知識庫實現的,我認為他可以大大提升大模型的精確度

例如我在這里加了這么一些知識的簡介

rag就會先從知識庫去檢索,然后再讓大模型去處理,再返回給我們準確的答案

img

最新網絡安全新咨詢搜索

這邊我是推薦使用tavily-search這個mcp

img

img

這樣可以在我們打站的時候更加方便的去尋找最新的漏洞poc

img編輯

img

這一功能在實戰滲透測試中尤為實用,它能夠讓安全人員在最短的時間內獲取最新威脅信息,從而更有效地發現并利用潛在的漏洞,提升攻擊效率和成功率。


FlySecAgent 不僅僅是一個開源項目,它更是未來網絡安全智能化的一個縮影。它巧妙地將大語言模型強大的自然語言理解能力與傳統滲透測試工具的專業功能深度融合,并借助MCP的靈活性和RAG的知識增強能力,為安全專業人員提供了一個前所未有的智能助手。

從自動化SQL注入到智能資產偵察,從無縫集成Kali工具到實時威脅情報查詢,FlySecAgent正在重塑我們進行滲透測試和安全分析的方式。它不僅極大地提升了工作效率,更通過智能化的交互降低了操作門檻,使得復雜的安全任務變得更加直觀和易于執行。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/79434.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/79434.shtml
英文地址,請注明出處:http://en.pswp.cn/web/79434.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

實戰項目5(08)

目錄 任務場景一 【r1配置】 【r2配置】 【r3配置】 ???????任務場景二 【r1配置】 【r2配置】 ???????任務場景一 按照下圖完成網絡拓撲搭建和配置 任務要求: 通過在路由器R1、R2和R3上配置靜態路由,實現網絡中各終端PC能夠正常…

基于Kubernetes的Apache Pulsar云原生架構解析與集群部署指南(下)

文章目錄 k8s安裝部署Pulsar集群前期準備版本要求 安裝 Pulsar Helm chart管理pulsarClustersBrokersTopic k8s安裝部署Pulsar集群 前期準備 版本要求 Kubernetes 集群,版本 1.14 或更高版本Helm v3(3.0.2 或更高版本)數據持久化&#xff…

C35-數組和函數開發初見

一 數組作為函數的參數 用于傳遞數組中的某一個元素→意義不大 數組名當做函數實際參數 示例 代碼 #include <stdio.h>//封裝函數PrintArr void PrintArr(int arr[3]){int i;for(i0;i<3;i){printf("%d ",arr[i]);}putchar(\n);}//主函數 int main() { …

【小沐學GIS】基于C++繪制二維瓦片地圖2D Map(QT、OpenGL、GIS)

&#x1f37a;三維數字地球系列相關文章如下&#x1f37a;&#xff1a;1【小沐學GIS】基于C繪制三維數字地球Earth&#xff08;OpenGL、glfw、glut&#xff09;第一期2【小沐學GIS】基于C繪制三維數字地球Earth&#xff08;OpenGL、glfw、glut、GIS&#xff09;第二期3【小沐學…

idea左側項目資源管理器不見了處理

使用idea誤觸導致&#xff0c;側邊欄和功能欄沒了&#xff0c;如何打開&#xff1f; 1.打開文件&#xff08;File&#xff09; 2. 打開設置&#xff08;Settings&#xff09; 3.選擇Appearance&Behavior--->Appearance劃到最下面&#xff0c;開啟顯示工具欄和左側并排布…

[Java實戰]Spring Boot 靜態資源配置(十三)

[Java實戰]Spring Boot 靜態資源配置&#xff08;十三&#xff09; 引言 靜態資源&#xff08;如 HTML、CSS、JavaScript、圖片等&#xff09;是 Web 應用的基石。Spring Boot 通過自動化配置簡化了靜態資源管理&#xff0c;但面對復雜場景&#xff08;如多模塊項目、CDN 集成…

多模態大語言模型arxiv論文略讀(六十九)

Prompt-Aware Adapter: Towards Learning Adaptive Visual Tokens for Multimodal Large Language Models ?? 論文標題&#xff1a;Prompt-Aware Adapter: Towards Learning Adaptive Visual Tokens for Multimodal Large Language Models ?? 論文作者&#xff1a;Yue Zha…

Python 基礎語法與數據類型(七) - 函數的定義與調用 (def, return)

文章目錄 為什么要使用函數&#xff1f;函數的定義 (def)函數的調用函數參數 (Parameters vs Arguments)返回值 (return)變量作用域 (簡要了解)總結練習題練習題答案 **創作不易&#xff0c;請大家點贊加收藏&#xff0c;關注我&#xff0c;持續更新教程&#xff01;** 到目前為…

華為配置篇-RSTP/MSTP實驗

MSTP 一、簡介二、常用命令總結三、實驗 一、簡介 RSTP&#xff08;快速生成樹協議&#xff09;? RSTP&#xff08;Rapid Spanning Tree Protocol&#xff09;是 STP 的改進版本&#xff0c;基于 ??IEEE 802.1w 標準??&#xff0c;核心目標是解決傳統 STP 收斂速度慢的問…

Docker Compose 完全指南:從入門到生產實踐

Docker Compose 完全指南&#xff1a;從入門到生產實踐 1. Docker Compose 簡介與核心價值 Docker Compose 是一個用于定義和運行多容器 Docker 應用程序的工具。通過一個 YAML 文件來配置應用的服務&#xff0c;只需簡單命令就能創建和啟動所有服務。 核心優勢&#xff1a;…

Linux 離線安裝 Docker 和 Docker Compose 最新版 的完整指南

一、準備工作 1. 下載安裝包?&#xff08;需在有網絡的機器操作&#xff09;&#xff1a; Docker 引擎&#xff1a;從官方倉庫下載最新二進制包 wget https://download.docker.com/linux/static/stable/x86_64/docker-24.0.6.tgz?Docker Compose&#xff1a;下載最新二進制…

CSS: 選擇器與三大特性

標簽選擇器 標簽選擇器就是選擇一些HTML的不同標簽&#xff0c;由于它們的標簽需求不同&#xff0c;所以CSS需要設置標簽去選擇它們&#xff0c;為滿足它們的需求給予對應的屬性 基礎選擇器 標簽選擇器 <!DOCTYPE html> <head><title>HOME</title>…

鴻蒙跨平臺開發教程之Uniapp布局基礎

前兩天的文章內容對uniapp開發鴻蒙應用做了一些詳細的介紹&#xff0c;包括配置開發環境和項目結構目錄解讀&#xff0c;今天我們正式開始寫代碼。 入門新的開發語言往往從Hello World開始&#xff0c;Uniapp的初始化項目中已經寫好了一個簡單的demo&#xff0c;這里就不再贅述…

JavaSE核心知識點02面向對象編程02-08(異常處理)

&#x1f91f;致敬讀者 &#x1f7e9;感謝閱讀&#x1f7e6;笑口常開&#x1f7ea;生日快樂?早點睡覺 &#x1f4d8;博主相關 &#x1f7e7;博主信息&#x1f7e8;博客首頁&#x1f7eb;專欄推薦&#x1f7e5;活動信息 文章目錄 JavaSE核心知識點02面向對象編程02-08&#…

【JVM-GC調優】

一、預備知識 掌握GC相關的VM參數&#xff0c;會基本的空間調整掌握相關工具明白一點&#xff1a;調優跟應用、環境有關&#xff0c;沒有放之四海而皆準的法則 二、調優領域 內存鎖競爭cpu占用io 三、確定目標 【低延遲】&#xff1a;CMS、G1&#xff08;低延遲、高吞吐&a…

基于單片機的電子法頻率計

一、電子計數法測頻率原理 通過門控控制閘門開關&#xff0c;閘門時間T自己設定&#xff0c;計數器計數脈沖個數N&#xff08;也就是待測信號&#xff09;&#xff0c;N個脈沖的時間間隔為δt,倒數即為信號的頻率f,由此 δtT/N fN/T——信號頻率 根據公式&#xff0c;如果考慮…

【C/C++】跟我一起學_C++同步機制效率對比與優化策略

文章目錄 C同步機制效率對比與優化策略1 效率對比2 核心同步機制詳解與適用場景3 性能優化建議4 場景對比表5 總結 C同步機制效率對比與優化策略 多線程編程中&#xff0c;同步機制的選擇直接影響程序性能與資源利用率。 主流同步方式: 互斥鎖原子操作讀寫鎖條件變量無鎖數據…

判斷兩臺設備是否在同一局域網內的具體方法

以下是判斷兩臺設備是否在同一局域網內的具體方法&#xff1a; 1. 檢查IP地址和子網掩碼 操作步驟&#xff1a; Windows系統&#xff1a; 按 Win R 鍵&#xff0c;輸入 cmd 并回車。輸入 ipconfig&#xff0c;查看 IPv4 地址 和 子網掩碼&#xff08;如 192.168.1.5/255.255.2…

在R語言中如何將列的名字改成別的

在 R 中&#xff0c;更改數據框&#xff08;data frame&#xff09;中列的名字可以通過多種方法實現。以下是幾種常見的方法&#xff1a; 方法 1&#xff1a;使用 names() 函數 names() 函數可以獲取或設置數據框的列名。 示例 假設我們有一個數據框 data&#xff1a; dat…

JUC并發編程(上)

一、JUC學習準備 核心知識點&#xff1a;進程、線程、并發&#xff08;共享模型、非共享模型&#xff09;、并行 預備知識&#xff1a; 基于JDK8,對函數式編程、lambda有一定了解 采用了slf4j打印日志 采用了lombok簡化java bean編寫 二、進程與線程 進程和線程概念 兩者對比…