From 1a3f308e1a43c05fecd7307ac36b60216d08b8a1 Mon Sep 17 00:00:00 2001 From: EXC3L-ONE <48698766+EXC3L-ONE@users.noreply.github.com> Date: Tue, 6 Aug 2024 10:58:11 +0200 Subject: [PATCH] Storm bonanza --- .../cloudflare-domain-rank-top.storm | 2 +- .../cloudflare-domain-rank.storm | 2 +- .../crowdstrike-falcon-actors.storm | 2 +- .../loobins-project-ingest.storm | 70 +++++++++++++++ .../c2-tracker-feed-ingest.storm | 67 +++++++++++++++ .../osint-threat-feeds/drb-feed-ingest.storm | 85 +++++++++++++++++++ .../phishunt-feed-ingest.storm | 28 ++++++ .../ransomwhere-addresses-ingest.storm | 41 +++++++++ .../wiz-cloud-threat-landscape.storm | 67 +++++++++++++++ yara-family-namer/yara-family-namer.storm | 30 +++++++ 10 files changed, 391 insertions(+), 3 deletions(-) create mode 100644 snippets/loobins-project-ingest/loobins-project-ingest.storm create mode 100644 snippets/osint-threat-feeds/c2-tracker-feed-ingest.storm create mode 100644 snippets/osint-threat-feeds/drb-feed-ingest.storm create mode 100644 snippets/osint-threat-feeds/phishunt-feed-ingest.storm create mode 100644 snippets/ransomwhere-data-scripts/ransomwhere-addresses-ingest.storm create mode 100644 snippets/wiz-cloud-threat-landscape/wiz-cloud-threat-landscape.storm create mode 100644 yara-family-namer/yara-family-namer.storm diff --git a/snippets/cloudflare-domain-rank-top/cloudflare-domain-rank-top.storm b/snippets/cloudflare-domain-rank-top/cloudflare-domain-rank-top.storm index ac48b4b..5643f62 100644 --- a/snippets/cloudflare-domain-rank-top/cloudflare-domain-rank-top.storm +++ b/snippets/cloudflare-domain-rank-top/cloudflare-domain-rank-top.storm @@ -1,6 +1,6 @@ /* Name: cloudflare-domain-rank-top.storm -Author: bartosz.roszewski@smartcontract.com +Author: exc3l_one@protonmail.com Modified By: reign@vertex.link, cisphyx@vertex.link Last Modified: 2023-11-15 diff --git a/snippets/cloudflare-domain-rank/cloudflare-domain-rank.storm b/snippets/cloudflare-domain-rank/cloudflare-domain-rank.storm index 1a8b693..7f992a6 100644 --- a/snippets/cloudflare-domain-rank/cloudflare-domain-rank.storm +++ b/snippets/cloudflare-domain-rank/cloudflare-domain-rank.storm @@ -1,6 +1,6 @@ /* Name: cloudflare-domain-rank.storm -Author: bartosz.roszewski@smartcontract.com +Author: exc3l_one@protonmail.com Modified By: reign@vertex.link, cisphyx@vertex.link Last Modified: 2023-11-15 diff --git a/snippets/crowdstrike-falcon-actors/crowdstrike-falcon-actors.storm b/snippets/crowdstrike-falcon-actors/crowdstrike-falcon-actors.storm index bcd066b..7bd6bb0 100644 --- a/snippets/crowdstrike-falcon-actors/crowdstrike-falcon-actors.storm +++ b/snippets/crowdstrike-falcon-actors/crowdstrike-falcon-actors.storm @@ -1,6 +1,6 @@ /* Name: crowdstrike-falcon-actors.storm -Author: bartosz.roszewski@smartcontract.com +Author: exc3l_one@protonmail.com Modified By: reign@vertex.link, cisphyx@vertex.link Last Modified: 2023-11-15 diff --git a/snippets/loobins-project-ingest/loobins-project-ingest.storm b/snippets/loobins-project-ingest/loobins-project-ingest.storm new file mode 100644 index 0000000..0aca450 --- /dev/null +++ b/snippets/loobins-project-ingest/loobins-project-ingest.storm @@ -0,0 +1,70 @@ +/* +Name: loobins-project-ingest.storm +Author: exc3l_one@protonmail.com +Modified By: TODO +Last Modified: 2024-06-28 + +Description: Ingest the JSON representation of the LOOBins project to model the ou:techniques associated with built-in macOS binaries + +References: + -- LOOBins Project Website: https://loobins.io/ +*/ + +// Generate the LOOBins project ou:org node +init { + {[ou:org=$lib.gen.orgByFqdn("loobins.io") + :name="loobins" + :url="https://www.loobins.io/" + :desc="Living Off the Orchard: macOS Binaries (LOOBins) is designed to provide detailed information on various built-in macOS binaries and how they can be used by threat actors for malicious purposes." + ]} +} + +// Get the LOOBins project data in JSON +$url = "https://www.loobins.io/loobins.json" +$resp = $lib.inet.http.get($url) + +if ($resp.code = 200) { + $body = $lib.json.load($body) + + for $bin in $body { + // Create a software node for each LOOBin + [it:prod:soft=$lib.gen.softByName($bin.name) + :desc:short=$bin.short_description + :desc=$bin.full_description + :type=macos.loobin + :islib=false + :isos=false + ] + + // Link the software node to the filepaths it uses + for $path in $bin.paths { + [+(uses)> {[file:path=$path]}] + } + + // Create technique nodes + for $ttp in $bin.example_use_cases { + [+(uses)> {[ou:technique=("loobins", $ttp.code) + :desc=$ttp.description + :name=$ttp.name + :reporter=$lib.gen.orgByFqdn("loobins.io") + :reporter:name="loobins.io" + :type=macos.loobins + ] + + // Link the technique to the command it uses by creating a it:proc:exec node to represent the command and the file:base + [+(refs)> { + [it:exec:proc=($ttp.code, "loobins") + :cmd=$ttp.code + :path:base=$bin.name + :name=$bin.name + ] + }]}] + + //Alternative method: linking the technique to the command via a light edge (choose either this one or the one above, not both at the same time) + //[+(refs)> {[it:cmd=$ttp.code]}]}] + } + + } +} else { + $lib.warn("Returned HTTP code: {code}", code=$resp.code) +} diff --git a/snippets/osint-threat-feeds/c2-tracker-feed-ingest.storm b/snippets/osint-threat-feeds/c2-tracker-feed-ingest.storm new file mode 100644 index 0000000..e8fa00c --- /dev/null +++ b/snippets/osint-threat-feeds/c2-tracker-feed-ingest.storm @@ -0,0 +1,67 @@ +/* +Name: c2-tracker-feed-ingest.storm +Author: exc3l_one@protonmail.com +Modified By: TODO +Last Modified: 2024-06-28 + +Description: Ingest the TXT feeds from the C2-Tracker Github project by montysecurity + +References: + -- Project Repo: https://github.com/montysecurity/C2-Tracker +*/ + + +$url = "https://github.com/montysecurity/C2-Tracker/tree/main/data" +$resp = $lib.inet.http.get($url) + +if ($resp.code = 200 ) { + $data = $resp.body.decode() + // Extract the JSON representation of the Github repo tree from the HTML page + $data = $lib.regex.search('(