mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-07-07 04:58:03 +02:00
Add files via upload
This commit is contained in:
@@ -636,16 +636,16 @@
|
||||
<div class="modal-header">
|
||||
<h2>攻击链可视化</h2>
|
||||
<div class="modal-header-actions">
|
||||
<button class="btn-secondary" onclick="regenerateAttackChain()" title="重新生成攻击链(包含最新对话内容)" style="background: #007bff; color: white; border-color: #007bff; margin-right: 8px;">
|
||||
<button class="btn-primary attack-chain-action-btn" onclick="regenerateAttackChain()" title="重新生成攻击链(包含最新对话内容)">
|
||||
🔄 重新生成
|
||||
</button>
|
||||
<button class="btn-secondary" onclick="exportAttackChain('png')" title="导出为PNG">
|
||||
<button class="btn-secondary attack-chain-action-btn" onclick="exportAttackChain('png')" title="导出为PNG">
|
||||
📥 PNG
|
||||
</button>
|
||||
<button class="btn-secondary" onclick="exportAttackChain('svg')" title="导出为SVG">
|
||||
<button class="btn-secondary attack-chain-action-btn" onclick="exportAttackChain('svg')" title="导出为SVG">
|
||||
📥 SVG
|
||||
</button>
|
||||
<button class="btn-secondary" onclick="refreshAttackChain()" title="刷新当前攻击链(不重新生成)">
|
||||
<button class="btn-secondary attack-chain-action-btn" onclick="refreshAttackChain()" title="刷新当前攻击链(不重新生成)">
|
||||
↻ 刷新
|
||||
</button>
|
||||
<span class="modal-close" onclick="closeAttackChainModal()">×</span>
|
||||
@@ -656,12 +656,10 @@
|
||||
<div class="attack-chain-info">
|
||||
<span id="attack-chain-stats">节点: 0 | 边: 0</span>
|
||||
</div>
|
||||
<div class="attack-chain-filters" style="margin: 8px 0; display: flex; gap: 8px; align-items: center; flex-wrap: wrap;">
|
||||
<div class="attack-chain-filters">
|
||||
<input type="text" id="attack-chain-search" placeholder="搜索节点..."
|
||||
style="padding: 6px 12px; border: 1px solid #ddd; border-radius: 4px; font-size: 0.875rem; min-width: 200px;"
|
||||
oninput="filterAttackChainNodes(this.value)">
|
||||
<select id="attack-chain-type-filter"
|
||||
style="padding: 6px 12px; border: 1px solid #ddd; border-radius: 4px; font-size: 0.875rem;"
|
||||
onchange="filterAttackChainByType(this.value)">
|
||||
<option value="all">所有类型</option>
|
||||
<option value="target">目标</option>
|
||||
@@ -669,7 +667,6 @@
|
||||
<option value="vulnerability">漏洞</option>
|
||||
</select>
|
||||
<select id="attack-chain-risk-filter"
|
||||
style="padding: 6px 12px; border: 1px solid #ddd; border-radius: 4px; font-size: 0.875rem;"
|
||||
onchange="filterAttackChainByRisk(this.value)">
|
||||
<option value="all">所有风险</option>
|
||||
<option value="high">高风险 (80-100)</option>
|
||||
@@ -677,8 +674,7 @@
|
||||
<option value="medium">中风险 (40-59)</option>
|
||||
<option value="low">低风险 (0-39)</option>
|
||||
</select>
|
||||
<button class="btn-secondary" onclick="resetAttackChainFilters()"
|
||||
style="padding: 6px 12px; font-size: 0.875rem;">
|
||||
<button class="btn-secondary" onclick="resetAttackChainFilters()">
|
||||
重置筛选
|
||||
</button>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user