DNS Benchmark ProReal-time DoH latency analysis

Data Breach Update

Data Breach Update Alert: The IP Allowlist Came First

By Nattapong Sukkasem · Published · Updated .

TL;DR — Chainalysis, the blockchain analytics firm whose customers include law enforcement agencies, regulators, banks and exchanges, spent nine days revising what it knew about an intrusion. On 30 October it said there was no evidence that authentication credentials or session tokens had been accessed. On 4 November it said names, usernames, password hashes and live tokens for all users had been exposed, and took its own login page offline the same day. When service returned on 6 and 7 November it returned behind an IP allowlist, with password resets and API-key rotation only afterwards. That ordering is the most informative thing in the entire data breach update.

Read the remediation before you read the statement. The most useful detail in this week's data breach update is not what Chainalysis says was taken, but the order in which it told customers to recover. Before anyone reset a password, before anyone rotated an API key, the company asked each customer organisation to send a list of trusted IP addresses so it could build an allowlist. A vendor reaches for network origin as a gate only when it has concluded that nothing a user holds can still be trusted to prove who they are.

Data breach update: the Lower Manhattan skyline seen across the harbour from Ellis Island, near the New York headquarters of blockchain analytics firm Chainalysis, which disclosed that password hashes and live tokens for all users were exposed
Lower Manhattan from Ellis Island. Chainalysis is headquartered in New York and says it serves more than 1,500 customers across law enforcement, government, financial institutions, insurers and crypto businesses.

What Chainalysis published, and when

The company's incident page is not a statement but a running log, newest entry first, revised seven times since 30 October. That structure matters, because several entries contradict earlier ones.

Date (EST)What Chainalysis said or did
Fri 30 OctDiscloses the incident; says no evidence of access to investigation content, authentication credentials or session tokens
Mon 2 NovTakes Reactor and Data Solutions offline out of an abundance of caution; KYT is left running
Wed 4 Nov, 09:50Emails customers that an on-path attack exposed a subset of passwords; affected accounts are locked
Wed 4 Nov, 10:30Takes KYT, other address screening products and the login page offline
Wed 4 Nov, 23:00Says names, usernames, password hashes and live tokens for all users were exposed, discovered on Monday
Fri 6 – Sat 7 NovRestores KYT, Address Screening and Reactor in phases, behind an allowlist of customer-supplied IP addresses

Data Solutions and Chain (Beta) are not recorded as restored. No affected-customer count has been published and no CVE has been issued. Chainalysis has also not said whether the three findings — the October data access, the on-path password interception, and the exposure of hashes and live tokens — involve one attacker, one intrusion, or several of each. Customers are therefore being asked to scope an incident whose outer boundary the vendor itself has not finished drawing, which is an awkward position for any third-party risk register.

The reversal, and the numbers that do not match

Two entries in that log cannot both be complete. The 30 October customer email said there had been no unauthorised access to passwords in clear text, MFA secrets or user session tokens. Five days later the company said live tokens for every user had been exposed, and that it had learned this on Monday 2 November — the same day it pulled Reactor offline and left KYT running.

A second mismatch sits inside 4 November itself. The morning email describes an on-path attack that exposed a subset of customer passwords. The late-night entry describes password hashes and live tokens for all users. Chainalysis has not said whether those are one incident or two, and it has not named the algorithm used to hash the passwords.

Data breach update: an annotated bcrypt password hash showing the algorithm identifier, cost factor, salt and digest segments, illustrating the password hashing detail Chainalysis has not disclosed
A bcrypt hash broken into its parts: algorithm identifier, cost options, salt and digest. Chainalysis has named neither its algorithm nor its cost factor, so customers cannot estimate how long the exposed hashes will hold.

Why the IP allowlist came before the password reset

Consider what a password reset actually accomplishes against this particular loss. It invalidates the thing a user types. It does nothing to a session token issued earlier and still inside its validity window, because a bearer token carries its own authority: whoever presents it is treated as the account it was minted for, and the password is never consulted again. Resetting a password and revoking a session are separate operations in almost every authentication stack, and only the second one is in the vendor's hands.

That is why the recovery ran in the order it did. Chainalysis could not ask users to reset passwords on 4 November, because it had just taken the login page offline. It could not fall back on its own session state, because it had just said every live token was exposed. What remained was the single property of an inbound request that a stolen credential cannot supply: where the packet came from. The allowlist was not an enhancement bolted on during recovery. It was the last control standing.

That ordering is the part of this data breach update worth copying into your own runbook, because it tells you what a vendor believes it has lost without the vendor having to say so. Read every vendor recovery sequence the same way from now on. If the first instruction is network origin, assume credentials and sessions are both in play. If the first instruction is a password reset, the vendor still believes its session store is intact.

What an allowlist is not

It authenticates a network, not a person. Anyone inside your office range, on your VPN concentrator or on a compromised host sharing the same egress address inherits the permission wholesale. An allowlist buys time while tokens age out and credentials turn over. It is a tourniquet, and tourniquets come off.

No named zero-day vulnerability, and no explanation

The 30 October email said an external actor had used "offensive agentic techniques" to gain unauthorised access to Chainalysis systems and internal tools. The company has never defined the phrase, has not said an AI agent caused the breach, and a spokesperson declined to add anything beyond the blog. Treat it as a statement that was made rather than as an explanation: you cannot write a detection rule against it, scope your own exposure with it, or tell a risk committee anything useful using it.

The same applies to the defect. There is no named zero-day vulnerability in this story, and that absence is not reassurance. The company says the exploited vulnerabilities have been patched and the attack vector contained and remediated, but it has not named one of them, issued a CVE, or even described the class of flaw. An unnamed defect cannot be checked for anywhere else — not in your other vendors, and not in your own stack.

Data breach update: rows of racked compute in a large data centre, representing the hosted server infrastructure a software vendor takes offline during an incident like the Chainalysis credential exposure
Racked compute of the kind a hosted vendor takes offline during an incident. Chainalysis removed Reactor, Data Solutions, KYT, Address Screening and its login page across five days.

Cloud security when the outage is someone else's

For nine days the server infrastructure that mattered most to roughly 1,500 compliance and investigations teams sat in none of their data centres and on none of their change calendars. It was offline, then partly online, on a schedule published in a blog post and revised without notice.

This is a cloud security problem of the plainest kind, and the uncomfortable part is how little the customer side has to work with. You cannot scan someone else's tenant, you cannot read their authentication logs, and the only artefact you will ever receive is the vendor's own account of events. Most teams have a rehearsed plan for a DDoS attack: who to page, which provider to call, what the graph should look like when it is over. Almost nobody has the equivalent for a vendor that holds live sessions into their tenant and cannot say how it was entered.

Data breach update: a DNS server performance benchmark comparing response times across public resolvers, the kind of independent measurement that does not depend on a vendor disclosure
DNS server performance measured across public resolvers. Independent measurement of the infrastructure you depend on is the one check that never requires a vendor's cooperation.

What to do this week

  1. Establish who in your organisation holds Chainalysis seats. The 30 October tranche included user IDs, full names, email addresses and organisation role labels. A role label beside a work address is a precise phishing target, and Chainalysis has warned customers about impersonation and unexpected authentication prompts.
  2. Rotate API keys even where your console shows the session as expired. The company's own sequence places key rotation after allowlist admission, which means any key issued before 4 November should be treated as exposed whatever your audit log says.
  3. Produce your egress addresses before somebody asks for them. Submitting a trusted IP list sounds trivial until you find nobody owns the answer. Confirm what your office, VPN and cloud gateways actually present using the public IP address check, then record them somewhere procurement can find them next time.
  4. Chase password reuse, not just password resets. Hashes of unknown strength are hashes you should assume will fall eventually. A Chainalysis password reused on any other service is an IT security question for the whole estate, not a Chainalysis one.
  5. Resolve the vendor hostnames your staff reach, and keep the answers. A network diagnostic tool that records what a name returned and when gives you something to compare against if a wave of look-alike domains follows the disclosure.
Data breach update: a network latency comparison chart across public DNS resolvers, illustrating the egress and resolution path visibility an organisation needs before a vendor incident
Network latency across resolvers in a single run. Where your traffic originates is now a vendor-facing fact, and knowing it before an incident is far cheaper than discovering it during one.

DNS over HTTPS and the order that told the truth

If you are assembling trusted egress addresses for a vendor allowlist, notice what else that exercise exposes. DNS over HTTPS has quietly moved a great deal of name resolution out of the resolvers you operate and into browsers and applications, so the list of hostnames your staff actually reach no longer lives in one place. An allowlist settles where your traffic comes from. It says nothing whatsoever about where that traffic goes.

The durable lesson of this data breach update is to read vendor statements as engineering artefacts rather than announcements. Chainalysis published seven entries in nine days and reversed itself on the most consequential one. What stayed steady, and what told you the most, was the shape of the recovery. Network origin first, credentials second. That order was the real disclosure.

Sources

Related articles

Browse every DNS news article by month →

DNS angle

Review resolver logs for the systems discussed above and compare unexpected names with your approved services. A successful lookup does not establish that a destination is safe. Use the DNS lookup tool to inspect current answers, then compare them with your own resolver and incident records.

Source: Chainalysis — Chainalysis security incident information (running log, updated 7 November 2026) ().