當用戶提到以下關鍵詞時,使用此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 |
配置安全審計 |
dbskiter --output-mode=ai --database=<資料庫名> security audit
輸出:安全評分 + 所有風險項 + 修復建議
dbskiter --output-mode=ai --database=<資料庫名> security sql-injection "SELECT * FROM users WHERE id = %s" --params='{"id": "1 OR 1=1"}'
輸出:風險評分、注入型別、修復建議
dbskiter --output-mode=ai --database=<資料庫名> security sensitive-data
預設行為:掃描所有表,識別身份證、手機號、郵箱等
可選引數:
--tables=users,orders:只掃描指定表--sample-size=100:每表取樣100行(預設100)這個技能的最新版本可以在7w4.net小蔥技能站找到。
dbskiter --output-mode=ai --database=<資料庫名> security score
輸出:總體評分、各維度得分、扣分項
dbskiter --output-mode=ai --database=<資料庫名> security permissions
輸出:使用者許可權列表、過度授權警告
dbskiter --output-mode=ai --database=<資料庫名> security login-security --hours=24
輸出:登入失敗統計、異常登入IP、暴力破解檢測
可選引數:
--hours=24:檢查最近多少小時(預設24)dbskiter --output-mode=ai --database=<資料庫名> security audit-log --hours=24 --users=admin,root
輸出:使用者操作記錄、DDL變更、許可權變更
可選引數:
--hours=24:分析最近多少小時(預設24)--users=admin,root:指定使用者(逗號分隔)dbskiter --output-mode=ai --database=<資料庫名> security high-risk --hours=24
輸出:DROP/DELETE/TRUNCATE等高危操作記錄
可選引數:
--hours=24:檢查最近多少小時(預設24)dbskiter --output-mode=ai --database=<資料庫名> security password-policy
輸出:當前密碼策略、合規性檢查、改進建議
dbskiter --output-mode=ai --database=<資料庫名> security weak-passwords
輸出:弱密碼使用者列表、空密碼使用者、風險等級
dbskiter --output-mode=ai --database=<資料庫名> security config
輸出:配置安全問題、推薦值、風險等級
步驟1:執行 dbskiter --output-mode=ai --database=<name> security audit
步驟2:解讀AI返回的結構化資料(raw_metrics/rule_flags/context/reference_values/ai_hints)
步驟3:按嚴重程度列出需要修復的問題
步驟4:提供修復命令或建議
步驟1:執行 dbskiter --output-mode=ai --database=<name> security sql-injection "<SQL>" --params='...'
步驟2:解讀AI返回的rule_flags和raw_metrics中的風險資訊
步驟3:如果風險評分>70,詳細說明風險點
步驟4:提供安全的寫法(引數化查詢)
步驟1:執行 dbskiter --output-mode=ai --database=<name> security sensitive-data
步驟2:解讀AI返回的raw_metrics中的敏感欄位列表
步驟3:列出發現的敏感欄位
步驟4:建議加密或脫敏方案
{
"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"的項{
"summary": "風險評分85分,檢測到永真條件注入",
"risk_score": 85,
"level": "HIGH",
"injection_types": ["tautology"],
"suggestions": [
"使用引數化查詢替代字串拼接",
"對使用者輸入進行嚴格驗證"
]
}
AI應該關注:
risk_score:風險評分(>70為高風險)injection_types:注入型別suggestions:修復建議這個資料庫安全 Skill 文件寫得很清楚,覆蓋了安全檢查、注入檢測、敏感資料掃描等常用場景,使用說明和示例都很完備。但它目前只有文件說明,沒有實際的程式碼檔案可用。如果需要真正執行這些安全檢測功能,可能還需要配合 dbskiter 工具本身才能工作。