"use strict";(self.webpackChunkvt_ui_main=self.webpackChunkvt_ui_main||[]).push([[84569],{22544:(e,t,n)=>{var o=n(48704),i=n(16645),r=n(85200),a=n(28238),s=n(45241),l=n(95688),d=n(44052),c=(n(74570),n(5874),n(8358),n(67224));let b,u,m,f,h,p,g=e=>e;var v=function(e,t,n,o){var i,r=arguments.length,a=r<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(r<3?i(a):r>3?i(t,n,a):i(t,n))||a);return r>3&&a&&Object.defineProperty(t,n,a),a};let y=(b=class extends o.LitElement{constructor(){super(...arguments),this.isSummary=!1}renderThreatActors(){var e;const t=null===(e=this.attribution)||void 0===e?void 0:e.threat_actors;if(this.isSummary&&t&&t.length>1){const e=a.be.orJoiner(t,"name"),n=l.Z8.getRedirectUrl("threatLandscape",`threat-actors?filter=${e}`);return(0,o.html)(u||(u=g` ${0} Threat Actors `),(0,r.ifDefined)(n),`Associated threat actors: ${t.join(", ")}`,s.KK.showTooltip,t.length)}var n;return null===(n=this.attribution)||void 0===n||null===(n=n.detailed_threat_actors)||void 0===n?void 0:n.map((e=>(0,o.html)(m||(m=g``),e)))}render(){var e,t,n;if(!this.attribution||null===(e=d.NU.currentUser)||void 0===e||!e.insightsAccess)return o.nothing;const i=this.isSummary?null===(t=this.attribution.malware_families)||void 0===t?void 0:t.slice(0,0):this.attribution.malware_families,r=this.isSummary?null===(n=this.attribution.campaigns)||void 0===n?void 0:n.slice(0,0):this.attribution.campaigns;return(0,o.html)(f||(f=g`${0} ${0} ${0}`),null==i?void 0:i.map((e=>(0,o.html)(h||(h=g``),e))),this.renderThreatActors(),null==r?void 0:r.map((e=>(0,o.html)(p||(p=g``),e))))}},b.styles=(0,o.unsafeCSS)(c.A),b);v([(0,i.property)({type:Object})],y.prototype,"attribution",void 0),v([(0,i.property)({type:Boolean})],y.prototype,"isSummary",void 0),y=v([(0,i.customElement)("attribution-tags")],y)},67808:(e,t,n)=>{n.d(t,{Xe:()=>h});var o,i=n(22894),r=n(61720),a=n(45241),s=n(95688),l=n(44052);function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=m(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,r=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw r}}}}function c(e,t,n,o,i,r,a){try{var s=e[r](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(o,i)}function b(e){return function(){var t=this,n=arguments;return new Promise((function(o,i){var r=e.apply(t,n);function a(e){c(r,o,i,a,s,"next",e)}function s(e){c(r,o,i,a,s,"throw",e)}a(void 0)}))}}function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,i,r,a,s=[],l=!0,d=!1;try{if(r=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(o=r.call(n)).done)&&(s.push(o.value),s.length!==t);l=!0);}catch(e){d=!0,i=e}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(d)throw i}}return s}}(e,t)||m(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function m(e,t){if(e){if("string"==typeof e)return f(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?f(e,t):void 0}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n[this.rulesetObjectcreator(`URL downloads file=${e}`,`\nimport "vt"\n\nrule UrlDownloadsFile {\ncondition:\n // vt.net.url.new_url and // enable to restrict matches to newly seen URLs\n vt.net.url.downloaded_file.sha256 == "${e}"\n}\n`,"url")]],[o.DomainDownloadsFile,e=>[this.rulesetObjectcreator(`Domain downloads file=${e}`,`\nimport "vt"\n\nrule DomainDownloadsFile {\ncondition:\n // vt.net.domain.new_domain and // enable to restrict matches to newly seen Domains\n vt.net.domain.downloaded_file.sha256 == "${e}"\n}\n`,"domain")]],[o.IpDownloadsFile,e=>[this.rulesetObjectcreator(`IP downloads file=${e}`,`\nimport "vt"\n\nrule IpDownloadsFile {\ncondition:\n vt.net.ip.downloaded_file.sha256 == "${e}"\n}\n`,"ip_address")]],[o.UrlContactForFile,e=>[this.rulesetObjectcreator(`URL contacted by file=${e}`,`\nimport "vt"\n\nrule UrlContactForFile {\ncondition:\n // vt.net.url.new_url and // enable to restrict matches to newly seen URLs\n vt.net.url.communicating_file.sha256 == "${e}"\n}\n`,"url")]],[o.DomainContactedByFile,e=>[this.rulesetObjectcreator(`Domain contacted by file=${e}`,`\nimport "vt"\n\nrule DomainContactedByFile {\ncondition:\n // vt.net.domain.new_domain and // enable to restrict matches to newly seen Domains\n vt.net.domain.communicating_file.sha256 == "${e}"\n}\n`,"domain")]],[o.IpContactedByFile,e=>[this.rulesetObjectcreator(`IP contacted by file=${e}`,`\nimport "vt"\n\nrule IpContactedByFile {\ncondition:\n vt.net.ip.communicating_file.sha256 == "${e}"\n}\n`,"ip_address")]],[o.FileDownloadedFromUrl,e=>[this.rulesetObjectcreator(`File downloaded from url=${e}`,`\nimport "vt"\n\nrule FileDownloadedFromUrl {\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n vt.metadata.itw.url.raw iequals "${e}"\n}\n`,"file")]],[o.FileContactingUrl,e=>[this.rulesetObjectcreator(`File contacting url=${e}`,`\nimport "vt"\n\nrule FileContactingUrl {\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n for any http in vt.behaviour.http_conversations : (\n http.url iequals "${e}"\n )\n}\n`,"file")]],[o.FileContainsUrl,e=>[this.rulesetObjectcreator(`File contains url=${e}`,`\nimport "vt"\n\nrule FileContainsUrl {\nstrings:\n $url = "${e}"\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n $url\n}\n`,"file")]],[o.FileDownloadedFromDomain,e=>[this.rulesetObjectcreator(`File downloaded from domain=${e}`,`\nimport "vt"\n\nrule FileDownloadedFromDomain {\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n vt.metadata.itw.domain.raw endswith "${e}"\n}\n`,"file")]],[o.FileContactingDomain,e=>[this.rulesetObjectcreator(`File contacting domain=${e}`,`\nimport "vt"\n\nrule FileContactingDomain {\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n for any lookup in vt.behaviour.dns_lookups : (\n lookup.hostname iequals "${e}"\n // or lookup.hostname iendswith "${e}" // enable for a wider match\n )\n}\n`,"file")]],[o.FileEmbeddingDomain,e=>[this.rulesetObjectcreator(`File embedding domain=${e}`,`\nimport "vt"\n\nrule FileEmbeddingDomain {\nstrings:\n $domain = "${e}"\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n $domain\n}\n`,"file")]],[o.IpResolutionForDomain,e=>[this.rulesetObjectcreator(`IP resolution for domain=${e}`,`\nimport "vt"\n\nrule IpResolutionForDomain {\ncondition:\n vt.net.ip.reverse_lookup iequals "${e}"\n}\n`,"ip_address")]],[o.SubdomainForDomain,e=>[this.rulesetObjectcreator(`Subdomain for domain=${e}`,`\nimport "vt"\n\nrule SubdomainForDomain {\ncondition:\n // vt.net.domain.first_resolution and // enable to restrict matches to newly resolved seen subdomains\n vt.net.domain.raw endswith "${e}"\n}\n`,"domain")]],[o.UrlInDomain,e=>[this.rulesetObjectcreator(`URL in domain=${e}`,`\nimport "vt"\n\nrule UrlInDomain {\ncondition:\n // vt.net.url.new_url and // enable to restrict matches to newly seen URLs\n vt.net.domain.raw iendswith "${e}"\n}\n`,"url")]],[o.FileDownloadedFromIp,e=>[this.rulesetObjectcreator(`File downloaded from ip=${e}`,`\nimport "vt"\n\nrule FileDownloadedFromIp {\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n vt.metadata.itw.ip.raw == "${e}"\n}\n`,"file")]],[o.FileContactingIp,e=>[this.rulesetObjectcreator(`File contacting ip=${e}`,`\nimport "vt"\n\nrule FileContactingIp {\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen URLs\n for any ip in vt.behaviour.ip_traffic : (\n ip.destination_ip == "${e}"\n )\n}\n`,"file")]],[o.FileEmbeddingIP,e=>[this.rulesetObjectcreator(`File embedding ip=${e}`,`\nimport "vt"\n\nrule FileEmbeddingIP {\nstrings:\n $ip = "${e}"\ncondition:\n // vt.metadata.new_file and // enable to restrict matches to newly seen Files\n $ip\n}\n`,"file")]],[o.DomainResolvesToIp,e=>[this.rulesetObjectcreator(`Domain resolves to ip=${e}`,`\nimport "vt"\n\nrule DomainResolvesToIp {\ncondition:\n // vt.net.domain.first_resolution and // enable to restrict matches for domains matching for first\n vt.net.ip.raw == "${e}"\n}\n`,"domain")]],[o.UrlSeenInIp,e=>[this.rulesetObjectcreator(`URL seen in ip=${e}`,`\nimport "vt"\n\nrule UrlSeenInIp {\ncondition:\n // vt.net.url.new_url and // enable to restrict matches to newly seen URLs\n vt.net.ip.raw == "${e}"\n}\n`,"url")]]]);[[o.AllForFiles,this.choiceMenuForFiles],[o.AllForURLs,this.choiceMenuForURLs],[o.AllForIPs,this.choiceMenuForIPs],[o.AllForDomains,this.choiceMenuForDomains]].forEach((t=>{let n=u(t,2),o=n[0],i=n[1];return this.configMapForAllOfAboveScenario(e,o,i)})),this.ruleTemplatesMap=e}configMapForAllOfAboveScenario(e,t,n){e.set(t,(o=>{const i=[];return n.filter((e=>e.value!=t)).forEach((t=>i.push(...e.get(t.value)(o)))),i}))}checkExistence(e){return b((function*(){const t=[];var n,o=d(e);try{for(o.s();!(n=o.n()).done;){var r;const e=n.value;0==(yield i.h4.intelligence.rulesets.list({filter:`"${e.name}" owner:"${null===(r=l.NU.currentUser)||void 0===r?void 0:r.id}"`})).data.length&&t.push(e)}}catch(e){o.e(e)}finally{o.f()}return t}))()}followEntity(e,t,n){var o=this;return b((function*(){const l=o.ruleTemplatesMap.get(e);if(!l||!n)throw new Error(`No template found for ${e}, or not item id found`);let c;const b=l(n),u=[];let m;const f=yield o.checkExistence(b);if(m=f.length>1?`${f.length} new Livehunt rulesets have been created.`:"A new Livehunt ruleset has been created.",m+=" Going forward, matching IoCs will be published to your IoC Stream.",0==f.length)return void a.KK.showToastWithAction(t,"Heads up! You were already following it before","View ruleset",(()=>{r.v.closeDrawer(),s.Z8.newTabNavigation(`hunting/rulesets?entityName=${n}`)}));var h,p=d(f);try{for(p.s();!(h=p.n()).done;){const e=h.value,t=i.h4.intelligence.rulesets.create(e),n=yield t;1===f.length&&(c=n.data.id),u.push(t)}}catch(e){p.e(e)}finally{p.f()}const g=yield Promise.allSettled(u);return a.KK.showToastWithAction(t,m,"View Rules",(()=>{r.v.closeDrawer(),s.Z8.newTabNavigation(`hunting/rulesets?entityName=${n}`)})),g}))()}}},67224:(e,t,n)=>{var o=n(89547),i=n.n(o),r=n(38532),a=n.n(r)()(i());a.push([e.id,'/*!\n * Bootstrap v5.3.2 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */:root{--bs-blue: #0b4dda;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #000000;--bs-red: #c52420;--bs-orange: #e57300;--bs-yellow: #fce967;--bs-green: #39ac4c;--bs-teal: #20c997;--bs-cyan: #287bb5;--bs-black: #000;--bs-white: #fff;--bs-gray: #666666;--bs-gray-dark: #333333;--bs-gray-100: #f9f9f9;--bs-gray-200: #f2f2f2;--bs-gray-300: #e6e6e6;--bs-gray-400: #cccccc;--bs-gray-500: #b3b3b3;--bs-gray-600: #666666;--bs-gray-700: #4d4d4d;--bs-gray-800: #333333;--bs-gray-900: #1a1a1a;--bs-primary: #0b4dda;--bs-success: #39ac4c;--bs-info: #007be6;--bs-warning: #e57300;--bs-danger: #c52420;--bs-primary-rgb: 11, 77, 218;--bs-success-rgb: 57, 172, 76;--bs-info-rgb: 0, 123, 230;--bs-warning-rgb: 229, 115, 0;--bs-danger-rgb: 197, 36, 32;--bs-primary-text-emphasis: #062b79;--bs-secondary-text-emphasis: #292929;--bs-success-text-emphasis: #20602a;--bs-info-text-emphasis: #004480;--bs-warning-text-emphasis: #804000;--bs-danger-text-emphasis: #6d1412;--bs-light-text-emphasis: #4d4d4d;--bs-dark-text-emphasis: #4d4d4d;--bs-primary-bg-subtle: #cfddfc;--bs-secondary-bg-subtle: #e0e0e0;--bs-success-bg-subtle: #ecf9ee;--bs-info-bg-subtle: #e5f3ff;--bs-warning-bg-subtle: #fff2e5;--bs-danger-bg-subtle: #fae1e0;--bs-light-bg-subtle: #fcfcfc;--bs-dark-bg-subtle: #cccccc;--bs-primary-border-subtle: #9db8f0;--bs-secondary-border-subtle: #c2c2c2;--bs-success-border-subtle: #b0deb7;--bs-info-border-subtle: #99caf5;--bs-warning-border-subtle: #f5c799;--bs-danger-border-subtle: #e8a7a6;--bs-light-border-subtle: #f2f2f2;--bs-dark-border-subtle: #b3b3b3;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-font-sans-serif: "Source Sans Pro", Roboto, RobotoDraft, Helvetica, Arial, sans-serif;--bs-font-monospace: "Source Code Pro", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #20242c;--bs-body-color-rgb: 32, 36, 44;--bs-body-bg: #fff;--bs-body-bg-rgb: 255, 255, 255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0, 0, 0;--bs-secondary-color: #363c49;--bs-secondary-color-rgb: 54, 60, 73;--bs-secondary-bg: #f9fafb;--bs-secondary-bg-rgb: 249, 250, 251;--bs-tertiary-color: #626c84;--bs-tertiary-color-rgb: 98, 108, 132;--bs-tertiary-bg: #eceef4;--bs-tertiary-bg-rgb: 236, 238, 244;--bs-heading-color: inherit;--bs-link-color: #20242c;--bs-link-color-rgb: 32, 36, 44;--bs-link-decoration: none;--bs-link-hover-color: #0b4dda;--bs-link-hover-color-rgb: 11, 77, 218;--bs-code-color: #000000;--bs-highlight-color: #20242c;--bs-highlight-bg: #fefbe1;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #e5e9f0;--bs-border-color-translucent: rgba(0, 0, 0, 0.175);--bs-border-radius: 0.375rem;--bs-border-radius-sm: 0.25rem;--bs-border-radius-lg: 0.5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width: 0.25rem;--bs-focus-ring-opacity: 0.25;--bs-focus-ring-color: rgba(11, 77, 218, 0.25);--bs-form-valid-color: #39ac4c;--bs-form-valid-border-color: #39ac4c;--bs-form-invalid-color: #c52420;--bs-form-invalid-border-color: #c52420}*,*::before,*::after{box-sizing:border-box}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:none}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}svg{vertical-align:middle}::-moz-focus-inner{padding:0;border-style:none}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.badge{--bs-badge-padding-x: 0.65em;--bs-badge-padding-y: 0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight: 400;--bs-badge-color: var(--bs-body-bg);--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes placeholder-glow{50%{opacity:.01}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.position-relative{position:relative !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}html{scrollbar-color:var(--bs-input-border-color) var(--bs-tertiary-bg)}.badge{--bs-badge-font-size: 0.85rem}:host{display:inline;flex-wrap:wrap}',""]),t.A=a}}]); //# sourceMappingURL=84569.93d2af718c5c5f4c2159.js.map