SecProxy - 自動化安全協同平臺

本人為甲方安全人員,從事甲方工作近6年;針對在甲方平時安全工作的一些重復、復雜、難點的工作,思考如何通過AI、腳本、或者工具實現智能且自動化,于是花平時空閑時間準備將這些能力全部集中到一個平臺,于是有了這個東西——SecProxy-安全自動化協同平臺

項目概述

SecProxy 是專為甲方安全人員設計的自動化安全協同平臺,通過智能化、自動化的安全運營能力降低人工成本與資源消耗,提升安全響應效率。核心功能圍繞阿里云 WAF 3.0 深度集成,實現攔截數據可視化、策略自動化管理及安全趨勢分析。
?

技術棧

前端

  • ? 語言/框架:Python(數據處理)、HTML/CSS(頁面渲染)
  • ? 核心技術:響應式布局、網格系統、AJAX 數據交互
  • ? 架構設計:清晰分層的頁面結構,優化用戶體驗與功能擴展性

后端

  • ? 語言/框架:Python、Flask(Web 框架)、MySQL(數據庫)
  • ? 核心功能:數據存儲與處理、API 接口服務、安全策略邏輯實現
  • ? 第三方庫:Flask-SQLAlchemy(數據庫 ORM)、requests(網絡請求)

架構設計

前端架構

  • ? Header:固定頂部,展示平臺名稱與核心價值
  • ? Sidebar:左側固定寬度(1/5),包含功能菜單(如白名單管理、釘釘告警等)
  • ? Content Area:主內容區根據菜單點擊動態加載配置頁面或數據報表,核心功能區采用網格布局展示卡片式模塊(如攻擊趨勢、策略管理)
  • ? Footer:底部單行版權信息

技術實現

  • ? 使用原生 HTML/CSS 實現響應式布局,適配多終端
  • ? 通過 AJAX 與后端 API 交互,動態渲染數據表格、圖表(預留 ECharts 集成接口)

后端架構

API 設計

接口路徑

功能描述

方法

響應格式

/api/waf/blocked-ips

獲取前一天 WAF 攔截 IP 列表

GET

JSON

/api/whitelist/add

一鍵添加白名單規則

POST

{"status": "success"}

/api/blacklist/remove

一鍵解封 IP

POST

{"status": "success"}

/api/attack-trend

獲取 IP 攻擊趨勢數據

GET

JSON 數組

數據庫模型(MySQL)

IP 攻擊趨勢表 (attack_trend)

字段名

類型

描述

id

INT(11)

自增主鍵

timestamp

DATETIME

攻擊時間

ip

VARCHAR(45)

攻擊 IP 地址

attack_count

INT(11)

攻擊次數

attack_ratio

DECIMAL(5,2)

攻擊占比(百分比)

核心功能

阿里云 WAF 3.0 集成

  • ? 攔截數據可視化
    實時展示前一天 WAF 攔截 IP 詳情(數量、分布、高頻攻擊源),支持按時間范圍篩選,生成趨勢折線圖/柱狀圖。
  • ? 自動化策略管理
    • ? 白名單:通過模板快速添加信任 IP(支持單個/批量導入),數據格式示例:
[  {  "name": "test1",  "tags": ["waf"],  "status": 1,  "origin": "custom",  "conditions": [{"key": "IP", "opValue": "contain", "values": "14.22.5.27"}]  }  
]
    • ? 黑名單:一鍵封禁惡意 IP,支持多維度條件(如來源 IP、請求頻率),數據格式示例:
[  {  "action": "block",  "id": 20705051,  "name": "IpBlackList",  "remoteAddr": ["116.238.81.166", "183.223.240.178"]  }  
]
  • ? 一鍵解封:快速移除封禁策略,支持批量操作與操作日志審計。
  • ? 智能告警:通過釘釘 Webhook 自動推送攔截事件到指定群組,包含攻擊 IP、時間、威脅等級等信息。
  • ? 安全趨勢分析:基于歷史數據生成 IP 攻擊趨勢報告,識別高頻攻擊時段與惡意 IP 集群,支持導出 CSV/Excel 格式,便于二次分析。

目錄結構

aliwaf_sec/  
├── app.py             # Flask 主程序,后端服務入口  
├── config.py          # 配置文件(數據庫連接、釘釘 Webhook 地址等)  
├── extensions.py      # 第三方庫初始化(如數據庫實例 db)  
├── models.py          # 數據庫模型定義(表結構)  
├── routes/            # 路由模塊(按功能劃分)  
│   ├── __init__.py    # 藍圖初始化  
│   ├── waf.py         # WAF 相關 API 路由  
│   ├── user.py        # 用戶管理 API 路由  
│   └── report.py      # 報告生成 API 路由  
├── requirements.txt   # 依賴庫清單  
└── static/            # 前端靜態資源(待擴展,當前暫未啟用)  ├── css/  ├── js/  └── images/

部署指南

環境準備

安裝 Python 3.8+ 及 pip:

示例(Ubuntu/Debian)

sudo apt-get install python3.8 python3-pip

安裝依賴:

pip install -r requirements.txt

在 .env 中修改參數:
  1. 1. 復制.env-template文件為.env;
  2. 2. 完善里面的參數
執行數據庫遷移(使用 Flask-SQLAlchemy):
flask db init  
flask db migrate -m "Initial migration"  
flask db upgrade
啟動服務

后端服務:

python app.py

聯系我們

私或評論

持續優化中:更多功能(如其他云廠商 WAF 集成、日志分析、腳本等)即將上線!

前端寫的很屁,勿噴。

同時尋求更多志同道合的朋友一起完善!

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

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

相關文章

CSI-external-provisioner

main() 這段Go代碼是一個CSI(容器存儲接口)Provisioner(供應器)的實現,用于在Kubernetes集群中動態提供持久卷。代碼涉及多個組件和步驟,下面是對關鍵部分的解釋: 初始化和配置 命令行標志和…

react中通過 EventEmitter 在組件間傳遞狀態

要在 Reply 組件中通過 statusChangeEvent 發送狀態值,并在 Select 組件中接收這個狀態值 status,你可以按照以下步驟實現: //Event.jsimport EventEmitter from events;export const statusChangeEvent new EventEmitter();// 工單狀態切換…

1534. 統計好三元組

1534. 統計好三元組 - 力扣&#xff08;LeetCode&#xff09; 給你一個整數數組 arr &#xff0c;以及 a、b 、c 三個整數。請你統計其中好三元組的數量。 如果三元組 (arr[i], arr[j], arr[k]) 滿足下列全部條件&#xff0c;則認為它是一個 好三元組 。 0 < i < j &l…

如何配置AWS EKS自動擴展組:實現高效彈性伸縮

本文詳細講解如何在AWS EKS中配置節點組&#xff08;Node Group&#xff09;和Pod的自動擴展&#xff0c;優化資源利用率并保障應用高可用。 一、準備工作 工具安裝 安裝并配置AWS CLI 安裝eksctl&#xff08;EKS管理工具&#xff09; 安裝kubectl&#xff08;Kubernetes命令…

FPGA_UART

1.UART 概述 &#xff08;通用異步收發傳輸器&#xff09; 1. 基本定義 UART&#xff08;Universal Asynchronous Receiver/Transmitter&#xff09;是一種常見的串行通信協議&#xff0c;用于在設備間通過異步串行通信傳輸數據。它不依賴獨立的時鐘信號&#xff0c;而是通過預…

openwrt軟路由配置4--文件共享

1.安裝samba opkg update opkg install luci-app-samba4安裝好之后重啟設備&#xff0c;系統界面服務下面會多一個network shares 2.創建磁盤分區并掛載到共享目錄 openwrt剛剛安裝的時候空間都是很小的&#xff0c;共享目錄我是打算用來存放一些電影視頻之類的大文件。所以我…

Vue ‘v-model‘ directives require the attribute value which is valid as LHS.

1、問題描述 在項目開發中&#xff0c;如果將el-checkbox組件的v-model指令改為使用三元表達式時&#xff0c;會報出【vue/valid-v-model】的錯誤&#xff0c;如下圖所示&#xff1a; 2、分析原因 根據錯誤提示&#xff0c;是因為v-model指令始終把Vue實例的data視為數據真實…

基于 Qt 的 BMP 圖像數據存取至 SQLite 數據庫的實現

基于 Qt 的 BMP 圖像數據存取至 SQLite 數據庫的實現說明 本項目通過 Qt 框架實現了將 BMP 圖像文件以二進制形式存入 SQLite 數據庫&#xff0c;并可從數據庫中讀取還原為 BMP 圖像文件的功能&#xff0c;適用于需要圖像與結構化數據統一管理的場景。 整個流程分為兩個主要部…

嵌入式基礎(三)基礎外設

嵌入式基礎&#xff08;三&#xff09;基礎外設 1.什么是UART&#xff1f;與USART有什么區別??? (1)什么是UART 通用異步收發傳輸器&#xff08;Universal Asynchronous Receiver/Transmitter)&#xff0c;通常稱作UART。是一種異步全雙工串行通信協議&#xff0c;它將要…

人力資源管理方向論文怎么寫?

目錄 一、人力資源管理方向論文選題 二、人力資源管理方向論文參考資料 隨著經濟的蓬勃發展&#xff0c;企業日益意識到引才、善用人才、留住人才對于業務發展的至關重要性。人力資源管理逐漸成為企業管理中的核心職能&#xff0c;其角色日益凸顯。近年來&#xff0c;“人力資…

機器學習 從入門到精通 day_05

1. 線性回歸 前面介紹了很多分類算法&#xff0c;分類的目標變量是標稱型數據&#xff0c;回歸是對連續型的數據做出預測。 標稱型數據&#xff08;Nominal Data&#xff09;是統計學和數據分析中的一種數據類型&#xff0c;它用于分類或標記不同的類別或組別,數據點之間并沒有…

神經子圖同構計數

摘要 本文研究了一個新的圖學習問題&#xff1a;學習計算子圖同構。與其他傳統的圖學習問題&#xff0c;如節點分類和鏈接預測不同&#xff0c;子圖同構計數是NP完全的&#xff0c;需要更多的全局推理來監督整個圖。為了使其可擴展為大規模的圖形和模式&#xff0c;我們提出了一…

開源模型應用落地-模型上下文協議(MCP)-第三方MCP Server實戰指南(五)

一、前言 在AI技術高速發展的2025年,如何讓大語言模型(LLM)更靈活地調用外部工具與數據,成為開發者關注的焦點。?模型上下文協議(MCP)?作為AI與外部資源的“萬能接口”,通過標準化交互框架解決了傳統集成中的碎片化問題。而第三方MCP Server的引入,進一步降低了開發門…

【2025年認證杯數學中國數學建模網絡挑戰賽】C題 數據預處理與問題一二求解

目錄 【2025年認證杯數學建模挑戰賽】C題數據預處理與問題一求解三、數據預處理及分析3.1 數據可視化3.2 滑動窗口相關系數統計與動態置信區間耦合分析模型3.3 耦合關系分析結果 四、問題一代碼數據預處理問題一 【2025年認證杯數學建模挑戰賽】C題 數據預處理與問題一求解 三…

AI Agent開發大全第二十八課-MCP實現本地命令調用怎么做的?

開篇 MCP很強大,Client端一旦實現了穩定的連接和執行流程后任Server端隨意改動都可兼容,這就是熱插撥功能。 如果我們僅僅滿足于MCP查點網上資料、讀點圖片即文字型的功能肯定是不能充分發揮MCP的強大之處的,正應了Google以及Anthropic最近的研究報告上說的:不要再在chat…

AJAX原理與XMLHttpRequest

目錄 一、XMLHttpRequest使用步驟 基本語法 步驟 1&#xff1a;創建 XHR 對象 步驟 2&#xff1a;調用 open() 方法 步驟 3&#xff1a;監聽 loadend 事件 步驟 4&#xff1a;調用 send() 方法 二、完整示例 1. GET 請求&#xff08;帶查詢參數&#xff09; 2. POST 請…

python寫個0~12個月寶寶喂養規劃表

下載字體&#xff1a;https://github.com/adobe-fonts/source-han-sans/releases 下載fpdf2 pip uninstall fpdf pip install fpdf2運行代碼 ?from fpdf import FPDF from fpdf.enums import XPos, YPos# 創建 PDF 類 class BabyFeedingPDF(FPDF):def header(self):self.s…

集中趨勢描述

一、集中趨勢的定義與核心目標 集中趨勢指數據向其中心值聚集的傾向,反映數據的典型水平或分布中心。其核心是通過統計指標(如眾數、中位數、均值)概括數據的核心特征,幫助快速理解數據分布的核心位置。 核心作用:簡化復雜數據、指導業務決策(如確定用戶平均消費水平)、…

【NLP】Attention機制

1.模型對比 RNN(馬爾科夫鏈式編碼) 通過遞歸計算逐個處理 token,當前編碼結果 h t h_t ht?僅依賴前一步的隱藏狀態 h t ? 1 h_{t-1} ht?1?和當前輸入 x t x_t xt?局限性:序列建模需嚴格串行,無法并行;長距離依賴易丟失(梯度消失/爆炸)例:雙向 LSTM 需正向+反向兩…

基于OpenCV與PyTorch的智能相冊分類器全棧實現教程

引言&#xff1a;為什么需要智能相冊分類器&#xff1f; 在數字影像爆炸的時代&#xff0c;每個人的相冊都存儲著數千張未整理的照片。手動分類不僅耗時&#xff0c;還容易遺漏重要瞬間。本文將手把手教你構建一個基于深度學習的智能相冊分類系統&#xff0c;實現&#xff1a;…