|
|
|
@ -84,6 +84,7 @@
|
|
|
|
|
<div class="monitor-detail">
|
|
|
|
|
<div
|
|
|
|
|
v-for="(item, index) in securityMonitor.detail"
|
|
|
|
|
v-show="index<3"
|
|
|
|
|
:key="index"
|
|
|
|
|
class="monitor-detail-item"
|
|
|
|
|
>
|
|
|
|
@ -111,9 +112,9 @@
|
|
|
|
|
:data-obj="'安全监测'"
|
|
|
|
|
@click="getAttackSource(item.id)"
|
|
|
|
|
>
|
|
|
|
|
<span :data-obj="'安全监测'">{{ item.date }}</span>
|
|
|
|
|
<span :data-obj="'安全监测'">{{ item.ip }}</span>
|
|
|
|
|
<span :data-obj="'安全监测'" :title="item.type">{{ item.type }}</span>
|
|
|
|
|
<span>{{ item.attackTime }}</span>
|
|
|
|
|
<span>{{ item.attackedIp }}</span>
|
|
|
|
|
<span>{{ $filterDict('tc_attack_type',item.attackType) }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</vue-seamless-scroll>
|
|
|
|
|
</div>
|
|
|
|
@ -177,7 +178,7 @@
|
|
|
|
|
<div class="dialog_little_title">攻击类型:</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="18">
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.attackType }}</div>
|
|
|
|
|
<div class="dialog_little_ctn">{{ $filterDict('tc_attack_type',tableDataPop.attackType) }}</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row>
|
|
|
|
@ -208,26 +209,26 @@
|
|
|
|
|
</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row>
|
|
|
|
|
<!-- <el-row>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_title">受攻击目标类型:</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="18">
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.attackedType }}</div>
|
|
|
|
|
<div class="dialog_little_ctn">{{ $filterDict('tc_attack_type',tableDataPop.attackType) }}</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</el-row> -->
|
|
|
|
|
<el-row>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_title">网站安全等级:</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.webLevel }}</div>
|
|
|
|
|
<div class="dialog_little_ctn">{{ $filterDict('tc_net_safety_level',tableDataPop.level) }}</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_title">联系电话:</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.contactTel }}</div>
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.phoneNum }}</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row>
|
|
|
|
@ -236,14 +237,14 @@
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_ctn">
|
|
|
|
|
{{ tableDataPop.subordinateDept }}
|
|
|
|
|
{{ tableDataPop.affUnit }}
|
|
|
|
|
</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_title">联系人:</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.contactName }}</div>
|
|
|
|
|
<div class="dialog_little_ctn">{{ tableDataPop.linkMan }}</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</template>
|
|
|
|
@ -293,7 +294,9 @@ import vueSeamlessScroll from 'vue-seamless-scroll'
|
|
|
|
|
import ModuleTitle from '../../common/ModuleTitle.vue'
|
|
|
|
|
import attackSituation from './attackSituation.vue'
|
|
|
|
|
import ExcelTable from '@/components/ExcelTable'
|
|
|
|
|
import { listSystem, listUnit, listWeb, listIDCunit, listSource } from '@/api/zongzhi/st.js'
|
|
|
|
|
import { listSystem, listUnit, listWeb, listIDCunit, listSource, saftyscreenSupervise, saftyscreenSafety,
|
|
|
|
|
listDetection, getDetection
|
|
|
|
|
} from '@/api/zongzhi/st.js'
|
|
|
|
|
import {
|
|
|
|
|
yingTanZhen,
|
|
|
|
|
yingTanZhenKeyValue,
|
|
|
|
@ -339,7 +342,12 @@ export default {
|
|
|
|
|
pageSize: 10
|
|
|
|
|
}, // 分页查询条件
|
|
|
|
|
total: 0, // 总数
|
|
|
|
|
|
|
|
|
|
time: null,
|
|
|
|
|
checkTotal: 0,
|
|
|
|
|
checkParams: {
|
|
|
|
|
pageNum: 1,
|
|
|
|
|
pageSize: 10
|
|
|
|
|
},
|
|
|
|
|
//
|
|
|
|
|
dialogWidth: 0,
|
|
|
|
|
dialogStatus: false,
|
|
|
|
@ -388,100 +396,100 @@ export default {
|
|
|
|
|
superviseObject: [
|
|
|
|
|
{
|
|
|
|
|
title: '政府网站',
|
|
|
|
|
num: 446,
|
|
|
|
|
num: 0,
|
|
|
|
|
className: 'item1',
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-政府网站.png')
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '监管单位',
|
|
|
|
|
num: 2098,
|
|
|
|
|
num: 0,
|
|
|
|
|
className: 'item2',
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-监管单位.png')
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '网站监测',
|
|
|
|
|
num: 2658,
|
|
|
|
|
num: 0,
|
|
|
|
|
className: 'item3',
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-网站监测.png')
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: 'IDC单位',
|
|
|
|
|
num: 1,
|
|
|
|
|
num: 0,
|
|
|
|
|
className: 'item4',
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-IDC单位.png')
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '等保系统',
|
|
|
|
|
num: 181,
|
|
|
|
|
num: 0,
|
|
|
|
|
className: 'item5',
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-等保系统.png')
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '等保单位',
|
|
|
|
|
num: 109,
|
|
|
|
|
num: 0,
|
|
|
|
|
className: 'item6',
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-等保单位.png')
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
securityMonitor: {
|
|
|
|
|
url: require('@/assets/privateOrder/general/icon-网络攻击.png'),
|
|
|
|
|
title: '网络攻击(万)',
|
|
|
|
|
total: 3225.5,
|
|
|
|
|
title: '网络攻击(次)',
|
|
|
|
|
total: 0,
|
|
|
|
|
detail: [
|
|
|
|
|
{
|
|
|
|
|
title: '入侵攻击',
|
|
|
|
|
num: 1455.92
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '恶意扫描',
|
|
|
|
|
num: 2325.24
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '僵木蠕病毒',
|
|
|
|
|
num: 796.152
|
|
|
|
|
}
|
|
|
|
|
// {
|
|
|
|
|
// title: '入侵攻击',
|
|
|
|
|
// num: 1455.92
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// title: '恶意扫描',
|
|
|
|
|
// num: 2325.24
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// title: '僵木蠕病毒',
|
|
|
|
|
// num: 796.152
|
|
|
|
|
// }
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
tableDataPop: {
|
|
|
|
|
id: 1,
|
|
|
|
|
attackTime: '2023-07-30',
|
|
|
|
|
sourceIp: '192.168.0.114',
|
|
|
|
|
attackType: '网络爬虫',
|
|
|
|
|
attackIpRegion: '美国',
|
|
|
|
|
attackedIp: '192.168.5.0',
|
|
|
|
|
attackedIpRegion: '太仓',
|
|
|
|
|
attackedType: '网络爬虫',
|
|
|
|
|
webLevel: '1级别',
|
|
|
|
|
contactTel: '18703885598',
|
|
|
|
|
subordinateDept: '网络安全部',
|
|
|
|
|
contactName: '张三'
|
|
|
|
|
// id: 1,
|
|
|
|
|
// attackTime: '2023-07-30',
|
|
|
|
|
// sourceIp: '192.168.0.114',
|
|
|
|
|
// attackType: '网络爬虫',
|
|
|
|
|
// attackIpRegion: '美国',
|
|
|
|
|
// attackedIp: '192.168.5.0',
|
|
|
|
|
// attackedIpRegion: '太仓',
|
|
|
|
|
// attackedType: '网络爬虫',
|
|
|
|
|
// webLevel: '1级别',
|
|
|
|
|
// contactTel: '18703885598',
|
|
|
|
|
// subordinateDept: '网络安全部',
|
|
|
|
|
// contactName: '张三'
|
|
|
|
|
},
|
|
|
|
|
tableData: [
|
|
|
|
|
{
|
|
|
|
|
date: '2022-02-13',
|
|
|
|
|
ip: '荷兰/178.128.242.134',
|
|
|
|
|
type: '挖矿'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
date: '2022-02-13',
|
|
|
|
|
ip: '荷兰/178.128.242.134',
|
|
|
|
|
type: '挖矿'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
date: '2022-02-13',
|
|
|
|
|
ip: '杭州市/60.190.232.14',
|
|
|
|
|
type: '扫描行为'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
date: '2022-02-13',
|
|
|
|
|
ip: '荷兰/178.128.242.134',
|
|
|
|
|
type: '挖矿'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
date: '2022-02-13',
|
|
|
|
|
ip: '荷兰/178.128.242.134',
|
|
|
|
|
type: '挖矿'
|
|
|
|
|
}
|
|
|
|
|
// {
|
|
|
|
|
// date: '2022-02-13',
|
|
|
|
|
// ip: '荷兰/178.128.242.134',
|
|
|
|
|
// type: '挖矿'
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// date: '2022-02-13',
|
|
|
|
|
// ip: '荷兰/178.128.242.134',
|
|
|
|
|
// type: '挖矿'
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// date: '2022-02-13',
|
|
|
|
|
// ip: '杭州市/60.190.232.14',
|
|
|
|
|
// type: '扫描行为'
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// date: '2022-02-13',
|
|
|
|
|
// ip: '荷兰/178.128.242.134',
|
|
|
|
|
// type: '挖矿'
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// date: '2022-02-13',
|
|
|
|
|
// ip: '荷兰/178.128.242.134',
|
|
|
|
|
// type: '挖矿'
|
|
|
|
|
// }
|
|
|
|
|
],
|
|
|
|
|
excelData: null,
|
|
|
|
|
excelDataHeader: null
|
|
|
|
@ -505,9 +513,20 @@ export default {
|
|
|
|
|
destroyed() {
|
|
|
|
|
clearInterval(this.attackTime) // 清除定时器
|
|
|
|
|
clearInterval(this.tableTime)
|
|
|
|
|
clearInterval(this.time)
|
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
this.changeBtn() // 切换
|
|
|
|
|
this.getSaftyscreenSafety()
|
|
|
|
|
this.getListDetection()
|
|
|
|
|
this.time = setInterval(() => { // 安全隐患列表
|
|
|
|
|
if (this.tableData.length >= this.checkTotal) {
|
|
|
|
|
clearInterval(this.time)
|
|
|
|
|
} else {
|
|
|
|
|
this.checkParams.pageNum = this.checkParams.pageNum + 1
|
|
|
|
|
this.getListDetection()
|
|
|
|
|
}
|
|
|
|
|
}, 6000)
|
|
|
|
|
// this.getDataSource() // 数据来源
|
|
|
|
|
// 左下角数据滚动
|
|
|
|
|
// getLatest().then((res) => {
|
|
|
|
@ -565,9 +584,43 @@ export default {
|
|
|
|
|
},
|
|
|
|
|
async getAttackSource(id) {
|
|
|
|
|
this.dialogWidth = '1000px'
|
|
|
|
|
// await this.AttackClick(id)
|
|
|
|
|
this.dialogStatus = true
|
|
|
|
|
getDetection(id).then(res => {
|
|
|
|
|
this.tableDataPop = res.data
|
|
|
|
|
this.dialogType = '安全监测'
|
|
|
|
|
this.dialogStatus = true
|
|
|
|
|
})
|
|
|
|
|
// await this.AttackClick(id)
|
|
|
|
|
},
|
|
|
|
|
/**
|
|
|
|
|
* 安全监管List
|
|
|
|
|
*/
|
|
|
|
|
getListDetection() {
|
|
|
|
|
listDetection(this.checkParams).then(res => {
|
|
|
|
|
this.tableData = [...this.tableData, ...res.rows]
|
|
|
|
|
this.checkTotal = res.total
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
/**
|
|
|
|
|
* 安全监测攻击类型统计
|
|
|
|
|
*/
|
|
|
|
|
getSaftyscreenSafety() {
|
|
|
|
|
saftyscreenSafety().then(res => {
|
|
|
|
|
this.securityMonitor.detail = res.data.list.map((item, index) => {
|
|
|
|
|
this.securityMonitor.total = this.securityMonitor.total + item.count
|
|
|
|
|
return {
|
|
|
|
|
title: this.$filterDict('tc_attack_type', item.attackType),
|
|
|
|
|
num: item.count
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
/**
|
|
|
|
|
* 监管对象各类别统计量
|
|
|
|
|
*/
|
|
|
|
|
getSaftyscreenSupervise() {
|
|
|
|
|
saftyscreenSupervise().then(res => {
|
|
|
|
|
// this.superviseObject[4].num = res.data.
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
/**
|
|
|
|
|
* 表格参数重置
|
|
|
|
|