First update
0
app/frontend/dist/.vscode/settings.json
vendored
Normal file → Executable file
1
app/frontend/dist/css/app.f82c83ee.css
vendored
0
app/frontend/dist/css/chunk-0d175fb6.3b87afd9.css
vendored
Normal file → Executable file
@ -1 +0,0 @@
|
||||
#app{overflow-y:visible}
|
0
app/frontend/dist/css/chunk-vendors.466ce708.css
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Exo.73922868.ttf
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Exo.e105e55b.woff2
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Roboto-Regular.1cfd1aa3.woff
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Roboto-Regular.2222f1fd.woff2
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Roboto-Regular.3e4fe426.ttf
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Roboto-Regular.74670bfc.otf
vendored
Normal file → Executable file
0
app/frontend/dist/fonts/Roboto-Regular.89207cf8.eot
vendored
Normal file → Executable file
0
app/frontend/dist/img/Roboto-Regular.f886f6f8.svg
vendored
Normal file → Executable file
Before Width: | Height: | Size: 784 KiB After Width: | Height: | Size: 784 KiB |
0
app/frontend/dist/img/icon_spinner.57ed8eec.svg
vendored
Normal file → Executable file
Before Width: | Height: | Size: 970 B After Width: | Height: | Size: 970 B |
0
app/frontend/dist/img/icon_success.cfd1f9ca.svg
vendored
Normal file → Executable file
Before Width: | Height: | Size: 377 B After Width: | Height: | Size: 377 B |
0
app/frontend/dist/img/icon_usb.21f6dada.svg
vendored
Normal file → Executable file
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
2
app/frontend/dist/index.html
vendored
Normal file → Executable file
@ -1 +1 @@
|
||||
<!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Vue App</title><link href="/css/chunk-0d175fb6.3b87afd9.css" rel="prefetch"><link href="/css/chunk-7cb613d5.030f6319.css" rel="prefetch"><link href="/js/chunk-0d175fb6.56d23ddc.js" rel="prefetch"><link href="/js/chunk-2d0b23b3.3d66404f.js" rel="prefetch"><link href="/js/chunk-2d0b6d35.9c950e8a.js" rel="prefetch"><link href="/js/chunk-2d0baeaa.9d6eca74.js" rel="prefetch"><link href="/js/chunk-2d0cfa15.805b5619.js" rel="prefetch"><link href="/js/chunk-2e6079ad.3b1ceaed.js" rel="prefetch"><link href="/js/chunk-7cb613d5.35dd63f5.js" rel="prefetch"><link href="/css/app.f82c83ee.css" rel="preload" as="style"><link href="/css/chunk-vendors.466ce708.css" rel="preload" as="style"><link href="/js/app.13d7f657.js" rel="preload" as="script"><link href="/js/chunk-vendors.3521aad3.js" rel="preload" as="script"><link href="/css/chunk-vendors.466ce708.css" rel="stylesheet"><link href="/css/app.f82c83ee.css" rel="stylesheet"></head><body><div id="app"></div><script src="/js/chunk-vendors.3521aad3.js"></script><script src="/js/app.13d7f657.js"></script></body></html>
|
||||
<!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Vue App</title><link href="/css/chunk-0d175fb6.3b87afd9.css" rel="prefetch"><link href="/css/chunk-26111425.030f6319.css" rel="prefetch"><link href="/js/chunk-0d175fb6.e0662e09.js" rel="prefetch"><link href="/js/chunk-26111425.a6e3f63c.js" rel="prefetch"><link href="/js/chunk-2d0b23b3.2995d2b5.js" rel="prefetch"><link href="/js/chunk-2d0b6d35.34f80742.js" rel="prefetch"><link href="/js/chunk-2d0baeaa.f849dd44.js" rel="prefetch"><link href="/js/chunk-2d0cfa15.8db26e9f.js" rel="prefetch"><link href="/js/chunk-2e6079ad.3f383516.js" rel="prefetch"><link href="/css/app.9dd9f6a0.css" rel="preload" as="style"><link href="/css/chunk-vendors.466ce708.css" rel="preload" as="style"><link href="/js/app.ee76b359.js" rel="preload" as="script"><link href="/js/chunk-vendors.0c96780d.js" rel="preload" as="script"><link href="/css/chunk-vendors.466ce708.css" rel="stylesheet"><link href="/css/app.9dd9f6a0.css" rel="stylesheet"></head><body><div id="app"></div><script src="/js/chunk-vendors.0c96780d.js"></script><script src="/js/app.ee76b359.js"></script></body></html>
|
2
app/frontend/dist/js/app.13d7f657.js
vendored
1
app/frontend/dist/js/app.13d7f657.js.map
vendored
@ -1,2 +0,0 @@
|
||||
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-0d175fb6"],{"192d":function(e,s,t){"use strict";t("fd7d")},9152:function(e,s,t){"use strict";t.r(s);var a=function(){var e=this,s=e._self._c;return s("div",{staticClass:"wrapper"},[e.save_usb&&e.init?s("div",{staticClass:"center"},[s("div",{staticClass:"canvas-anim",class:{"anim-connect":!e.saved&&!e.usb},on:{click:function(s){return e.new_capture()}}},[!e.saved&&e.usb?s("div",{staticClass:"icon-spinner"}):e._e(),e.saved?s("div",{staticClass:"icon-success"}):e._e(),s("div",{staticClass:"icon-usb"}),s("div",{staticClass:"icon-usb-plug"})]),e.saved||e.usb?e._e():s("p",{staticClass:"legend"},[s("br"),e._v(e._s(e.$t("save-capture.please_connect")))]),!e.saved&&e.usb?s("p",{staticClass:"legend"},[s("br"),e._v(e._s(e.$t("save-capture.we_are_saving")))]):e._e(),e.saved?s("p",{staticClass:"legend"},[s("br"),e._v(e._s(e.$t("save-capture.tap_msg")))]):e._e()]):!e.save_usb&&e.init?s("div",{staticClass:"center"},[s("div",[s("p",{staticClass:"legend"},[e._v(e._s(e.$t("save-capture.capture_download"))),s("br"),s("br"),s("br")]),s("button",{staticClass:"btn btn-primary",on:{click:function(s){return e.new_capture()}}},[e._v(e._s(e.$t("save-capture.start_capture_btn")))]),s("iframe",{staticClass:"frame-download",attrs:{src:e.download_url}})])]):e._e()])},n=[],c=(t("14d9"),t("bc3a")),i=t.n(c),u=t("a18c"),o={name:"save-capture",components:{},data(){return{usb:!1,saved:!1,save_usb:!1,init:!1}},props:{capture_token:String},methods:{check_usb:function(){console.log("[save-capture.vue] Checking connected USB device..."),i.a.get("/api/save/usb-check",{timeout:3e4}).then(e=>{e.data.status&&(this.usb=!0,clearInterval(this.interval),this.save_capture())})},save_capture:function(){var e=this.capture_token;console.log("[save-capture.vue] Saving the capture on USB"),i.a.get(`/api/save/save-capture/${e}/usb`,{timeout:3e4}).then(e=>{e.data.status&&(this.saved=!0,console.log("[save-capture.vue] Capture saved, going back to main view"),this.timeout=setTimeout(()=>u["a"].push("/"),6e4))})},new_capture:function(){console.log("[save-capture.vue] Capture saved, generating a new access point"),clearTimeout(this.timeout),u["a"].push({name:"generate-ap"})}},created:function(){console.log("[save-capture.vue] Showing save-capture.vue"),window.config.download_links?(console.log("[save-capture.vue] Using download links instead of USB key"),this.init=!0,this.save_usb=!1,this.download_url=`/api/save/save-capture/${this.capture_token}/url`):(console.log("[save-capture.vue] Using USB key to save the capture"),this.init=!0,this.save_usb=!0,this.interval=setInterval(()=>{this.check_usb()},500))}},r=o,v=(t("192d"),t("2877")),l=Object(v["a"])(r,a,n,!1,null,null,null);s["default"]=l.exports},fd7d:function(e,s,t){}}]);
|
||||
//# sourceMappingURL=chunk-0d175fb6.56d23ddc.js.map
|
@ -1,2 +0,0 @@
|
||||
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0b23b3"],{"22da":function(e,t,a){"use strict";a.r(t);var s=function(){var e=this,t=e._self._c;return t("div",{staticClass:"wrapper"},[t("div",{staticClass:"center"},[t("svg",{staticStyle:{margin:"auto",background:"none",display:"block","shape-rendering":"auto"},attrs:{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",width:"194px",height:"194px",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid"}},[t("circle",{attrs:{cx:"50",cy:"50",r:"0",fill:"none",stroke:"#dfdfdf","stroke-width":"1"}},[t("animate",{attrs:{attributeName:"r",repeatCount:"indefinite",dur:"2.941176470588235s",values:"0;43",keyTimes:"0;1",keySplines:"0 0.2 0.8 1",calcMode:"spline",begin:"0s"}}),t("animate",{attrs:{attributeName:"opacity",repeatCount:"indefinite",dur:"2.941176470588235s",values:"1;0",keyTimes:"0;1",keySplines:"0.2 0 0.8 1",calcMode:"spline",begin:"0s"}})]),t("circle",{attrs:{cx:"50",cy:"50",r:"0",fill:"none",stroke:"#dadada","stroke-width":"1"}},[t("animate",{attrs:{attributeName:"r",repeatCount:"indefinite",dur:"2.941176470588235s",values:"0;43",keyTimes:"0;1",keySplines:"0 0.2 0.8 1",calcMode:"spline",begin:"-1.4705882352941175s"}}),t("animate",{attrs:{attributeName:"opacity",repeatCount:"indefinite",dur:"2.941176470588235s",values:"1;0",keyTimes:"0;1",keySplines:"0.2 0 0.8 1",calcMode:"spline",begin:"-1.4705882352941175s"}})])]),e.long_waiting?e._e():t("p",{staticClass:"legend"},[e._v(e._s(e.$t("analysis.please_wait_msg")))]),e.long_waiting?t("p",{staticClass:"legend fade-in"},[e._v(e._s(e.$t("analysis.some_time_msg")))]):e._e()])])},i=[],n=a("a18c"),l=a("bc3a"),r=a.n(l),o={name:"analysis",data(){return{check_alerts:!1,long_waiting:!1}},props:{capture_token:String},methods:{start_analysis:function(){console.log("[analysis.vue] Starting the analysis..."),setTimeout(function(){this.long_waiting=!0}.bind(this),15e3),r.a.get("/api/analysis/start/"+this.capture_token,{timeout:6e4}).then(e=>{"Analysis started"==e.data.message&&(this.check_alerts=setInterval(()=>{this.get_alerts()},500))}).catch(e=>{console.log(e)})},get_alerts:function(){r.a.get("/api/analysis/report/"+this.capture_token,{timeout:6e4}).then(e=>{"No report yet"!=e.data.message?(console.log("[analysis.vue] Got the results analysis, moving to report view"),clearInterval(this.check_alerts),this.long_waiting=!1,n["a"].replace({name:"report",params:{alerts:e.data.alerts,device:e.data.device,methods:e.data.methods,pcap:e.data.pcap,records:e.data.records,capture_token:this.capture_token}})):console.log("[analysis.vue] No analysis results yet")}).catch(e=>{console.log(e)})}},created:function(){console.log("[analysis.vue] Showing analysis.vue"),this.start_analysis()}},c=o,d=a("2877"),p=Object(d["a"])(c,s,i,!1,null,null,null);t["default"]=p.exports}}]);
|
||||
//# sourceMappingURL=chunk-2d0b23b3.3d66404f.js.map
|
@ -1,2 +0,0 @@
|
||||
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0b6d35"],{"1f8b":function(e,t,s){"use strict";s.r(t);var n=function(){var e=this,t=e._self._c;return t("div",{staticClass:"wrapper-dark"},[t("div",{staticClass:"center"},[t("h1",{attrs:{id:"title"}},[e._v(e._s(e.title))]),t("span",{staticClass:"loading loading-lg loadingsplash"}),t("span",{staticClass:"message_splash"},[e._v(e._s(e.message))])])])},a=[],o=s("a18c"),i=s("bc3a"),l=s.n(i),c={name:"splash-screen",components:{},data(){return{internet:!1,message:"",title:"SPYGUARD",letters:["SSS§ṠSSSSS","PPPþ⒫PPPP","YYYÿYYYÿYȲYY","GGḠGGGǤG¬G","UÚUUÜUɄUUU","AAAAÄA¬AAA","RЯRɌRRRɌʭR","DD¬DDDDƋDD"]}},methods:{delete_captures:function(){this.message="Doing some cleaning...",console.log("[splash-screen.vue] Deleting previous captures..."),l.a.get("/api/misc/delete-captures",{timeout:3e4}),setTimeout(function(){this.goto_home()}.bind(this),2e3)},goto_home:function(){console.log("[splash-screen.vue] Going to home..."),this.message="Going to home...",o["a"].replace({name:"home"})},generate_random:function(e=0,t=1e3){let s=t-e,n=Math.random();return n=Math.floor(n*s),n+=e,n}},created:function(){window.access_point="",console.log("[splash-screen.vue] Welcome to SPYGUARD"),setInterval(function(){let e="";this.letters.forEach(t=>{e+=t.charAt(this.generate_random(0,9))}),this.title=e,setTimeout(function(){this.title="SPYGUARD"}.bind(this),this.generate_random(30,100))}.bind(this),this.generate_random(500,4e3)),this.delete_captures()}},r=c,h=s("2877"),u=Object(h["a"])(r,n,a,!1,null,null,null);t["default"]=u.exports}}]);
|
||||
//# sourceMappingURL=chunk-2d0b6d35.9c950e8a.js.map
|
@ -1,2 +0,0 @@
|
||||
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0baeaa"],{"38f5":function(e,t,a){"use strict";a.r(t);var s=function(){var e=this,t=e._self._c;return t("div",{staticClass:"wrapper"},[t("div",{staticClass:"center"},[0==e.error?t("div",[e.ssid_name?t("div",[t("div",{staticClass:"card apcard",on:{click:function(t){return e.generate_ap()}}},[t("div",{staticClass:"columns"},[t("div",{staticClass:"column col-5"},[t("center",[t("img",{attrs:{src:e.ssid_qr,id:"qrcode"}})])],1),t("div",{staticClass:"divider-vert white-bg",attrs:{"data-content":"OR"}}),t("div",{staticClass:"column col-5"},[t("br"),t("span",{staticClass:"light-grey"},[e._v(e._s(e.$t("generate-ap.network_name"))+" ")]),t("br"),t("h4",[e._v(e._s(e.ssid_name))]),t("span",{staticClass:"light-grey"},[e._v(e._s(e.$t("generate-ap.network_password"))+" ")]),t("br"),t("h4",[e._v(e._s(e.ssid_password))])])])]),t("br"),t("br"),t("br"),t("br"),e._v(" "),t("br"),t("br"),t("br"),t("br"),t("br"),t("br"),t("span",{staticClass:"legend"},[e._v(e._s(e.$t("generate-ap.tap_msg")))])]):t("div",[t("svg",{staticStyle:{margin:"auto",background:"none",display:"block","shape-rendering":"auto"},attrs:{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",width:"194px",height:"194px",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid"}},[t("circle",{attrs:{cx:"50",cy:"50",r:"0",fill:"none",stroke:"#dfdfdf","stroke-width":"1"}},[t("animate",{attrs:{attributeName:"r",repeatCount:"indefinite",dur:"2.941176470588235s",values:"0;43",keyTimes:"0;1",keySplines:"0 0.2 0.8 1",calcMode:"spline",begin:"0s"}}),t("animate",{attrs:{attributeName:"opacity",repeatCount:"indefinite",dur:"2.941176470588235s",values:"1;0",keyTimes:"0;1",keySplines:"0.2 0 0.8 1",calcMode:"spline",begin:"0s"}})]),t("circle",{attrs:{cx:"50",cy:"50",r:"0",fill:"none",stroke:"#dadada","stroke-width":"1"}},[t("animate",{attrs:{attributeName:"r",repeatCount:"indefinite",dur:"2.941176470588235s",values:"0;43",keyTimes:"0;1",keySplines:"0 0.2 0.8 1",calcMode:"spline",begin:"-1.4705882352941175s"}}),t("animate",{attrs:{attributeName:"opacity",repeatCount:"indefinite",dur:"2.941176470588235s",values:"1;0",keyTimes:"0;1",keySplines:"0.2 0 0.8 1",calcMode:"spline",begin:"-1.4705882352941175s"}})])]),t("p",{staticClass:"legend"},[e._v(e._s(e.$t("generate-ap.generate_ap_msg")))])])]):t("div",[t("p",[t("strong",{domProps:{innerHTML:e._s(e.$t("generate-ap.error_msg1"))}}),t("br"),t("br"),t("span",{domProps:{innerHTML:e._s(e.$t("generate-ap.error_msg2"))}}),t("br"),t("br")])])])])},r=[],n=a("bc3a"),i=a.n(n),o=a("a18c"),c={name:"generate-ap",components:{},data(){return{ssid_name:!1,ssid_qr:!1,ssid_password:!1,capture_token:!1,capture_start:!1,interval:!1,error:!1,reboot_option:window.config.reboot_option,attempts:3}},methods:{generate_ap:function(){console.log("[generate-ap.vue] Trying to start a new access point"),clearInterval(this.interval),this.ssid_name=!1,i.a.get("/api/network/ap/start",{timeout:3e4}).then(e=>this.show_ap(e.data))},show_ap:function(e){e.status?(console.log("[generate-ap.vue] Access point created, showing SSID"),window.access_point=e.ssid,this.ssid_name=e.ssid,this.ssid_password=e.password,this.ssid_qr=e.qrcode,this.start_capture()):(console.log("[generate-ap.vue] Issue when creating AP, let's retry"),0!=this.attempts?(setTimeout(function(){this.generate_ap()}.bind(this),1e4),this.attempts-=1):(console.log("[generate-ap.vue] Fatal error when creating AP, showing the error message"),this.error=!0))},start_capture:function(){console.log("[generate-ap.vue] Starting the capture in background"),i.a.get("/api/capture/start",{timeout:3e4}).then(e=>this.get_capture_token(e.data))},reboot:function(){console.log("[generate-ap.vue] Rebooting the device"),i.a.get("/api/misc/reboot",{timeout:3e4}).then(e=>{console.log(e)})},get_capture_token:function(e){e.status&&(console.log("[generate-ap.vue] Capture token retrieved, waiting a device to connect"),this.capture_token=e.capture_token,this.capture_start=Date.now(),this.get_device())},get_device:function(){this.interval=setInterval(()=>{i.a.get("/api/device/get/"+this.capture_token,{timeout:3e4}).then(e=>this.check_device(e.data))},500)},check_device:function(e){if(e.status){console.log("[generate-ap.vue] Device connected, going to capture view."),clearInterval(this.interval);var t=this.capture_token,a=this.capture_start,s=e.name;o["a"].replace({name:"capture",params:{capture_token:t,capture_start:a,device_name:s}})}}},created:function(){console.log("[generate-ap.vue] Showing generate-ap.vue"),this.generate_ap()}},p=c,d=a("2877"),l=Object(d["a"])(p,s,r,!1,null,null,null);t["default"]=l.exports}}]);
|
||||
//# sourceMappingURL=chunk-2d0baeaa.9d6eca74.js.map
|
@ -1,2 +0,0 @@
|
||||
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0cfa15"],{6511:function(t,n,s){"use strict";s.r(n);var e=function(){var t=this,n=t._self._c;return n("div",{staticClass:"wrapper"},[n("div",{staticClass:"center"},[n("h3",{staticClass:"lobster"},[t._v(t._s(t.$t("home.welcome_msg")))]),n("p",[t._v(t._s(t.$t("home.help_msg")))]),n("button",{staticClass:"btn btn-primary",on:{click:function(n){return t.next()}}},[t._v(t._s(t.$t("home.start_btn")))])])])},a=[],c=(s("14d9"),s("a18c")),o={name:"home",methods:{next:function(){c["a"].push({name:"generate-ap"})}}},r=o,i=s("2877"),l=Object(i["a"])(r,e,a,!1,null,null,null);n["default"]=l.exports}}]);
|
||||
//# sourceMappingURL=chunk-2d0cfa15.805b5619.js.map
|
@ -1 +0,0 @@
|
||||
{"version":3,"sources":["webpack:///./src/views/home.vue","webpack:///src/views/home.vue","webpack:///./src/views/home.vue?d449","webpack:///./src/views/home.vue?46ae"],"names":["render","_vm","this","_c","_self","staticClass","_v","_s","$t","on","$event","next","staticRenderFns","name","methods","router","component"],"mappings":"uHAAA,IAAIA,EAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACE,YAAY,WAAW,CAACF,EAAG,MAAM,CAACE,YAAY,UAAU,CAACF,EAAG,KAAK,CAACE,YAAY,WAAW,CAACJ,EAAIK,GAAGL,EAAIM,GAAGN,EAAIO,GAAG,wBAAwBL,EAAG,IAAI,CAACF,EAAIK,GAAGL,EAAIM,GAAGN,EAAIO,GAAG,qBAAqBL,EAAG,SAAS,CAACE,YAAY,kBAAkBI,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,UAAU,CAACV,EAAIK,GAAGL,EAAIM,GAAGN,EAAIO,GAAG,2BAErXI,EAAkB,G,wBCWP,GACfC,YACAC,SACAH,gBACAI,aAAAF,wBCjB8U,I,YCO1UG,EAAY,eACd,EACAhB,EACAY,GACA,EACA,KACA,KACA,MAIa,aAAAI,E","file":"js/chunk-2d0cfa15.805b5619.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"wrapper\"},[_c('div',{staticClass:\"center\"},[_c('h3',{staticClass:\"lobster\"},[_vm._v(_vm._s(_vm.$t(\"home.welcome_msg\")))]),_c('p',[_vm._v(_vm._s(_vm.$t(\"home.help_msg\")))]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.next()}}},[_vm._v(_vm._s(_vm.$t(\"home.start_btn\")))])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"wrapper\">\r\n <div class=\"center\">\r\n <h3 class=\"lobster\">{{ $t(\"home.welcome_msg\") }}</h3>\r\n <p>{{ $t(\"home.help_msg\") }}</p>\r\n <button class=\"btn btn-primary\" v-on:click=\"next()\">{{ $t(\"home.start_btn\") }}</button>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport router from '../router'\r\n\r\nexport default {\r\n name: 'home',\r\n methods: {\r\n next: function() {\r\n router.push({ name: 'generate-ap' });\r\n }\r\n }\r\n}\r\n</script>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./home.vue?vue&type=template&id=66a1090d&\"\nimport script from \"./home.vue?vue&type=script&lang=js&\"\nexport * from \"./home.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}
|
25
app/frontend/dist/js/chunk-vendors.3521aad3.js
vendored
@ -1100,7 +1100,25 @@ ul {
|
||||
color: #cecece;
|
||||
}
|
||||
|
||||
.no-alerts-to-show {
|
||||
text-align: center;
|
||||
padding: 50px;
|
||||
background-color: #f7f8f9;
|
||||
border: 1px dashed #eee;
|
||||
border-radius: 5px;
|
||||
font-size: 25px;
|
||||
color: #CFCFCF;
|
||||
margin-bottom: 30px;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.no-alerts-to-show>.main-text {
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
.no-alerts-to-show>.second-text {
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
.icon-usb {
|
||||
background: url('../assets/icon_usb.svg') no-repeat 0 0;
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "Mittel",
|
||||
"low": "Niedrig",
|
||||
"uncat_coms_table" : "Kommunikation nicht kategorisiert",
|
||||
"whitelisted_coms_table" : "Kommunikation auf der Whitelist",
|
||||
"no_alerts_title" : "Die Analyse der Kommunikation Ihres Geräts hat zu keinen Warnungen geführt.",
|
||||
"no_alerts_subtext" : "Unten können Sie die von ihm während der Erfassung ausgegebenen Mitteilungen sehen.",
|
||||
"protocol" : "Protokoll",
|
||||
"domain_name" : "Domain",
|
||||
"ip_address": "IP-Adresse:",
|
||||
@ -77,7 +80,7 @@
|
||||
"please_connect": "Bitte schließen Sie einen USB-Stick an, um Ihre Aufnahme zu speichern.",
|
||||
"we_are_saving": "Wir speichern Ihre Aufnahme.",
|
||||
"tap_msg": "Sie können den USB-Stick antippen, um eine neue Aufnahme zu starten.",
|
||||
"capture_download": "Der Download der Aufnahme beginnt …",
|
||||
"capture_download": "Der Download der Aufnahme beginnt…",
|
||||
"start_capture_btn": "Noch eine Aufnahme starten"
|
||||
},
|
||||
"modals": {
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "moderate",
|
||||
"low": "low",
|
||||
"uncat_coms_table" : "Uncategorized communications",
|
||||
"whitelisted_coms_table" : "Whitelisted communications",
|
||||
"no_alerts_title" : "Analysis of your smartphone's communications did not cause any alerts.",
|
||||
"no_alerts_subtext" : "You can see below the communications issued by it during the capture.",
|
||||
"protocol" : "Protocol",
|
||||
"domain_name" : "Domain",
|
||||
"ip_address" : "IP Address",
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "moderada",
|
||||
"low": "bajo",
|
||||
"uncat_coms_table" : "Sin categorizar Comunicaciones",
|
||||
"whitelisted_coms_table": "Comunicaciones incluidas en la lista blanca",
|
||||
"no_alerts_title": "El análisis de las comunicaciones de su dispositivo no generó ninguna alerta.",
|
||||
"no_alerts_subtext": "Puedes ver a continuación las comunicaciones emitidas por éste durante la captura.",
|
||||
"protocol" : "Protocolo",
|
||||
"domain_name" : "Dominio",
|
||||
"ip_address" : "Dirección IP ",
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "moyenne",
|
||||
"low": "basse",
|
||||
"uncat_coms_table" : "Communications non catégorisées",
|
||||
"whitelisted_coms_table": "Communications sur liste blanche",
|
||||
"no_alerts_title": "L'analyse des communications de votre appareil n'a provoqué aucune alerte.",
|
||||
"no_alerts_subtext": "Vous pouvez voir ci-dessous les communications émises par celui-ci lors de la capture.",
|
||||
"protocol" : "Protocole",
|
||||
"domain_name" : "Domaine",
|
||||
"ip_address" : "Adresse IP",
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "moderata",
|
||||
"low": "bassa",
|
||||
"uncat_coms_table" : "Comunicazioni non categorizzate",
|
||||
"whitelisted_coms_table": "Comunicazioni autorizzate",
|
||||
"no_alerts_title": "L'analisi delle comunicazioni del tuo dispositivo non ha causato alcun avviso.",
|
||||
"no_alerts_subtext": "Di seguito puoi vedere le comunicazioni emesse da esso durante la cattura.",
|
||||
"protocol" : "Protocollo",
|
||||
"domain_name" : "Dominio",
|
||||
"ip_address" : "Indirizzo IP",
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "moderado",
|
||||
"low": "leve",
|
||||
"uncat_coms_table" : "Comunicações não categorizadas",
|
||||
"whitelisted_coms_table" : "Comunicações na lista branca",
|
||||
"no_alerts_title" : "A análise das comunicações do seu dispositivo não causou nenhum alerta.",
|
||||
"no_alerts_subtext" : "Você pode ver abaixo as comunicações emitidas por ele durante a captura.",
|
||||
"protocol" : "Protocolo",
|
||||
"domain_name" : "Domínio",
|
||||
"ip_address": "Endereço IP:",
|
||||
|
@ -62,6 +62,9 @@
|
||||
"moderate": "средний",
|
||||
"low": "низкий",
|
||||
"uncat_coms_table" : "Несекретные сообщения",
|
||||
"whitelisted_coms_table": "Связь в белом списке",
|
||||
"no_alerts_title": "Анализ сообщений вашего устройства не вызвал никаких предупреждений.",
|
||||
"no_alerts_subtext": "Ниже вы можете увидеть сообщения, отправленные им во время захвата.",
|
||||
"protocol" : "Протокол",
|
||||
"domain_name" : "домен",
|
||||
"ip_address": "IP-адрес:",
|
||||
|
@ -29,7 +29,7 @@
|
||||
<button class="btn btn-report-low" @click="show_report=true;results=false;">{{ $t("report.show_full_report") }}</button>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else class="none-wrapper">
|
||||
<div v-else class="none-wrapper">
|
||||
<div class="center">
|
||||
<h1 class="warning-title" v-html="$t('report.fine_msg')"></h1>
|
||||
<button class="btn btn-report-low-light" @click="show_report=true;results=false;">{{ $t("report.show_full_report") }}</button>
|
||||
@ -48,41 +48,47 @@
|
||||
{{ $t("report.detection_methods") }} {{ detection_methods }}
|
||||
</div>
|
||||
</div>
|
||||
<ul class="alerts">
|
||||
<li class="alert" v-for="alert in alerts.high" :key="alert.message">
|
||||
<div class="alert-header">
|
||||
<span class="high-label">{{ $t("report.high") }}</span>
|
||||
<span class="alert-id">{{ alert.id }}</span>
|
||||
<span class="btn-whitelist" v-on:click="add_whitelist(alert.host)">Add to the whitelist</span>
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
<span class="title">{{ alert.title }}</span>
|
||||
<p class="description">{{ alert.description }}</p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="alert" v-for="alert in alerts.moderate" :key="alert.message">
|
||||
<div class="alert-header">
|
||||
<span class="moderate-label">{{ $t("report.moderate") }}</span>
|
||||
<span class="alert-id">{{ alert.id }}</span>
|
||||
<span class="btn-whitelist" v-on:click="add_whitelist(alert.host)">Add to the whitelist</span>
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
<span class="title">{{ alert.title }}</span>
|
||||
<p class="description">{{ alert.description }}</p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="alert" v-for="alert in alerts.low" :key="alert.message">
|
||||
<div class="alert-header">
|
||||
<span class="moderate-label">{{ $t("report.low") }}</span>
|
||||
<span class="alert-id">{{ alert.id }}</span>
|
||||
<span class="btn-whitelist" v-on:click="add_whitelist(alert.host)">Add to the whitelist</span>
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
<span class="title">{{ alert.title }}</span>
|
||||
<p class="description">{{ alert.description }}</p>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<div v-if="alerts.length>0">
|
||||
<ul class="alerts">
|
||||
<li class="alert" v-for="alert in alerts.high" :key="alert.message">
|
||||
<div class="alert-header">
|
||||
<span class="high-label">{{ $t("report.high") }}</span>
|
||||
<span class="alert-id">{{ alert.id }}</span>
|
||||
<span class="btn-whitelist" v-on:click="add_whitelist(alert.host)">Add to the whitelist</span>
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
<span class="title">{{ alert.title }}</span>
|
||||
<p class="description">{{ alert.description }}</p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="alert" v-for="alert in alerts.moderate" :key="alert.message">
|
||||
<div class="alert-header">
|
||||
<span class="moderate-label">{{ $t("report.moderate") }}</span>
|
||||
<span class="alert-id">{{ alert.id }}</span>
|
||||
<span class="btn-whitelist" v-on:click="add_whitelist(alert.host)">Add to the whitelist</span>
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
<span class="title">{{ alert.title }}</span>
|
||||
<p class="description">{{ alert.description }}</p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="alert" v-for="alert in alerts.low" :key="alert.message">
|
||||
<div class="alert-header">
|
||||
<span class="moderate-label">{{ $t("report.low") }}</span>
|
||||
<span class="alert-id">{{ alert.id }}</span>
|
||||
<span class="btn-whitelist" v-on:click="add_whitelist(alert.host)">Add to the whitelist</span>
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
<span class="title">{{ alert.title }}</span>
|
||||
<p class="description">{{ alert.description }}</p>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="no-alerts-to-show" v-else>
|
||||
<span class="main-text">{{ $t("report.no_alerts_title") }}</span>
|
||||
<span class="second-text">{{ $t("report.no_alerts_subtext") }}</span>
|
||||
</div>
|
||||
<h5 class="title-report" v-if="uncategorized_records.length>0">{{ $t("report.uncat_coms_table") }}</h5>
|
||||
<div v-if="uncategorized_records.length>0">
|
||||
<table class="table-uncat">
|
||||
@ -102,6 +108,25 @@
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<h5 class="title-report" v-if="uncategorized_records.length>0">{{ $t("report.whitelisted_coms_table") }}</h5>
|
||||
<div v-if="whitelisted_records.length>0">
|
||||
<table class="table-uncat">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>{{ $t("report.protocol") }}</td>
|
||||
<td>{{ $t("report.domain_name") }}</td>
|
||||
<td>{{ $t("report.ip_address") }}</td>
|
||||
<td>{{ $t("report.port") }}</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tr v-for="record in whitelisted_records" :key="record.ip_dst">
|
||||
<td>{{ Object.keys(record.protocols).map(key => record.protocols[key].name).join(", ") }}</td>
|
||||
<td>{{ record.domains.join(", ") }}</td>
|
||||
<td>{{ record.ip_dst }}</td>
|
||||
<td>{{ Object.keys(record.protocols).map(key => record.protocols[key].port).join(", ") }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="controls-analysis">
|
||||
<div class="column col-6">
|
||||
<button class="btn btn btn-primary width-100" v-on:click="save_capture()">{{ $t("report.save") }}</button>
|
||||
@ -133,7 +158,8 @@ export default {
|
||||
return {
|
||||
results: true,
|
||||
detection_methods: "",
|
||||
uncategorized_records: []
|
||||
uncategorized_records: [],
|
||||
whitelisted_records: []
|
||||
}
|
||||
},
|
||||
props: {
|
||||
@ -178,10 +204,12 @@ export default {
|
||||
add_whitelist: function(host){
|
||||
EventBus.$emit("showModal", {"action" : "whitelist", "host" : host})
|
||||
},
|
||||
get_uncategorized_records: function(){
|
||||
get_records: function(){
|
||||
this.records.forEach( r => {
|
||||
if (!r.suspicious && !r.whitelisted){
|
||||
this.uncategorized_records.push(r);
|
||||
} else if (r.whitelisted){
|
||||
this.whitelisted_records.push(r);
|
||||
}
|
||||
})
|
||||
}
|
||||
@ -189,7 +217,7 @@ export default {
|
||||
created: function() {
|
||||
console.log("[report.vue] Showing report.vue");
|
||||
this.get_detection_methods();
|
||||
this.get_uncategorized_records();
|
||||
this.get_records();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|