← Blog

Smishing Campaign Analysis for SOCs: Graphs and Adversarial Tests

Smishing Campaign Analysis for SOCs: Graphs and Adversarial Tests

This is almost certainly a phishing-as-a-service (PhaaS) operation running short-lived domains behind reusable landing kits, built around delivery, toll, or payroll lures. The immediate move is to extract the URL from the reported message and pivot to passive DNS and WHOIS history before the domain rotates out from under you. Everything below builds toward the triage, hunting, and incident response steps that turn that first pivot into a full campaign map.


TL;DR:

  • Most smishing campaigns use reusable landing kits with distinct infrastructure patterns, making passive DNS and WHOIS history vital for tracking their scale and rotation.
  • Key indicators include fast domain registration and rotation, registrar and ASN clustering, and consistent asset path structures across seemingly unrelated domains.
  • Detection systems need a multi-signal approach combining lexical analysis, structural features, and relational graph analysis to overcome obfuscation tactics.
  • Rapid incident response requires scripted workflows for enrichment, containment, and evidence preservation, with strong cross-team coordination to act within seconds.
  • Collaborating across organizations and sharing indicators accelerates disruption, as campaigns often span hundreds of thousands of domains and remain active for days or weeks.

Table of Contents

What Does Smishing Campaign Analysis Actually Involve?

Smishing campaign analysis is the process of taking a single reported text message and reconstructing the infrastructure, tactics, and scale of the operation behind it. It’s a discipline that borrows from malware analysis, threat intelligence, and network forensics, but applies them to a channel most enterprise security stacks still can’t see: SMS, iMessage, and messaging apps that never touch a corporate email gateway.

The lures follow predictable patterns because they work. Common templates include:

  • Delivery and toll-payment alerts impersonating carriers like USPS, FedEx, or regional tolling authorities
  • Bank and account-verification warnings claiming suspicious activity or a locked account
  • Payroll and HR notices, often timed around pay cycles, directing targets to “update” direct deposit details
  • Gift card and executive impersonation requests, where a message poses as a CEO or manager asking for an urgent purchase
  • Package or subscription confirmation messages with a fake tracking or cancellation link

The attacker’s objective is almost always credential harvesting or direct fraud, and the victim workflow is engineered to be fast. A target taps a link, lands on a page cloned from a real brand, enters credentials or payment data, and the kit exfiltrates that data within seconds, often before any security control has a chance to react.

Scale is what separates a nuisance from an enterprise risk. Unit 42’s analysis of a global smishing operation identified hundreds of thousands of unique fully qualified domain names tied to a single campaign, with a disproportionate share impersonating USPS and toll-payment services. That volume matters because it means the domain hitting your employee’s phone this morning is one node in an infrastructure built for constant replacement. Treating each report as an isolated incident, rather than a data point in a larger graph, is how defenders miss the pattern until it’s already cost someone their credentials.

Anatomy of a Smishing Campaign: Lures, Templates, and Landing Kits

Every smishing message carries artifacts that, read correctly, tell you far more than “this looks suspicious.” The template language, the link structure, and the landing page’s own code all leave fingerprints an analyst can extract from a single sample.

Message templates rely on urgency and authority. “Your package is on hold,” “unusual sign-in detected,” or “your direct deposit failed” all trigger the same psychological shortcut: act now, verify later. What varies is the delivery mechanism, and that’s where the useful indicators live.

  1. Link shorteners and redirect chains. Attackers often route through a shortener before landing on the phishing domain, both to obscure the destination and to defeat basic keyword filters.
  2. Combosquatting and homoglyphs. Domains like “usps-tracking-update[.]com” or ones swapping a lowercase “l” for a capital “I” are built to survive a glance without surviving a WHOIS lookup.
  3. Token shapes in the URL path. Many kits append a unique identifier per victim (a hex string, a base64 blob) used to track click-through and personalize the landing page.
  4. Asset path prefixes. Landing kits frequently reuse a consistent directory structure (/assets/, /us/, /track/) across otherwise unrelated domains, a fingerprint of the kit template rather than the individual site.
  5. Embedded analytics tags. Some kits retain a developer’s tracking pixel or analytics ID from the original build, an accidental but durable signature.

The landing kit itself is often more revealing than the message. Investigations into the Smishing Triad found PhaaS kits built on frameworks like Javalin, using wildcard DNS and automated Let’s Encrypt TLS provisioning to spin up convincing, encrypted-looking pages in minutes, some with server-side backdoors that exfiltrate stolen credentials directly to Telegram. Other kits skip simple form submission entirely and open a WebSocket connection to stream victim input to the operator in real time as it’s typed, which is exactly the behavior Censys documented in a USPS-impersonation kit that served genuine USPS assets alongside a live exfiltration channel.

Capturing these artifacts safely matters as much as finding them. Never load a suspected phishing link on a production device or browser session tied to your identity. Use an isolated sandbox or a dedicated analysis VM, capture full HTTP response bodies and headers (not just a screenshot), and log the resolved IP and TLS certificate details before the domain potentially rotates.

Pro Tip: Save the raw HTML source of the landing page, not just a rendered screenshot. Asset path prefixes and embedded analytics IDs live in the markup and get stripped out of a visual capture.

Infrastructure Indicators: Domains, DNS, Hosting, and Persistence Signals

Lexical indicators, the domain name itself, the exact wording of the message, rotate fast. Structural indicators rotate slowly. That asymmetry is the single most useful fact in smishing campaign analysis: an operator can register a new domain in minutes, but changing hosting provider, registrar workflow, or kit template requires real engineering effort.

Passive DNS is the tool that exploits this. Querying a platform like Censys against a single seed IP or hostname often surfaces the full rotation history behind it. In one documented USPS-impersonation case, a single seed IP resolved to 682 unique hostnames over its operational life, all sharing the same kit fingerprint. That’s not 682 unrelated incidents. That’s one campaign, and passive DNS is what makes the connection visible months after any individual domain has gone dark.

Several structural markers are worth pivoting on immediately:

  • Registrar and nameserver concentration. Operators often reuse the same registrar or a small pool of nameservers across hundreds of domains because switching providers adds operational friction.
  • Hosting ASN clustering. Domains hosted on the same autonomous system, especially budget or bulletproof hosting providers, frequently belong to the same operation.
  • TLS certificate provisioning patterns. Automated Let’s Encrypt issuance timed in tight batches suggests scripted domain generation rather than organic registration.
  • Cookie name families and banner hashes. Landing kits reuse session cookie naming conventions and server banner strings across deployments, both of which survive a full domain change.
  • FQDN churn rate. Tracking how many new domains appear per week against how many go offline gives you a live read on operational tempo.

Domain churn at scale is the defining signal of PhaaS operations. Unit 42’s telemetry on a single global campaign tracked domain volumes running into the hundreds of thousands of FQDNs, with most individual domains living only days before rotation. A campaign with that churn rate cannot be blocked domain by domain. It has to be disrupted at the infrastructure layer, which means registrar and hosting escalation matter more than any single blocklist entry.

The practical pivot sequence, once you have one confirmed phishing URL, runs: resolve the hostname to its current IP, query passive DNS for every other hostname that IP has served, pull WHOIS and registrar data for the seed domain and check registrant patterns across sibling domains, and fingerprint the landing page’s asset paths and cookie names to search for the same kit elsewhere. Each step should take minutes, not hours, and each one expands your confirmed indicator set for the next.

Detection Methods: Classification, Adversarial Robustness, and Graph Visualization

Text classifiers built on classical lexical features, bag-of-words models, simple keyword matching, tend to perform well on clean, unobfuscated smishing text and then fall apart the moment an attacker introduces noise. Empirical testing across five model architectures found that classical models suffer near-catastrophic accuracy loss under character obfuscation and structural perturbation, while transformer-based architectures degrade far less, though they remain vulnerable to structural manipulation of the message itself. That gap is the reason clean-text accuracy is a poor proxy for real-world detection performance. A model that scores 98% on a benchmark dataset can still miss a message where every third character has been swapped for a homoglyph.

The fix isn’t a single better model. It’s a multi-signal pipeline that fuses text classification with structural features an attacker can’t easily manipulate: URL and WHOIS age, registrar reputation, DNS history, hosting ASN, and community-sourced user reports layered on top. A detection system that only reads the message text is blind to the fact that the domain it points to was registered six hours ago through a registrar known for bulk automated signups.

Graph-based visualization adds a layer classification alone can’t provide: relational context. Rather than scoring one message in isolation, a tool like SmishViz constructs a tripartite graph linking messages, the web entities they point to, and the sub-clusters those entities belong to, then applies graph metrics, degree centrality, density, connected components, to surface which infrastructure nodes are operationally central. Case study results from that approach show it can reveal campaign operations and central web entities that would be invisible from any single message or domain viewed alone. Rooting the graph at web entities rather than message text is what makes it durable. Message wording changes constantly. The underlying infrastructure graph moves far slower.

Detection layer What it catches What it misses alone
Classical lexical/text models Known keyword patterns, unobfuscated lure language Character-level obfuscation, homoglyphs, novel phrasing
Transformer-based text models Obfuscated and paraphrased lure language with higher resilience Structural perturbation, cross-message infrastructure links
URL/WHOIS/DNS structural features New domain registration, registrar/ASN clustering Messages using compromised or aged legitimate domains
Graph-based visualization (SmishViz-style) Shared infrastructure across seemingly unrelated messages Nothing on its own; depends on quality of upstream signal extraction

Operational testing has to include adversarial evaluation as a standing practice, not a one-time benchmark. Building a lightweight adversarial test harness, character substitution, whitespace injection, structural reordering, and running it against your production classifier on a schedule catches degradation before an attacker’s obfuscation techniques do it for you. This is the same discipline that shows up in the academic literature: adversarial evaluation belongs in the detection model lifecycle, not bolted on after deployment.

A few operational guidelines follow from this:

  • Never trust a single classifier’s clean-text score as a deployment gate; require an adversarial-robustness pass first.
  • Fuse structural WHOIS/DNS features with text classification rather than relying on either alone.
  • Build graph relationships at the infrastructure level so one confirmed malicious domain expands into a cluster, not a dead end.
  • Re-test detection models against newly observed obfuscation techniques quarterly, since attacker tooling evolves faster than most retraining cycles.

Building an Incident Response Playbook for Smishing Campaigns

Smishing incidents move faster than most email phishing cases because the exfiltration window can close in seconds, not minutes. A playbook built for email compromise, with its assumption of a gateway log and a delayed click, doesn’t map cleanly onto a channel where the click happens on a personal or BYOD device outside any corporate log.

  1. Preparation. Establish a reporting channel employees actually use, whether that’s a forward-to-number, an app-based report button, or a helpdesk intake, and make sure it reaches the SOC within minutes, not through a ticket queue that clears once a day. Document stakeholders in advance: SOC, IT, legal, HR (for payroll-fraud lures), and communications, since executive impersonation cases often need a coordinated internal message fast.
  2. Identification. Enrich the reported URL immediately: resolve the hostname, pull passive DNS history, check WHOIS registration age, and query the domain against a graph of previously confirmed campaign infrastructure. If the domain shares an asset path prefix or cookie family with a known kit, treat it as confirmed campaign membership, not a new isolated case.
  3. Containment. Push short-term blocks at the DNS or proxy layer for the confirmed domain and any sibling domains surfaced through the pivot. Escalate to the registrar and hosting provider with your evidence package, and file abuse reports with the carrier if the sending number is spoofable or reused. If a specific employee clicked through, contain that account: force credential resets and review for lateral movement if the harvested credentials tie into SSO.
  4. Eradication and recovery. Coordinate takedown timing with registrar and hosting abuse teams rather than assuming a report guarantees quick action; document every submission and timestamp for the record. Preserve raw evidence, HTML source, headers, WHOIS snapshots, before the domain disappears, since post-takedown investigation often depends on artifacts you can no longer pull live. Close the loop with affected employees on what data was exposed and what to watch for, particularly for payroll or gift-card fraud cases where financial loss may follow.
  5. Lessons learned. Feed every confirmed indicator, domain, asset path, cookie name, registrar, back into your detection graph and hunting rule set before closing the case, so the next report against the same infrastructure resolves in seconds instead of starting the pivot from scratch.

Pro Tip: Time-stamp every enrichment step during identification. When you eventually file a report with a registrar, carrier, or law enforcement, a documented timeline of exactly when each indicator was confirmed carries far more weight than a summary written after the fact.

Cross-team coordination is the part most playbooks underweight. IT needs to know before blocking a domain that could also be legitimate infrastructure shared by a vendor. Legal needs visibility before any public takedown request goes out under the organization’s name. HR needs to be looped in the moment a payroll-fraud lure is confirmed, since the next step usually involves direct outreach to an affected employee about their bank details. A playbook that only lives in the SOC’s runbook misses the containment window every time.

Datasets, Telemetry Sources, and How to Measure Campaign Size

You can’t measure a campaign’s scale without a data source built for that purpose, and no single feed covers the full picture. Combining a handful of complementary sources is what turns a single reported message into a measurable operation.

  • SmishTank and similar community-sourced datasets publish message bodies, sender IDs, extracted URLs, and WHOIS or VirusTotal enrichments drawn from real reported samples, making them a practical starting point for building or validating detection models.
  • Passive DNS feeds and Censys — provide the historical resolution data that lets you pivot from one confirmed domain to its entire hosting and rotation history.
  • Programmatically harvested public reports from forums and social platforms can scale dramatically. One study mined 64,500 smishing image attachments and 28,600 sender IDs across five public forums to characterize infrastructure and messaging strategies at a volume no single organization’s reporting channel would generate alone.

For measuring campaign size and persistence, track four metrics consistently: total unique FQDN count tied to a confirmed kit fingerprint, churn rate (new domains registered per week against domains going dark), median domain lifespan from registration to takedown or abandonment, and degree centrality of infrastructure nodes in your campaign graph. A domain with high degree centrality, one connected to dozens of other confirmed campaign hostnames, deserves escalation priority over one that’s an isolated outlier.

Feeding these sources into a shared dashboard, rather than checking each manually per incident, is what turns campaign analysis from a reactive exercise into continuous monitoring. A quarterly threat signal report built on this kind of combined telemetry gives a useful benchmark for what “normal” churn and scale look like in a given quarter, so a sudden spike stands out immediately.

Threat-Hunting Recipes SOCs Can Deploy Today

Turning the indicators covered above into standing hunts is what separates a one-time investigation from a repeatable detection capability.

  1. Token-shape regex hunts. Build a regex that flags URLs containing a suspicious combination of shortener domains followed by a long alphanumeric token in the path, a pattern common to kits that personalize the landing page per victim. Run it against any URL telemetry your organization already collects, whether from a secure web gateway or mobile threat defense agent.
  2. Asset-path fingerprint matching. Once you’ve confirmed a kit’s directory structure (/assets/track/, /us/verify/), write a hunting query that searches historical and live web telemetry for that exact path pattern regardless of domain. This is one of the highest-yield recipes because kit templates get reused across dozens of unrelated-looking domains.
  3. Cookie and banner fingerprint hunts. Extract the session cookie name and server banner string from any confirmed landing page, then query Censys or your own web telemetry for other hosts returning the identical signature.
  4. Graph-hunting for high-degree entities. Build or query a campaign graph, SmishViz-style, and sort web-entity nodes by degree centrality. Nodes connected to unusually many message clusters or sibling domains are the infrastructure worth escalating first, since they represent shared operator tooling rather than one-off registrations.
  5. Registrar concentration alerts. Flag newly observed domains registered through a registrar that has already appeared in three or more confirmed campaign cases within the current quarter. Registrar reuse is one of the more durable operator habits, even as domain names themselves change constantly.

Alert tuning matters as much as the recipes themselves. A regex tuned too loosely on token shapes will flag legitimate marketing URLs and analytics redirects, burning analyst time on false positives until the rule gets disabled entirely. Start each new hunting rule in a monitor-only mode for one to two weeks, measure the false-positive rate against real traffic, and only promote it to an active alert once precision is acceptable for your team’s tolerance. Pair every rule with a documented decision tree for what happens when it fires, so a junior analyst on a night shift isn’t improvising an escalation call at 2 a.m.

Escalation criteria should be decided before an incident, not during one. Contact the domain’s registrar directly when you have confirmed structural evidence, shared asset paths, matching cookie names, tied to an active phishing kit, and you need faster action than a generic abuse form provides. Escalate to the hosting provider when the same ASN keeps appearing across multiple confirmed campaign domains, since provider-level action can disrupt dozens of sibling domains at once rather than one at a time. Involve law enforcement when the campaign includes direct financial fraud (payroll redirection, gift card scams with confirmed victim loss) or when the operation’s scale, hundreds of FQDNs, coordinated PhaaS infrastructure, crosses from a nuisance into something with jurisdictional weight.

Pro Tip: Keep a running “kit fingerprint library” internally: asset paths, cookie names, and banner hashes tied to every confirmed kit you’ve investigated. Most new incidents turn out to be the same kit on a new domain, and a five-minute lookup against that library beats re-running the full pivot from scratch every time.

Perspective: Operationalizing Campaign Analysis in Practice

Message-level detail gets attackers caught eventually, but only if someone connects it to everything else they’ve sent. Correlation across reports, not any single well-written alert, is what turns individual employee reports into an actual campaign map.

SmishAlert’s role in this playbook is deliberately narrow: capture user-reported messages across SMS, iMessage, and other messaging channels, correlate them against known campaign infrastructure, and surface that correlation to the SOC in a workflow analysts already use.

That looks like a few concrete integration points:

  • Reported messages get enriched automatically (URL resolution, domain age, hosting data) before they hit an analyst’s queue.
  • Correlated campaign clusters route into existing SIEM and ticketing systems through API integration, rather than living in a separate dashboard nobody checks.
  • Confirmed indicators feed back into detection logic, so the next employee who receives a message tied to the same kit gets flagged before they tap the link.

[Author credentials and proprietary case study details to be added.]

— Sophie

Collecting and analyzing smishing samples touches several legal boundaries that analysts should understand before an investigation goes further than a screenshot.

Interacting with a live phishing kit, even to gather evidence, can raise questions under computer-fraud statutes if an analyst submits data, real or fabricated, into a form designed to harvest it. Best practice is passive observation: capture HTML source and network requests without submitting credentials, real or dummy, into any field the kit controls, since some kits log every submission attempt regardless of whether the data is genuine.

Domain takedown requests and abuse reports to registrars typically require the reporting organization to demonstrate a legitimate interest, usually straightforward when the kit impersonates your own brand, less so when it impersonates a third party like USPS and you’re reporting purely as a defender protecting employees. Registrars and hosting providers vary widely in response time and evidentiary standards, and there’s no universal timeline you can rely on.

Sharing indicators, domains, IPs, kit fingerprints, with other organizations or industry groups generally falls under information-sharing frameworks that most enterprises already have policies for, but sharing raw victim data, even internally, triggers separate privacy obligations depending on jurisdiction and the nature of the exposed data (financial versus general PII carry different regulatory weight in many frameworks).

Retention of evidence matters too. If a case escalates to law enforcement or civil action, having preserved artifacts with clear timestamps and chain-of-custody notes protects the organization’s position far better than a verbal summary written weeks after the domain went dark.

Case Studies: Notable Smishing Campaigns and Their Technical Signatures

The USPS-impersonation kit documented through Censys passive DNS data is one of the clearest technical breakdowns available. A single seed IP address resolved to 682 unique hostnames over the kit’s operational lifetime, all serving genuine USPS visual assets pulled from the real postal service site to maximize credibility. The kit’s most notable technical feature wasn’t the phishing form itself but a live WebSocket connection that streamed victim input, name, address, payment card details, to the operator as it was typed, rather than waiting for a form submission event that could be more easily logged and blocked.

The Smishing Triad operation, documented through analysis of its Javalin-based backend, represents a more industrialized PhaaS model. It used wildcard subdomain DNS configuration and automated Let’s Encrypt certificate provisioning to spin up new, TLS-encrypted phishing infrastructure in minutes rather than hours, and included a server-side backdoor that exfiltrated stolen credentials directly to a Telegram bot under the operator’s control, bypassing the need to log into any centralized dashboard.

The global toll and delivery-lure campaign tracked by Unit 42 illustrates scale rather than sophistication. Its footprint ran into the hundreds of thousands of FQDNs, most living only days, with toll-payment and package-delivery themes dominating the lure categories. The technical lesson from that case isn’t a clever exfiltration mechanism; it’s that raw domain-generation velocity alone can overwhelm defenses that rely on manual blocklist maintenance.

Why Collaboration Between Security Teams Matters

No single organization sees enough of a large-scale smishing operation to map it alone. A campaign spanning hundreds of thousands of domains touches thousands of organizations, each of which typically sees only the handful of messages sent to its own employees.

Information sharing closes that gap in a few practical ways. Industry-specific threat-sharing groups let organizations in the same sector pool confirmed indicators, useful because attackers frequently target multiple companies in the same vertical with near-identical lure templates. Carrier and platform abuse-reporting channels, when used consistently rather than sporadically, feed data back into the broader takedown ecosystem that individual registrar complaints can’t achieve alone. Public research groups and vendor threat-intel teams publishing detailed writeups, the kind referenced throughout this analysis, extend that visibility further, turning one organization’s investigation into a resource the entire field can pivot from.

Internally, collaboration matters just as much across security, IT, legal, and HR, since a payroll-fraud smishing case that only reaches the SOC misses the HR outreach window that actually protects the affected employee’s paycheck. The technical playbook only pays off when the organizational one supports it.

Where this breaks down most often is timing. A confirmed indicator sitting in one analyst’s notebook for a week before it’s shared is a week the same infrastructure keeps operating against everyone else. Building sharing into the standard incident response workflow, not treating it as an optional final step, is what makes collaborative defense actually functional rather than aspirational.

The Real Gap in Smishing Defense Isn’t Detection Accuracy

Most conventional advice on smishing treats it as a classification problem: build a better model, catch more bad messages, done. The research doesn’t support that framing. A classifier’s clean-text accuracy tells you almost nothing about how it performs against character obfuscation, and transformer models, while more resilient, still degrade under structural manipulation.

What actually matters is correlation across time and across reports. A single message is a weak signal. A graph connecting that message to 600 sibling domains, a shared cookie name, and a registrar pattern seen in three other confirmed cases is a strong one. Organizations that invest heavily in message-level filtering while treating each report as isolated are solving the easier, less important problem.

Prioritize building the pivot muscle first: fast enrichment, passive DNS lookups, and a habit of connecting new reports to prior ones before worrying about model architecture. The infrastructure moves slower than the message text, and that’s where the durable signal lives.

Get Ahead of Smishing Campaigns Before They Reach Your Employees

Everything covered here, passive DNS pivots, graph-based correlation, kit fingerprint libraries, works best when it’s fed by actual employee reports arriving fast and landing somewhere they get enriched automatically instead of sitting in a shared inbox until someone has time to look.

Smishalert

That’s the specific gap Smishalert closes for security teams. It captures reports across SMS, iMessage, and other messaging channels, correlates them against known campaign infrastructure the way the graph-hunting techniques described above work in principle, and routes confirmed campaign clusters into the SIEM and ticketing workflows your SOC already runs. For organizations dealing with executive impersonation or payroll-fraud lures specifically, the solutions overview breaks down how each attack category gets surfaced before it results in compromise, and the credential-harvesting detection page covers how kits like the ones profiled in this analysis get caught at the device rather than after the click. If you want a quick read on where your organization’s current mobile threat visibility stands, the two-minute readiness check is a fast way to find out before the next campaign lands in an employee’s inbox.

Sources

← Back to Blog