Token导航 LogoToken导航TokenDH.com
开发敏感数据clawhub未标认证来源可访问clear审计通过

dataguard-dlp数据卫士 DLP

Agent Skill

用于辅助数据整理、表格处理、CSV/Excel 分析、指标计算和图表准备。它适合让 Agent 清洗字段、汇总数据、发现异常、生成统计口径或把分析结果转成可读说明。使用时需要确认数据来源、字段含义和时间范围,避免把样本数据当全量事实;涉及敏感数据、导出文件或批量写回时,应先确认权限和脱敏边界。

总安装

2,832

周安装

118

GitHub Stars

公开资料未说明

下载量

944
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dataguard-dlp(数据卫士 DLP)
来源仓库:https://github.com/jeffcgit/dataguard-dlp
安装命令:
openclaw skills install dataguard-dlp
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install dataguard-dlp

简介

为 OpenClaw 代理提供运行时数据防泄漏保护,防止敏感信息外泄。

  • 多层防御机制覆盖凭证、PII 和敏感数据传输的安全风险。
  • 自动检测并拦截高风险操作,如未授权导出或异常网络传输行为。
  • 需配置敏感词库和权限规则,避免误判影响正常业务流程。
  • 适用于处理用户隐私、企业数据和合规要求的代理环境部署。

SKILL.md

name
Dataguard DLP
version
2.2.0
description
Runtime Data Loss Prevention (DLP) for OpenClaw agents. Multi-layer defense against credential exfiltration, PII leakage, and sensitive data transfer. Intercepts outbound tool calls, scans for patterns, and blocks unauthorized data transfers. First ClawHub plugin with real-time data flow protection.
metadata
openclaw
requires
bins
[grep, sed, awk, date, head, xargs]
note
|
install
kind
shell
script
scripts/install.sh
hooks
phase
pre
script
scripts/hooks/web-fetch-pre.sh
phase
pre
script
scripts/hooks/sessions-send-pre.sh
phase
pre
script
scripts/hooks/exec-pre.sh

DataGuard — Runtime DLP for AI Agents

You have the DataGuard security skill. This is a runtime enforcement layer that actively prevents data exfiltration.

The Problem

AI agents can be tricked into sending sensitive data through:

  • Prompt injection — hidden instructions in emails, web pages, documents
  • Tool chaining — read credentials → send to external URL
  • Social engineering — "help me debug, paste your config"
  • Unintended exposure — logs, error messages, debugging output

SecureClaw provides behavioral rules. DataGuard provides runtime enforcement.

How It Works

┌─────────────────────────────────────────────────────────────────┐
│                     TOOL EXECUTION FLOW                         │
├─────────────────────────────────────────────────────────────────┤
│  Agent calls tool (web_fetch, sessions_send, exec)              │
│                          ↓                                       │
│  ┌─────────────────────────────────────────────────────────┐   │
│  │  DATA GUARD PRE-HOOK                                     │   │
│  │  ─────────────────────────────────────────────────────  │   │
│  │  1. Extract outbound data (URL params, body, message)   │   │
│  │  2. Run pattern scanner (API keys, PII, paths)         │   │
│  │  3. Check context (sensitive file read this session?)   │   │
│  │  4. Verify domain allowlist                             │   │
│  │  5. Calculate risk score                                │   │
│  └─────────────────────────────────────────────────────────┘   │
│                          ↓                                       │
│         ┌──────────────┬──────────────┬──────────────┐          │
│         │  LOW RISK    │  MEDIUM RISK  │  HIGH RISK   │          │
│         │  (0-2)       │  (3-5)        │  (6-10)      │          │
│         └──────────────┴──────────────┴──────────────┘          │
│              ↓               ↓               ↓                    │
│         ALLOW           WARN + LOG      BLOCK + ALERT            │
│                          ↓               ↓                       │
│                      ALLOW           REQUIRE APPROVAL            │
│                                                              │
└─────────────────────────────────────────────────────────────────┘

Layer Stack

LayerNameFunctionEnforcement
L1Pattern ScannerDetects credentials, PII, secretsAutomatic block
L2Context HeuristicsTracks read→send patternsScore increase
L3Domain AllowlistOnly approved external domainsBlock unknown
L4Risk ScoringAggregates signals into decisionTiered response
L5User ConfirmationHigh-risk requires approvalExplicit consent
L6Audit LoggingRecords all decisionsReview trail

Rules

Rule 1: All Outbound Data Must Be Scanned

Before ANY tool that sends data externally:

echo "$OUTBOUND_DATA" | bash $SKILL_DIR/scripts/dlp-scan.sh

If exit code is non-zero, STOP and alert.

Rule 2: Pattern Matches Are Automatic Blocks

The following patterns trigger immediate block:

CRITICAL (Score: 10)

  • API keys: sk-*, xoxb-*, ghp_*, AKIA*, API keys in general
  • Passwords: password=, passwd=, pwd=, secret=
  • Private keys: -----BEGIN.*PRIVATE KEY-----
  • Database URLs with credentials: mysql://user:pass@, postgres://...
  • AWS credentials: aws_access_key_id, aws_secret_access_key

HIGH (Score: 8)

  • Credit cards: Visa/MC/Amex/Diners patterns
  • SSN: XXX-XX-XXXX format
  • Internal IPs: 192.168.*, 10.*, 172.16-31.*
  • Internal hostnames: .local, .internal, .corp
  • File paths: /home/, /root/, /etc/, ~/.ssh/

MEDIUM (Score: 5)

  • Email addresses in sensitive contexts
  • Phone numbers in sensitive contexts
  • Personal names with context (config files, credentials)
  • VPN/network tool references (tailscale, wireguard)

LOW (Score: 2)

  • Generic path references
  • Non-sensitive URLs
  • Public information

Rule 3: Context Matters — Track Sensitive Reads

DataGuard maintains a session context file:

$SKILL_DIR/context/sensitive-reads.json

When you read a file containing credentials or PII, DataGuard logs it:

{
  "timestamp": "2026-04-07T16:52:00Z",
  "file": "/home/user/.env",
  "patterns": ["AWS_KEY", "DB_PASSWORD"],
  "risk_level": "HIGH"
}

If you then try to send data externally, DataGuard checks this log:

  • Sensitive read in last 5 minutes? → Risk +3
  • Same session? → Risk +2
  • Same conversation turn? → Risk +5 (BLOCK threshold)

Rule 4: Domain Allowlisting

By default, these domains are ALLOWED:

  • api.openai.com
  • api.anthropic.com
  • api.brave.com
  • docs.openclaw.ai
  • clawhub.ai
  • github.com

By default, these domains are BLOCKED:

  • Pastebin sites (pastebin.com, hastebin.com)
  • File sharing (transfer.sh, 0x0.st)
  • Webhook catchers (webhook.site, requestbin.net)
  • Anonymous email (temp-mail.org, guerrillamail.com)

All other domains: REQUIRE APPROVAL for data outbound.

Rule 5: Risk Scoring Thresholds

ScoreAction
0-2Allow — no sensitive patterns detected
3-5Warn — log the attempt, allow with warning
6+Block — require explicit user approval

When blocked:

  1. Log to $SKILL_DIR/logs/blocked-attempts.log
  2. Show user: what was blocked, why, risk score breakdown
  3. Provide options: approve once, approve domain, report false positive

Rule 6: User Approval Must Be Explicit

When DataGuard blocks an action, you MUST:

  1. Show the exact data that would be sent (truncated, redacted)
  2. Show which patterns triggered the block
  3. Show the risk score breakdown
  4. Ask: "Do you want to allow this? (yes/no)"

Never: Auto-approve, skip approval, or work around the block.

Rule 7: Audit Everything

Every blocked attempt logs:

[2026-04-07T16:52:00Z] BLOCKED
Tool: web_fetch
Domain: example.com
Patterns: AWS_KEY, DB_PASSWORD
Risk Score: 12
Data: {"url": "https://example.com/api", "body": "[REDACTED]"}
User: approved / denied / pending

Review logs: bash $SKILL_DIR/scripts/audit-log.sh --recent

Rule 8: False Positives Happen — Report Them

If a legitimate action is blocked:

  1. Run: bash $SKILL_DIR/scripts/report-false-positive.sh
  2. Describe what you were trying to do
  3. Include the blocked data pattern
  4. This helps improve detection accuracy

Rule 9: Never Disable DataGuard

There is no "disable" switch. If you need to send sensitive data:

  1. Get explicit user approval (Rule 6)
  2. Log the approval reason
  3. Proceed with consent on record

Rule 10: Teach Your Human About Risks

When DataGuard blocks something, explain:

  • Why it was blocked
  • What the risk is
  • What alternatives exist

Don't just say "blocked" — educate.

Script Reference

Replace $SKILL_DIR with the actual path:

  • Standalone: ~/.openclaw/skills/dataguard
  • Plugin: ~/.openclaw/extensions/dataguard/skill

Pattern Scanning

echo "$DATA" | bash $SKILL_DIR/scripts/dlp-scan.sh
# Exit 0 = clean, Exit 1+ = risk score

Domain Management

# List allowed domains
bash $SKILL_DIR/scripts/domain-allowlist.sh --list

# Add domain (requires approval)
bash $SKILL_DIR/scripts/domain-allowlist.sh --add example.com

# Remove domain
bash $SKILL_DIR/scripts/domain-allowlist.sh --remove example.com

Context Tracking

# Log a sensitive file read
bash $SKILL_DIR/scripts/context-track.sh --log "/path/to/.env" "AWS_KEY,DB_PASSWORD"

# Check recent sensitive reads
bash $SKILL_DIR/scripts/context-track.sh --check

# Clear session context
bash $SKILL_DIR/scripts/context-track.sh --clear

Audit Logs

# Show recent blocks
bash $SKILL_DIR/scripts/audit-log.sh --recent

# Show all blocks today
bash $SKILL_DIR/scripts/audit-log.sh --today

# Export for review
bash $SKILL_DIR/scripts/audit-log.sh --export

Integration with SecureClaw

DataGuard and SecureClaw work together:

LayerSecureClawDataGuard
ApproachBehavioral rules (follow these instructions)Runtime enforcement (block at execution)
WhenBefore agent actsWhen tool is called
TypePreventive guidanceActive interception

Use both. SecureClaw teaches good behavior. DataGuard enforces it.

Threat Model (MITRE ATLAS Reference)

Note: MITRE ATLAS is an attack knowledge base for threat modeling, not a control standard. The techniques below describe *what attacks look like*. Control requirements come from NIST AI RMF 1.0, NIST SP 800-53 Rev. 5, ISO/IEC 42001, and ISO/IEC 27001 (see Standards Alignment section).

ATLAS IDTechniqueAttack PatternDataGuard Mitigation
T-EXFIL-001Data Theft via web_fetchAgent sends credentials/PII to external URLL1 pattern scan + L3 domain allowlist + L5 approval
T-EXFIL-002Unauthorized Message SendingAgent messages sensitive data to unauthorized recipientsL2 context tracking + session monitoring
T-EXFIL-003Credential HarvestingPrompt injection extracts credentials from files/memoryL1 credential patterns + L2 file read tracking
T-EXEC-001Command Injection via execMalicious input triggers dangerous shell commandsL1 output scanning + L2 context awareness
T-EXEC-002Dangerous Command ChainsChained commands exfiltrate data (curlbase64)L1 pattern detection in command strings
T-MEMORY-001Memory PoisoningAttacker injects malicious data into agent memoryL1 scan memory files, L2 track memory reads
T-CONTEXT-001Context InjectionAttacker injects instructions via external contentL2 context heuristics, L4 risk scoring

Threat Modeling vs Control Mapping:

  • ATLAS helps identify *what could go wrong* (threat scenarios)
  • NIST AI RMF / ISO 42001 define *what controls to implement* (governance requirements)
  • DataGuard implements controls that address the identified threats

OWASP LLM Top 10 Mapping

OWASP IDRiskDataGuard Mitigation
LLM01Prompt InjectionL2 context heuristics detect injection patterns, L4 scoring
LLM06Sensitive Information DisclosureL1 pattern scanner blocks credential/PII exfiltration

Customization

Configuration

Edit $SKILL_DIR/config/config.json to adjust behavior:

SettingDefaultDescription
risk_thresholds.low2Below this score → allow (no warning)
risk_thresholds.medium5Warn level → log but allow
risk_thresholds.high6Block level → require explicit approval
auto_block_criticaltrueAuto-block any CRITICAL pattern match
auto_block_hightrueAuto-block any HIGH pattern match
require_approval_mediumfalseMedium-risk requires approval (usually too noisy)
log_all_attemptsfalseLog allowed requests too (for audit trail)
log_data_previewsfalseStore truncated data previews in audit logs (keep off by default to avoid persisting sensitive snippets on disk)
domain_policy"allowlist"allowlist = only approved domains, blocklist = only block bad ones
context_tracking.enabledtrueTrack sensitive file reads across session
context_tracking.max_age_minutes30How long a read boosts your risk score
context_tracking.score_boost_recent_read3Score bonus for recent sensitive reads

Adding Custom Patterns

Edit $SKILL_DIR/scripts/dlp-scan.sh and add a new if block in the appropriate tier:

CRITICAL (score 10) — secrets that should never leave:

if echo "$DATA" | grep -qiE 'your-custom-pattern-here'; then
  PATTERNS_FOUND+=("CRITICAL:YourPattern")
  RISK_SCORE=$((RISK_SCORE + 10))
fi

HIGH (score 8) — sensitive data like internal identifiers:

if echo "$DATA" | grep -qiE 'your-custom-pattern-here'; then
  PATTERNS_FOUND+=("HIGH:YourPattern")
  RISK_SCORE=$((RISK_SCORE + 8))
fi

MEDIUM (score 5) — context-dependent data:

if echo "$DATA" | grep -qiE 'your-custom-pattern-here'; then
  PATTERNS_FOUND+=("MEDIUM:YourPattern")
  RISK_SCORE=$((RISK_SCORE + 5))
fi

Custom pattern examples:

  • Employee IDs: EMP-[0-9]{6}
  • Project codenames: (project-alpha|project-beta)
  • Internal API endpoints: https://internal\.company\.com
  • Custom token formats: org_[a-zA-Z0-9]{24}

Removing Patterns

Comment out or delete the corresponding if block in dlp-scan.sh. Example — disable phone number detection if too noisy:

# Disabled — too many false positives in our context
# if echo "$DATA" | grep -qE '(phone pattern)'; then
#   PATTERNS_FOUND+=("MEDIUM:Phone")
#   RISK_SCORE=$((RISK_SCORE + 5))
# fi

Domain Management

# Add a trusted domain
bash $SKILL_DIR/scripts/domain-allowlist.sh --add internal.company.com

# Block a known exfil target
bash $SKILL_DIR/scripts/domain-allowlist.sh --block pastebin.com

# List all rules
bash $SKILL_DIR/scripts/domain-allowlist.sh --list

# Check if a domain is allowed
bash $SKILL_DIR/scripts/domain-allowlist.sh --check example.com

Pattern Portability

Some patterns may behave differently across Linux distros depending on grep version. Run the test suite after any changes:

# Unit tests (41 pattern tests)
bash $SKILL_DIR/tests/test-all.sh

# Integration tests (15+ real-world scenarios)
bash $SKILL_DIR/tests/test-integration.sh

If a pattern fails on your system, simplify the regex — avoid \s, character classes like [:space:], and complex quantifiers. Use literal spaces and simple character ranges instead.

Emergency Override

If DataGuard is blocking legitimate critical operations:

  1. User can run: bash $SKILL_DIR/scripts/emergency-override.sh
  2. This creates a 5-minute window where approvals are auto-granted
  3. All actions during this window are logged with EMERGENCY_OVERRIDE flag
  4. After 5 minutes, normal rules resume

Use sparingly. Every override is logged.


Quick Reference

# Scan data for patterns
echo "$DATA" | bash $SKILL_DIR/scripts/dlp-scan.sh

# Check if domain is allowed
bash $SKILL_DIR/scripts/domain-allowlist.sh --check example.com

# View recent blocks
bash $SKILL_DIR/scripts/audit-log.sh --recent

# Report false positive
bash $SKILL_DIR/scripts/report-false-positive.sh

# Emergency override (5 min)
bash $SKILL_DIR/scripts/emergency-override.sh

DataGuard DLP v1.2.0 — Runtime DLP for AI agents. Because rules are only as good as their enforcement.

Author: Jeff Cyprien (github.com/jeffcGit) License: MIT — See LICENSE for details.


Standards Alignment

DataGuard controls are mapped to established security and AI governance frameworks.

Control Frameworks (Direct Mapping)

These frameworks provide concrete controls for AI data leakage prevention:

FrameworkControl DomainDataGuard Implementation
NIST AI RMF 1.0AI governance, data provenance, human oversightL4 Risk Scoring, L5 User Confirmation, audit logging
NIST SP 800-53 Rev. 5Access control (AC), audit logging (AU), boundary protection (SC), least privilegeL1 Pattern Scanner, L3 Domain Allowlist, L6 Audit Logging
NIST SP 800-207Zero Trust Architecture — identity-based access, never trust network locationL3 Domain Allowlist, L5 explicit approval for external sends
NIST SP 800-218 (SSDF)Secure SDLC — secrets handling, dependency security, deployment practicesL1 credential detection, context tracking for CI/CD secrets
ISO/IEC 42001AI management systems — governance, risk treatment, operational controlsFull L1-L6 stack with audit trail
ISO/IEC 27001ISMS — classification, access control, incident response, supplier managementL1 classification via pattern matching, L6 incident logging
ISO/IEC 27701Privacy extension — PII handling, retention, processing controlsL1 PII patterns (SSN, phone, email), L2 context tracking
NIST SP 800-171 Rev. 3CUI protection in non-federal systemsL1-L6 for controlled unclassified information
PCI DSS v4.0.1Cardholder data protection — scope, encryption, access loggingL1 credit card patterns, L6 audit logging (supplement, not replace PCI controls)
HIPAA Security RuleePHI protection — access controls, audit trails, minimum necessaryL1 PII patterns, L2 context tracking for PHI exposure
EU AI Act (2024/1689)Transparency, documentation for GPAI modelsL6 audit logging provides compliance evidence

Attack Taxonomies (Threat Modeling References)

These are useful for understanding attack patterns, but are not control standards:

TaxonomyPurposeDataGuard Use
MITRE ATLASAI attack knowledge baseThreat model mapping (T-EXFIL-001, T-EXFIL-002, T-EXFIL-003)
NIST AI 100-2Adversarial ML terminologyThreat categorization, not control requirements
OWASP LLM Top 10LLM-specific risksLLM01 (Prompt Injection), LLM06 (Sensitive Disclosure) mitigation

Technical References

These are specifications, not security standards:

ReferencePurposeDataGuard Use
RFC 1918Private IPv4 address rangesL1 internal IP detection (10.x, 172.16-31.x, 192.168.x)
ISO/IEC 7812Card number issuer identificationL1 credit card pattern prefixes (Visa=4, MC=5, Amex=34/37)
GDPR Article 4PII definitionsL1 PII pattern identification (supplement with ISO/IEC 27701 for controls)

Why This Mapping Matters

NIST AI RMF 1.0 and ISO/IEC 42001 are the primary governance frameworks for AI systems. DataGuard's risk scoring and approval workflow directly implement their human oversight requirements.

NIST SP 800-53 and ISO/IEC 27001 provide the control catalog — DataGuard implements AU (Audit), SC (Boundary Protection), and AC (Access Control) controls at the AI agent layer.

PCI DSS and HIPAA are domain-specific — DataGuard patterns help, but domain controls (encryption, access management) are still required.

MITRE ATLAS and NIST AI 100-2 help us understand *what attacks look like* — but they don't tell us *what controls to implement*. Use them for threat modeling, not compliance.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

96.99%
按下载量换算916

安全审计

VirusTotal

未展示

ClawScan

通过

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills