当用户提到以下关键词时,使用此skill:
用户说法执行命令说明"安全检查"dbskiter --output-mode=ai --database=<name> security audit完整安全审计"有注入风险吗"dbskiter --output-mode=ai --database=<name> security sql-injection "<SQL>"SQL注入检测"有敏感数据吗"dbskiter --output-mode=ai --database=<name> security sensitive-data敏感数据扫描"安全评分多少"dbskiter --output-mode=ai --database=<name> security score安全评分"检查权限"dbskiter --output-mode=ai --database=<name> security permissions权限审计"登录安全"dbskiter --output-mode=ai --database=<name> security login-security登录安全监控"审计日志"dbskiter --output-mode=ai --database=<name> security audit-log审计日志分析"高危操作"dbskiter --output-mode=ai --database=<name> security high-risk高危操作检测"密码策略"dbskiter --output-mode=ai --database=<name> security password-policy密码策略检查"弱密码"dbskiter --output-mode=ai --database=<name> security weak-passwords弱密码检查"配置安全"dbskiter --output-mode=ai --database=<name> security config配置安全审计
bash
dbskiter --output-mode=ai --database=<数据库名> security audit
输出:安全评分 + 所有风险项 + 修复建议
bash
dbskiter --output-mode=ai --database=<数据库名> security sql-injection "SELECT * FROM users WHERE id = %s" --params='{"id": "1 OR 1=1"}'
输出:风险评分、注入类型、修复建议
bash
dbskiter --output-mode=ai --database=<数据库名> security sensitive-data
默认行为:扫描所有表,识别身份证、手机号、邮箱等
可选参数:
--tables=users,orders:只扫描指定表--sample-size=100:每表采样100行(默认100)bash
dbskiter --output-mode=ai --database=<数据库名> security score
输出:总体评分、各维度得分、扣分项
bash
dbskiter --output-mode=ai --database=<数据库名> security permissions
输出:用户权限列表、过度授权警告
bash
dbskiter --output-mode=ai --database=<数据库名> security login-security --hours=24
输出:登录失败统计、异常登录IP、暴力破解检测
可选参数:
--hours=24:检查最近多少小时(默认24)bash
dbskiter --output-mode=ai --database=<数据库名> security audit-log --hours=24 --users=admin,root
输出:用户操作记录、DDL变更、权限变更
可选参数:
--hours=24:分析最近多少小时(默认24)--users=admin,root:指定用户(逗号分隔)bash
dbskiter --output-mode=ai --database=<数据库名> security high-risk --hours=24
输出:DROP/DELETE/TRUNCATE等高危操作记录
可选参数:
--hours=24:检查最近多少小时(默认24)bash
dbskiter --output-mode=ai --database=<数据库名> security password-policy
输出:当前密码策略、合规性检查、改进建议
bash
dbskiter --output-mode=ai --database=<数据库名> security weak-passwords
输出:弱密码用户列表、空密码用户、风险等级
bash
dbskiter --output-mode=ai --database=<数据库名> security config
输出:配置安全问题、推荐值、风险等级
text
步骤1:执行 dbskiter --output-mode=ai --database=<name> security audit
步骤2:解读AI返回的结构化数据(raw_metrics/rule_flags/context/reference_values/ai_hints)
步骤3:按严重程度列出需要修复的问题
步骤4:提供修复命令或建议
text
步骤1:执行 dbskiter --output-mode=ai --database=<name> security sql-injection "<SQL>" --params='...'
步骤2:解读AI返回的rule_flags和raw_metrics中的风险信息
步骤3:如果风险评分>70,详细说明风险点
步骤4:提供安全的写法(参数化查询)
text
步骤1:执行 dbskiter --output-mode=ai --database=<name> security sensitive-data
步骤2:解读AI返回的raw_metrics中的敏感字段列表
步骤3:列出发现的敏感字段
步骤4:建议加密或脱敏方案
json
{
"summary": "安全评分72分,发现5个风险项",
"score": 72,
"level": "C",
"risk_count": 5,
"risks": [
{
"severity": "CRITICAL",
"category": "sensitive_data",
"message": "users.phone包含手机号,未加密",
"suggestion": "对手机号字段加密存储"
},
{
"severity": "HIGH",
"category": "permissions",
"message": "用户app_user拥有SUPER权限",
"suggestion": "移除SUPER权限,只授予必要权限"
}
]
}
AI应该关注:
score:安全评分(<80需要关注)level:安全等级(A/B/C/D)risks 中severity为"CRITICAL"或"HIGH"的项json
{
"summary": "风险评分85分,检测到永真条件注入",
"risk_score": 85,
"level": "HIGH",
"injection_types": ["tautology"],
"suggestions": [
"使用参数化查询替代字符串拼接",
"对用户输入进行严格验证"
]
}
AI应该关注:
risk_score:风险评分(>70为高风险)injection_types:注入类型suggestions:修复建议