| name | detecting-insider-data-exfiltration-via-dlp |
| description | 通过分析 DLP 策略违规、文件访问模式、上传量异常和非工作时间活动,检测内部数据渗出(Insider Data Exfiltration)行为。 使用 pandas 进行行为分析和统计基线建立。适用于内部威胁调查或为数据防丢失构建用户行为分析体系。
|
| domain | cybersecurity |
| subdomain | security-operations |
| tags | ["detecting","insider","data","exfiltration"] |
| version | 1.0 |
| author | mahipal |
| license | Apache-2.0 |
通过 DLP 检测内部数据渗出
使用说明
分析端点活动日志、云存储访问记录和邮件 DLP 事件,使用行为基线和统计异常检测识别数据渗出模式。
import pandas as pd
df = pd.read_csv("file_activity.csv", parse_dates=["timestamp"])
baseline = df.groupby(["user", df["timestamp"].dt.date])["bytes_transferred"].sum()
user_avg = baseline.groupby("user").mean()
today = df[df["timestamp"].dt.date == pd.Timestamp.today().date()]
today_totals = today.groupby("user")["bytes_transferred"].sum()
anomalies = today_totals[today_totals > user_avg * 3]
关键指标:
- 上传量超过每日基线 3 倍
- 访问正常范围之外的文件
- 离职前批量下载
- 非工作时间文件访问模式
- USB/外部设备使用量激增
示例
df["hour"] = df["timestamp"].dt.hour
off_hours = df[(df["hour"] < 6) | (df["hour"] > 22)]
suspicious = off_hours.groupby("user").size().sort_values(ascending=False)