30 lines
1.6 KiB
JavaScript
30 lines
1.6 KiB
JavaScript
var express = require('express');
|
|
var router = express.Router();
|
|
var alerts = require('../model/alerts.js');
|
|
var globe = require('../model/globedata.js');
|
|
|
|
/* GET home page. */
|
|
router.get('/alerts', function(req, res, next) {
|
|
res.setHeader("Content-Type", "application/json");
|
|
|
|
res.json(globe.getData());
|
|
});
|
|
|
|
router.post('/ws', async function(req, res, next) {
|
|
for (const item of req.body.alerts) {
|
|
var log = {
|
|
src: item.srv_ip,
|
|
dest: item.cli_ip,
|
|
}
|
|
console.log(log)
|
|
const uid = alerts.addAlert(item.first_seen, item.srv_city_name, item.ip_version, item.action, item.pool_id, item.srv_continent_name, item.score, item.entity_val, item.vlan_id, item.cli2srv_bytes, item.cli_country_name, item.entity_id, item.srv_asn, item.l7_proto, item.is_cli_attacker, item.srv_name, item.srv_ip, item.proto, item.json, item.srv_country_name, item.community_id, item.alert_id, item.is_srv_attacker, item.srv_blacklisted, item.alerts_map, item.srv_os, item.cli_localhost, item.cli_asn, item.srv2cli_packets, item.cli2srv_packets, item.tstamp, item.cli_name, item.cli_continent_name, item.srv2cli_bytes, item.l7_cat, item.ifid, item.observation_point_id, item.srv_localhost, item.cli_port, item.cli_blacklisted, item.dns_last_query, item.is_flow_alert, item.srv_port, item.l7_master_proto, item.is_cli_victim, item.cli_ip, item.cli_city_name, item.cli_os, item.is_srv_victim);
|
|
const src = item.srv_ip;
|
|
const dest = item.cli_ip;
|
|
if (typeof src !== 'undefined' || typeof dest !== 'undefined')
|
|
await globe.addArc(src, dest, uid)
|
|
}
|
|
res.sendStatus(200);
|
|
})
|
|
|
|
module.exports = router;
|