Latest / Tech Talks With Kinsoft / Metabase - The Reporting Tool That Held Every Key, and the Five Companies That Found Out
Transcript
- 0:00I want you to just imagine a scenario on your
- 0:03own network right now. Like really picture your
- 0:05company's data infrastructure. Okay, yeah. If
- 0:09you had to guess the most catastrophic threat
- 0:11to that environment. I mean, your mind probably
- 0:14jumps to a sophisticated, you know, multistage
- 0:17ransomware attack targeting the core databases.
- 0:20For sure. You're looking at the big target. Exactly.
- 0:23You're likely not losing sleep over the quiet
- 0:26internal analytics dashboard to sitting on a
- 0:28random server in the corner. I mean, you probably
- 0:31don't even classify that reporting tool as a
- 0:33production system. Right. And it's a massive
- 0:35blind spot for most engineering teams. We are.
- 0:38Well, we're fundamentally conditioned to armor
- 0:39the front door. We lock down the primary databases.
- 0:42We scrutinize internet -facing apps. Yeah. But
- 0:45internal BI tools, you know, business intelligence,
- 0:48they're almost always treated as read -only conveniences.
- 0:51They just generate charts. They aren't supposed
- 0:53to be threat vectors. But that assumption is
- 0:56exactly what we are tearing down today. So our
- 0:58mission for this deep dive is to unpack an incredibly
- 1:01revealing transcript from Tech Talks with Kinsoft.
- 1:04They did this massive postmortem on the recent
- 1:07Metabase zero -day vulnerability. Officially
- 1:10tracked as CVE -2026 -72898. Right. And our goal
- 1:15isn't just to do some forensic play -by -play.
- 1:18We really want to understand the architectural
- 1:20philosophy, the underlying way we build software
- 1:22today that allowed a literal 10 out of 10 severity
- 1:26breach. to just hide completely in plain sight.
- 1:29Yeah. And to give some context on how chaotic
- 1:31this actually was, the source material opens
- 1:33with some rapid fire corrections just because
- 1:36the facts on the ground were shifting. hourly.
- 1:38It was moving so fast. It really was. Initially,
- 1:40the vendor issued an advisory with no CVE attached
- 1:43and the severity score was entirely self -reported.
- 1:46Right. Which, I mean, it completely undersold
- 1:48the danger for a few days. Oh, absolutely. But
- 1:50now it is an official 10 out of 10 on both the
- 1:53CVSS 3 .1 and 4 .0 scales. And it immediately
- 1:57triggered a cease or remediation deadline. Which
- 1:59is huge. Yeah. Also, just as a quick, aside from
- 2:02the source, to clear up some industry confusion.
- 2:04Yeah. LexisNexis happens to have a completely
- 2:07unrelated product also called Metabase. Right.
- 2:10There is no connection whatsoever. We're talking
- 2:13strictly about the BI platform based in San Francisco.
- 2:17And that BI platform is exactly where we have
- 2:19to start because the core danger here, it isn't
- 2:21just that the application got compromised. uses
- 2:25this fantastic analogy, actually. They say Metabase
- 2:28doesn't just hold your data, it holds the way
- 2:30in. It's the key ring. Precisely. It is the key
- 2:33ring. I mean, to generate those pretty graphs
- 2:35for the sales team, Metabase needs connection
- 2:38strings, credentials, API tokens, basically for
- 2:42every single data warehouse, Snowflake instance,
- 2:44and Postgres database you pointed at. Wow, yeah.
- 2:47So if an attacker breaches the web server hosting
- 2:49your blog, they own the blog. But if they breach
- 2:52Metabase, they don't just own the dashboard,
- 2:53they... Deal the master key ring that unlocks
- 2:57every single core data repository connected to
- 2:59it. Which really puts the scale of this exposure
- 3:03into perspective. Because Metabase isn't some
- 3:05niche tool, right? They claim over 100 ,000 organizations
- 3:09use their platform across 150 countries. It's
- 3:13everywhere. It is. They're deeply embedded in
- 3:16the infrastructure of massive financial and tech
- 3:19companies. Yeah. I'm talking N26, Revolut. gojek
- 3:23these are heavily regulated high stakes environments
- 3:26and we actually have hard data on the blast radius
- 3:30thanks to internet wide scans run by wiz and
- 3:33dataman Right around August 8th. Okay, let's
- 3:36unpack this. What did they find? Well, they found
- 3:38that roughly 13 % of all cloud environments globally
- 3:42were running a self -hosted instance of Metabase.
- 3:4413 %? I mean, that is a staggering number. But
- 3:47here is the stat that actually made my jaw drop
- 3:49when I read the source. Wow, the exposure stat.
- 3:51Yes. Of those self -hosted instances, roughly
- 3:54a quarter were fully accessible from the public
- 3:56internet. Yeah, that's rough. The data men telemetry.
- 4:00pinpointed over 4 ,300 highly vulnerable instances
- 4:04just openly sitting on the web. They were touching
- 4:06government networks, health care, aviation, finance.
- 4:10It essentially means thousands of organizations
- 4:13left a master key ring hanging on a hook on the
- 4:16outside of their building. Basically, yeah. And
- 4:19once attackers realized that hook was there,
- 4:21the timeline of exploitation compressed to an
- 4:23almost terrifying degree. The speed of, this
- 4:27is what really gets me. So August 2nd, a Sunday,
- 4:29is the first documented intrusion. An attacker
- 4:32breaches a Metabase instance owned by an AI coding
- 4:35company called KiloCode, and they're just poking
- 4:37around for about four hours. Just scaring it
- 4:39out. Right. And then the very next day, August
- 4:423rd, the attacks escalate. Exponentially. They
- 4:45hit Metabase's own managed cloud infrastructure.
- 4:48Tenants like Checkly, Framework, Tally, they
- 4:50all get hit essentially simultaneously. But,
- 4:53you know, you do have to give Metabase credit
- 4:55where it's due here. Fair enough. On that exact
- 4:57same day, August 3rd. They actually detect the
- 5:00abnormal behavior, isolate the exploited endpoints,
- 5:04identify the root cause in the code, and push
- 5:06a patch across their entire managed cloud. Wow.
- 5:10Yeah, same -day detection and remediation for
- 5:12cloud tenants is exceptional engineering. It
- 5:15is exceptional, but, well, it didn't stop the
- 5:18bleeding for the rest of the world. Because by
- 5:20Thursday, August 6th, Metabase publishes its
- 5:23public security update for the self -hosted community.
- 5:26And then the weekend hits and everything just
- 5:28falls apart. By August 10th and 11th, the CVE
- 5:32is formalized. Security researchers at WIS publish
- 5:34a full reverse engineering write -up. Which,
- 5:37ironically, inadvertently gives attackers the
- 5:39exact blueprint to build open source exploits.
- 5:42Exactly. CISA adds it to the known exploited
- 5:44vulnerabilities catalog. And then this ransomware
- 5:47group, Shiny Hunters, they list Metabase on their
- 5:50extortion site. So from the first quiet intrusion
- 5:52on August 2nd to a fully weaponized, globally
- 5:55scaled export circulating on the open Internet,
- 5:58it was nine days. Nine days. That window for
- 6:01remediation, it just doesn't exist anymore. It
- 6:03really doesn't. And I want to dig into how this
- 6:06happened. Because this wasn't some, you know,
- 6:08standard buffer overflow or complex memory corruption.
- 6:11The anatomy of this 10 out of 10 flaw is honestly
- 6:15kind of elegant. It really is. The entry point
- 6:18was a single, unauthenticated endpoint. It was
- 6:21a PST request to API slash session slash reset
- 6:25underscore password. Which, to be clear, is an
- 6:28endpoint deliberately designed to be accessed
- 6:30by people who aren't logged in. Right. Obviously.
- 6:33It's supposed to take two arguments, a token
- 6:35proving you requested a reset and your new password.
- 6:38So if I'm an attacker. And I intercept that request.
- 6:41I don't just send a token and a password. I inject
- 6:43an extra field. I slip a user ID into the payload.
- 6:46And this is where the source completely changed
- 6:49my perspective on secure coding. This flaw wasn't
- 6:52caused by a broken piece of code. It was caused
- 6:54by four individually correct, highly documented
- 6:57software behaviors chaining together flawlessly.
- 7:01What's fascinating here is the concept of composition
- 7:03flaws. None of the four steps we are about to
- 7:05discuss are actually bugs. Not a single one.
- 7:08Not one. First, Metabase is written in Clojure.
- 7:11When the attacker's web request hits the backend,
- 7:14the system attempts to merge the incoming payload
- 7:17with the result of a failed authentication check.
- 7:20Okay, so a standard merge. Right. And Clojure's
- 7:23merge function does exactly what the manual says.
- 7:25It combines two data maps, but crucially, it
- 7:27does not strip out unexpected keys. Oh, wow.
- 7:30So the attacker's injected user ID survives the
- 7:34merge simply because there was no legitimate
- 7:36user ID to overwrite it. I was trying to visualize
- 7:39this when I read it, and it feels like a data
- 7:41smuggling operation. It really does. It's kind
- 7:44of like a bouncer at a club. The attacker walks
- 7:46up, fails the VIP list check, but subtly hands
- 7:50their VIP badge to the guy behind them, which
- 7:53is the payload. That's a great way to look at
- 7:55it. Right. The bouncer did their job by rejecting
- 7:58the first guy. But the club's back end system
- 8:00just automatically prints a wristband for whatever
- 8:03badge gets handed to it next. It doesn't even
- 8:05verify if it belongs to someone on the list.
- 8:07That is a highly accurate analogy because step
- 8:10two is the JSON parser. The payload. complete
- 8:14with that sum of old user id gets parsed from
- 8:17json into a closure map and the parser works
- 8:20perfectly exactly it works perfectly keeps the
- 8:22malicious key now step three is where the architecture
- 8:25really betrays them metabase uses a sql query
- 8:29builder library called honey sql right honey
- 8:31sql has this specific keyword called raw if you
- 8:35pass data tagged with raw You are explicitly
- 8:38telling the database, do not parameterize this.
- 8:41Treat this as literal SQL code. Which is wild,
- 8:43right? I mean, parameterization is the golden
- 8:45rule of database security. It separates the code
- 8:48from the user's data so you can't run an injection
- 8:50attack. Why would a developer ever include a
- 8:53raw bypass? Well, because developers demand flexibility.
- 8:56BI tools have to generate these insanely complex,
- 8:59highly customized queries across dozens of different
- 9:02database dialects. So it's a performance thing
- 9:04or just to make it work? Just to make it work.
- 9:06Yeah. Parameterization often breaks down when
- 9:08you're trying to dynamically construct really
- 9:10complex table joins on the fly. So the raw keyword
- 9:14was a deliberate documented feature for the developers
- 9:17to use when the standard engine just couldn't
- 9:20handle the complexity. Wow. But the attacker
- 9:23leverages that feature. Yeah. And that brings
- 9:25us to the sync, which is the final step. Right.
- 9:28The system takes that smuggled user ID. Assumes
- 9:32it's a safe integer because, hey, it came from
- 9:34the password reset flow and drops it into a database
- 9:36lookup using that raw keyword. And suddenly the
- 9:39attacker is executing arbitrary, unparameterized
- 9:42SQL directly against Metabase's own internal
- 9:45application database. Incredible. And they did
- 9:48all of this from the password reset page without
- 9:50authenticating once. This is exactly why SCADA
- 9:53code analysis tools completely missed this. I
- 9:56mean, if you run a scanner on that code, it sees
- 9:58the closure merge and says, yeah, valid function.
- 10:00Yep. the honey sql raw command and says yep known
- 10:03library feature the vulnerability doesn't exist
- 10:05in any single line of code it exists entirely
- 10:07in the seams between those functions it fundamentally
- 10:10challenges how we audit software we review components
- 10:13in isolation but the explosive reaction only
- 10:16happens when they are combined under malicious
- 10:18conditions and what's almost tragic about this
- 10:20is how simple the fix was yeah when wiz reverse
- 10:24engineered the patch they found metabase fixed
- 10:27this 10 out of 10 vulnerability with about three
- 10:29lines of code. Three lines. They just added a
- 10:32validation check to ensure the user ID was a
- 10:35positive integer before letting it touch the
- 10:37database. Three lines to stop an internet -wide
- 10:40meltdown. But, you know, by the time those three
- 10:42lines were deployed, the attackers were already
- 10:44inside. Because this was a blind SQL injection
- 10:47into the application database, the attacker could
- 10:50manipulate the backend to forge a valid administrator
- 10:53session. Let that sink in for a second for everyone
- 10:55listening. They forged an admin session without
- 10:58a password. They didn't phish an employee. They
- 11:01didn't have to intercept a multi -factor authentication
- 11:02prompt. They bypassed the entire authentication
- 11:06apparatus. They just walked right past it. Exactly.
- 11:08And once they had that forged session, they possessed
- 11:11the key ring. Which leads us directly into the
- 11:14fallout. The source material spends a lot of
- 11:17time analyzing the victim response. They specifically
- 11:20praise what they call the honest five. The honest
- 11:22five, right. Because we don't know the full count
- 11:25of Metabase cloud tenants that were breached,
- 11:27but five companies published highly detailed,
- 11:30incredibly transparent postmortems of their own
- 11:33breaches. And you rarely see this level of honesty
- 11:35because, you know. Legal teams usually sanitize
- 11:38these disclosures into oblivion. Oh, absolutely.
- 11:41Checkly was one of the five. They do synthetic
- 11:43monitoring. They're SOC2 certified, deeply engineering
- 11:46focused. Yeah. And they reported that the attacker
- 11:48had 26 minutes of read -only query access against
- 11:52their connected data warehouse. But 26 minutes
- 11:54of read -only access to a central data warehouse
- 11:57is catastrophic. Yeah. Treckley admitted the
- 12:00attacker pulled plaintext custom headers, hashes
- 12:02of OpenTelemetry API keys, and encrypted integration
- 12:05tokens for Slack, Vercel, and CoreLogix. Framework,
- 12:09the modular laptop company, was another one.
- 12:11They found out on August 6th that their data
- 12:14had been exfiltrated three days earlier. Yeah.
- 12:17They lost massive amounts of personally identifiable
- 12:20information, PII. Full names, emails, billing,
- 12:24and shipping addresses. The only silver lining
- 12:26there was that their payment processing was entirely
- 12:28segregated. Tally, the form builder, had a similar
- 12:31exposure. They lost emails and hash passwords.
- 12:35At the time of the source publication, there
- 12:37was actually an open question regarding whether
- 12:39Tally's password hashes were salted. Why does
- 12:42that matter so much? Well, if you don't salt
- 12:44a hash, attackers can crack them exponentially
- 12:46faster using pre -computed rainbow tables. It's
- 12:49a huge risk. Oh, right. Then we have KiloCode,
- 12:53the first known victim from August 2nd. They
- 12:55lost PII and user prompts. But what's brutal
- 12:58is that three days into their incident response,
- 13:00they realized the attacker hadn't just queried
- 13:03the database. They had extracted access tokens
- 13:05for KiloCode's internal Slack bot. That's terrifying.
- 13:09It is. They had to frantically invalidate all
- 13:11those tokens before the attacker pivoted into
- 13:13their internal communications. But the standout
- 13:15response here really belongs to N8N, a workflow
- 13:18automation company. The source rightly calls
- 13:21their disclosure a masterclass in forensic scoping.
- 13:24I loved this part. They didn't just say, oh,
- 13:26data was accessed. They narrowed the blast radius
- 13:29to exactly 136 records. But what makes their
- 13:33postmortem exceptional is their technical honesty
- 13:35regarding non -deterministic queries. Yes. OK,
- 13:38so this part actually confused me initially.
- 13:40They explicitly stated that out of those 136
- 13:44records, they couldn't be 100 % sure if 62 of
- 13:49them were actually accessed. Right. Why couldn't
- 13:51they just look at their SQL logs and see exactly
- 13:53what? the attacker downloaded? Because database
- 13:56logs generally record the question that was asked,
- 13:59not the answer that was given. Oh, okay. Yeah.
- 14:01So if an attacker injects a non -deterministic
- 14:04query, like select all from users order by random
- 14:07limit 10, the log proves the attacker asked for
- 14:1010 random users. But it doesn't log which 10
- 14:13random users the database handed over. Exactly.
- 14:15Or if the query relied on a hyper -specific timestamp
- 14:19that has since passed, the defenders just cannot
- 14:21replicate the exact state of the database at
- 14:23the moment of the attack. And NAN admitted this
- 14:26blind spot instead of pretending they had perfect
- 14:28visibility. They own the ambiguity. And here's
- 14:31where it gets really interesting for you as a
- 14:33listener. While NAN was doing this incredibly
- 14:36deep forensic sweep, They actually found a completely
- 14:39unrelated three -year -old bug. Yeah. It had
- 14:42already been fixed, but historically it had left
- 14:4425 passwords sitting in plain text in an old
- 14:48table. And they disclosed it anyway. I mean,
- 14:50they were investigating a massive zero -day fire,
- 14:53stingled upon the cold ashes of a three -year
- 14:56-old mistake, and proactively contacted those
- 14:5925 users. That is the gold standard for security
- 15:02culture right there. Oh, without a doubt. But
- 15:04stepping back, Checkly's postmortem contained
- 15:06an admission that I think applies to almost everyone
- 15:08listening to this deep dive. When they audited
- 15:11the 26 minutes of queries, they realized their
- 15:14analytics environment simply had far more permissions
- 15:17and access to highly sensitive data than it actually
- 15:20required to build its charts. It is a massive
- 15:23violation of the principle of least privilege.
- 15:26scaled across their entire infrastructure i mean
- 15:28if a bi tool only exists to visualize daily sales
- 15:32metrics why does its database credential have
- 15:35the authority to pull from the hashed passwords
- 15:37table exactly or they open telemetry token configuration
- 15:40we over permission internal tools because it's
- 15:44just faster for the developers now i do want
- 15:46to talk about how metabase handled this because
- 15:49the source paints a very nuanced picture of vendor
- 15:51responsibility here it is a fiercely debated
- 15:54scorecard Let's start with the commendations.
- 15:57Detecting an unknown zero -day intrusion on your
- 16:00managed cloud environment and deploying a patch
- 16:02globally on the exact same day is phenomenal.
- 16:05It really is. They also handed incredibly detailed
- 16:07forensic logs directly to the victims. Checkly
- 16:10explicitly stated they would not have been able
- 16:12to scope their own breach without Metabase providing
- 16:15those internal logs. Right. I look at that same
- 16:17-day cloud patch and think, that is heroic incident
- 16:20response. Yeah. But then you look at the self
- 16:22-hosted site and it's a completely different
- 16:24story. There was a full three -day gap between
- 16:27Metabase containing the attack on their own cloud
- 16:29on August 3rd and issuing the public advisory
- 16:32on August 6th. And this is where the friction
- 16:34is. Metabase protected their paying cloud tenants
- 16:37instantly. But by delaying the public disclosure,
- 16:41they left thousands of open -source, self -hosted
- 16:45instances completely blind on the internet. While
- 16:47attackers were actively hunting them. Exactly.
- 16:49Attackers who had already reverse -engineered
- 16:52the cloud patch. And the fact that they released
- 16:54the advisory without a CVE identifier compounded
- 16:57the disaster. Automated security scanners and
- 17:00triage dashboards, they pull from CVE databases.
- 17:04By not securing that CVE for nearly a business
- 17:06week, Metabase basically ensured that every automated
- 17:09defense system on the planet was silent. The
- 17:12dashboards were green while the servers were
- 17:14burning. It really highlights the extreme tension
- 17:17between protecting managed infrastructure and
- 17:20fulfilling your obligations to the open source
- 17:22community. And the chaos was amplified by the
- 17:26attribution fog. Oh, right. Who actually executed
- 17:29this campaign? Well, on August 11th, a notorious
- 17:32ransomware syndicate called Shiny Hunters claimed
- 17:35responsibility by listing Metabase on their extortion
- 17:37site. But the source is extremely adamant on
- 17:41this point. Treat that as a claim, not a verified
- 17:44fact. Because in threat intelligence, claims
- 17:46are cheap. The data miner analysis labeled the
- 17:49shiny hunters post as an unconfirmed placeholder.
- 17:52Interesting. Yeah. The listing only advertised
- 17:54about seven gigabytes of data and it lacked all
- 17:57of the descriptive metadata, sample proofs and
- 17:59scoop details that shiny hunters typically uses
- 18:02to prove they actually have the goods. It fits
- 18:04their operational pattern, you know, compromising
- 18:06a central platform to harvest data from downstream
- 18:09targets. But a pattern is not proof. But regardless
- 18:12of who did it, there was a secondary threat that
- 18:15emerged in the aftermath that really unsettled
- 18:17me. The source code leak? Yes. Cyber news researchers
- 18:20were digging through the published archive dumps,
- 18:22and they found 174 gigabytes of source code originating
- 18:27from nearly 300 private database repositories.
- 18:31Which is arguably worse than losing the data
- 18:33itself. Really? How so? Well... If a company
- 18:36used a secrets manager, their immediate data
- 18:38loss might be contained. But exfiltrated source
- 18:41code provides an attacker with a treasure map.
- 18:44They can pull that code offline, feed it into
- 18:47advanced static analyzers, and just spend months
- 18:49looking for the next composition flaw in the
- 18:51seams of the architecture, completely undetected.
- 18:54So what does this all mean for us? You know,
- 18:57the source crystallizes this entire disaster
- 18:59into five highly actionable lessons. And they
- 19:02aren't theoretical. These are things you need
- 19:03to check on Monday morning, lesson one. Treat
- 19:05your BI tools as production systems. You cannot
- 19:08view them as passive dashboards. They are the
- 19:10key ring. You must ruthlessly audit the service
- 19:13accounts connected to them. Enforce strict minimum
- 19:15read -only access scoped entirely to the tables
- 19:18required for the specific charts being generated.
- 19:21Definitely. Lesson two. Hide your internal endpoints.
- 19:25The fact that Metabase's entire API, including
- 19:28the password reset endpoint, was sitting openly
- 19:31on port 3000 exposed to the public internet is
- 19:33staggering. It's an unforced architectural error.
- 19:36Engineers rationalize it by saying, well, our
- 19:38remote employees might need to reset their BI
- 19:41dashboard password from home. But if an application
- 19:44does not serve external customers, it should
- 19:47never route directly to the public internet.
- 19:49Put it behind an identity -aware proxy or a VPN.
- 19:51If those 4 ,000 vulnerable instances had simply
- 19:54restricted port 3 ,000 to internal traffic, this
- 19:58exploit would have bounced harmlessly off their
- 20:00firewalls. Lesson three really redefines cloud
- 20:03security. I think. Using a managed cloud service
- 20:06does not make you invincible. Remember, the Metabase
- 20:08cloud tenants were patched perfectly on the same
- 20:10day. And yet Framework, Checkly, and Tally still
- 20:13lost their data because the exfiltration happened
- 20:15in the hours before the patch existed. This is
- 20:18the terrifying reality of fourth -party risk.
- 20:21If you are a customer buying a laptop from Framework,
- 20:24your PII was breached. Not because Framework's
- 20:27engineers made a mistake. And not even because
- 20:29Framework's vendor messed up. But because of
- 20:31the vendor's vendor. Exactly. Because a vulnerability
- 20:33in a third -party open source library used by
- 20:37Framework's BI vendor was exploited. Traditional
- 20:40compliance audits are virtually blind to that
- 20:43depth of supply chain risk. Which brings us to
- 20:46lesson four. When a breach like this occurs,
- 20:48rotating passwords is not enough. You have to
- 20:51rotate everything. Because the initial vector
- 20:53allowed the attacker to forge an active administrative
- 20:56session, if you apply the three -line patch,
- 20:59you stop new attackers from getting in. But the
- 21:01attacker with the forged token is already inside.
- 21:04Wow, so the patch doesn't kick them out. No,
- 21:06their session survives the software patch. You
- 21:08must systematically revoke all active sessions,
- 21:11and you have to rotate every single credential
- 21:13for every downstream database connected to the
- 21:15tool. And the source provided this incredibly
- 21:18elegant one -minute log check to determine if
- 21:21you were hit. You basically query your web access
- 21:23logs. You look for a POST request to API slash
- 21:27session slash reset underscore password that
- 21:30returns an HTTP 400 failure code. Okay. If that
- 21:33exact request is followed immediately by a GE2
- 21:36request to API slash user slash current returning
- 21:39an HTTP 200 success code, you've been breached.
- 21:43It's brilliant in its simplicity. A failed password
- 21:46reset instantly followed by a successful authenticated
- 21:49API call. It perfectly tracks the attacker failing
- 21:52the token check but successfully smuggling the
- 21:54payload to forge the session. And finally, Lesson
- 21:565. Stop hiding secrets in plain sight. Checkly
- 22:00realized their most critical exposure wasn't
- 22:02even the core database structure. It was that
- 22:04their own developers and customers were typing
- 22:06plain text API integration tokens directly into
- 22:10free text configuration fields. Because it was
- 22:12faster than setting up the encrypted secrets
- 22:14manager. Human friction will always route around
- 22:17security. If the encrypted secret store requires
- 22:20five extra clicks, developers will paste the
- 22:23AWS key into the description field. You have
- 22:26to actively scan your configuration stores for
- 22:28credential formats and forcefully deprecate plain
- 22:31text entry fields. Looking at the entirety of
- 22:34this incident, it is a masterclass in unintended
- 22:37consequences. Four perfectly documented, mathematically
- 22:41correct functions, a merge, a parser, a query
- 22:45builder, and a database lookup. No broken code.
- 22:48No broken code. But layered together, they forged
- 22:50a 10 out of 10 weapon that bypassed authentication
- 22:52completely. turning a read -only analytics dashboard
- 22:55into a master key that gutted dozens of companies
- 22:57in a matter of hours. It really forces us to
- 23:00evolve beyond hunting for broken code and start
- 23:02hunting for toxic interactions between correct
- 23:04code. But, you know, if we are talking about
- 23:06evolution, there is one final, deeply unsettling
- 23:09detail from the source text that fundamentally
- 23:11indicts how the cybersecurity industry prioritizes
- 23:14risk. Scoring model, right? Yes. The EPSS score.
- 23:18the exploit prediction scoring system it is an
- 23:21advanced mathematical model that ingests threat
- 23:24intelligence and calculates the raw probability
- 23:26that a specific vulnerability will actually be
- 23:29exploited in the wild it's the dashboard that
- 23:32every security operations center relies on right
- 23:34yeah when you have 10 000 alerts you sort by
- 23:36the epss score to figure out what actually needs
- 23:39patching today exactly but let's look at the
- 23:42reality of this metabase zero day we had an active
- 23:4510 out of 10 severity of vulnerability. It was
- 23:48actively being mass scanned across the entire
- 23:50internet. It was actively being exploited to
- 23:53exfiltrate massive amounts of corporate data
- 23:55from high profile targets. It was officially
- 23:58enshrined on CISA's known exploited vulnerabilities
- 24:01catalog. And throughout this entire active meltdown,
- 24:04the predictive EPSS score for the CVE was sitting
- 24:08at well under 1%. Under 1%. So the algorithm
- 24:11essentially told security teams that this active
- 24:14global fire was mathematically irrelevant. Yes.
- 24:17And this leaves you with an incredibly provocative
- 24:19question to mull over. We rely on these advanced
- 24:23predictive triage models to cut through the noise.
- 24:26But if the algorithm completely blinds us to
- 24:29a 10 out of 10 active threat, because the math
- 24:31mathematically ranks it as low risk, are our
- 24:34automated prioritization tools actually creating
- 24:37new vulnerabilities? Wow. As the source stated
- 24:40so perfectly, confirmed beats predicted every
- 24:43time. That is heavy. If your company's security
- 24:46team relies on a predictive scoring dashboard
- 24:48to decide what gets patched today, what massive
- 24:51active fires are they completely ignoring right
- 24:53now? Simply because the algorithm assured them
- 24:56the probability was under 1%. It's a scary thought.
- 24:59It makes you question the very foundation of
- 25:01how we defend our networks. And it should definitely
- 25:03make you rethink exactly what might be quietly
- 25:05sitting on port 3000 of your own infrastructure
- 25:08right now, holding the master key ring to your
- 25:10entire business. Thanks for joining us on this
- 25:12deep dive.