360 Secure SkillHub
360 安全技能中心

skills-firewall

该技能提供技能安全防火墙,包含扫描、拦截决策和报告生成三类脚本。可扫描单个或多个技能目录,检测代码注入、命令执行、凭据暴露等风险,输出威胁等级并执行允许、警告、阻止或隔离决策,支持文本、JSON、HTML 报告及 YAML 配置。

huzibbs
huzibbs
热度 68.84
最近更新 2026-05-11 17:28:04
分类:安全依赖:代码执行 / 读写文件应用场景:代码审查 / 自动化脚本 / 报告撰写 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add skills-firewall
Metadata
name
skills-firewall
description
Security firewall for skills that automatically blocks and filters malicious or potentially harmful skills. Use when: (1) Scanning skills for security threats. (2) Checking if a skill is safe to use. (3) Filtering multiple skills based on security rules. (4) Generating security reports for skills. (5) Managing allowed/blocked skill lists. (6) Reviewing skills before installation or execution.

Skills Firewall

A security firewall that automatically blocks and filters malicious or potentially harmful skills by analyzing code patterns, detecting security threats, and enforcing security policies.

Quick Start

Scan a Single Skill

python scripts/scan_skill.py /path/to/skill

Check Firewall Decision

python scripts/firewall_check.py /path/to/skill

Generate Security Report

python scripts/generate_report.py /path/to/skills --format text

Core Workflows

1. Security Scanning

Scan skills for potential security threats:

# Scan single skill
python scripts/scan_skill.py ./my-skill

# Scan all skills in directory
python scripts/scan_skill.py ./skills

# JSON output for automation
python scripts/scan_skill.py ./my-skill --json

Threat Levels:

  • SAFE - No security concerns
  • LOW - Minor concerns, generally safe
  • MEDIUM - Moderate concerns, review recommended
  • HIGH - Significant risks, blocking recommended
  • CRITICAL - Severe threats, must block

2. Firewall Filtering

Check and filter skills based on security rules:

# Check single skill
python scripts/firewall_check.py ./my-skill

# Filter all skills
python scripts/firewall_check.py ./skills

# Add to allowed list
python scripts/firewall_check.py ./my-skill --allow

# Add to blocked list
python scripts/firewall_check.py ./my-skill --block

Actions:

  • allow - Skill passes firewall
  • warn - Skill has warnings but allowed
  • block - Skill is blocked
  • quarantine - Skill isolated for review

3. Security Reports

Generate comprehensive security reports:

# Text report
python scripts/generate_report.py ./skills

# JSON report
python scripts/generate_report.py ./skills --format json

# HTML report
python scripts/generate_report.py ./skills --format html --output report.html

Detection Categories

The firewall detects threats in these categories:

Category Examples Severity
Code Injection eval(), exec(), import() HIGH
Command Execution subprocess shell=True, os.system() HIGH
Credential Exposure Hardcoded passwords, API keys CRITICAL
Network Communication HTTP requests, socket connections MEDIUM
File Operations File deletion, modification MEDIUM
Deserialization pickle.loads, unsafe yaml.load HIGH
Privilege Escalation sudo, chmod 777 HIGH
Obfuscation Base64 decoding, encoding LOW

Configuration

Export/Import Config

# Export current config
python scripts/firewall_check.py ./skills --export-config firewall.yaml

# Use custom config
python scripts/firewall_check.py ./skills --config firewall.yaml

Config File Format

default_action: warn
allowed_skills:
  - skill-creator
  - weather
blocked_skills:
  - malicious-skill
quarantine_dir: ./quarantine
rules:
  - name: block_eval
    description: Block eval() usage
    patterns:
      - "eval("
    action: block
    enabled: true

Reference Documentation

Programmatic Usage

from scan_skill import scan_skill, ThreatLevel
from firewall_check import SkillsFirewall, ActionType

# Scan a skill
result = scan_skill("/path/to/skill")
print(f"Threat Level: {result.threat_level}")
print(f"Is Safe: {result.is_safe}")

# Use firewall
firewall = SkillsFirewall()
decision = firewall.check_skill("/path/to/skill")
print(f"Action: {decision.action}")
print(f"Reason: {decision.reason}")

# Manage lists
firewall.add_allowed_skill("trusted-skill")
firewall.add_blocked_skill("malicious-skill")

# Create custom rule
firewall.create_rule(
    name="block_custom_pattern",
    description="Block custom dangerous pattern",
    patterns=["dangerous_function("],
    action=ActionType.BLOCK
)

Best Practices

  1. Scan Before Use: Always scan new skills before installation
  2. Review Warnings: Investigate warning-level findings
  3. Update Rules: Keep detection patterns current
  4. Document Exceptions: Record why skills are allowed/blocked
  5. Regular Audits: Run periodic security scans
  6. Use Reports: Generate reports for compliance and review