1. What SignalsGuard does
SignalsGuard analyses the signalling traffic your network exchanges with other networks — SS7/MAP (2G/3G), Diameter (4G/LTE and IMS), GTP-C (mobile data sessions) and SIP (VoIP/IMS) — and shows where hostile signalling comes from, what it is trying to do, and whether your firewall stopped it.
Data in
Exports from your signalling firewall, STP/DEA or probes — uploaded in the portal, dropped on our SFTP server, or pushed to the REST API. One row per signalling event: when, protocol, operation, sending network, and what your firewall did.
Intelligence out
Every event is classified by the platform into a threat category (A.1–C.1) and, for SS7, its GSMA FS.11 filtering category. Statistical baselines flag new origins, volume spikes and high-risk techniques; AI writes plain-English explanations and countermeasures from those figures.
2. Signing in & navigation
Signing in
Go to signalsguard.com/login.html and sign in with the email and temporary password from your welcome email, then change the password under My account. Passwords need 12+ characters with upper- and lower-case letters, a number and a symbol. After 20 failed attempts in 15 minutes sign-in pauses for 15 minutes.
Your session lasts up to 8 hours and belongs to the browser tab: closing the tab signs you out, and a new tab needs a new sign-in. Changing your password (or resetting it with Forgot password?) signs out every other session on your account; the tab where you changed it stays signed in.
Two-factor authentication (2FA)
2FA adds a 6-digit code from an authenticator app (Microsoft Authenticator, Google Authenticator, 1Password, Authy or similar) to your password. It is optional for analysts unless your organisation requires it, and mandatory for SignalsGuard administrators.
- Turn it on: My account → Two-factor authentication → Set up. Scan the QR code (or type the key shown under it), enter the code the app displays and press Turn on. If your organisation requires 2FA you are taken through the same steps straight after entering your password.
- Recovery codes: you then see 10 one-time recovery codes. Save them in your password manager or download the .txt — they are shown only once. Each code signs you in once if you lose your phone; type it in the code box instead of an app code.
- Signing in: after your password, enter the current code from the app. A code can only be used once; if it is rejected, wait for the next one. After 5 wrong codes in 15 minutes, 2FA sign-in for your account pauses for 15 minutes.
- New recovery codes / turning it off: under My account, enter your password and a current code, then Generate new recovery codes (old ones stop working) or Turn off (not available where 2FA is required).
- Lost your phone and your recovery codes? Email support@signalsguard.com from your work address. We verify your identity by phone before resetting 2FA; you then set it up again at your next sign-in.
If the app's codes are always rejected, check that your phone sets its clock automatically — codes depend on the time.
Live demo
Try the live demo on the homepage (or Explore live demo on the sign-in page) opens a read-only demo organisation with illustrative data for 2 hours. A banner marks demo sessions; nothing can be changed and AI reports are limited.
Roles
| Role | Can do |
|---|---|
| Analyst | Everything in the client portal for their own organisation: Overview, Threat Intel, Compliance, Reports, data uploads, sharing setting, API keys. |
| Viewer | Read-only access (used for the public demo). |
| Admin | SignalsGuard staff, always with 2FA. Everything above plus the Admin console (organisations, users, access requests, all events, SFTP ingestion, email). Per organisation an admin can require 2FA and set an event retention period (default 24 months); per user they can reset 2FA after verifying the person. The Tenants page also shows the daily retention job and the daily encrypted backup exports. |
Navigation
The portal has four pages, each answering one question: Overview (are we under attack, and are our defences working?), Threat Intel (who is attacking operators like us, and how?), Compliance (are we compliant, and exactly what must we fix?) and Reports (a written brief to share). Admins also see Admin. The menu on the right holds My account, Help and Sign out. On a phone the navigation folds into the menu button. Press Esc to close any menu, drawer or pop-up.
3. Overview
Are we under attack, and are our defences working? Everything on it reflects your organisation's events in the period chosen in the header.
3.1 Header
| Element | Meaning |
|---|---|
| Your network | Your organisation's name. |
| Latest event | Time (UTC) of the most recent event in the period — tells you how fresh the data is. |
| Period selector | Last 7, 30 or 90 days. Changes every panel, the defence score and the map. |
| Event count badge | Number of events loaded; "No data in range" or "API unavailable" if not. |
3.2 Tiles
| Tile | How it is calculated | What to do with it |
|---|---|---|
| Defence score | Control effectiveness, 0–100: how well your interconnect controls handled the traffic that reached them, per GSMA FS.11 category, FS.19 (Diameter) and FS.20 (GTP-C) control, weighted (see 5.4). Blocked attacks count for you — seeing more hostile traffic never lowers the score. The sub-line shows the evidence confidence when not every event could be evaluated. 80+ Good · 60–79 Fair · 40–59 At risk · <40 Critical. Click the tile for each control's score, weight, explanation and what to change. | Work on the controls with the most points lost (Compliance → What to fix). Upload your own ranges and IR.21 partners so Category 2/3, Diameter and GTP-C traffic can be validated. |
| Events | Events in the period (or for the selected origin country); the sub-line counts critical events. | Sudden rises usually mean scanning or a campaign — check the map and Threat Intel. |
| Blocked | Share of events your firewall blocked; the sub-line counts how many still need review (alerted). | Informational: legitimate roaming traffic should not be blocked. What matters is that messages failing a control check are blocked — the defence score measures exactly that. |
| Needs attention | Unblocked critical events + detected attack chains + failing controls (controls that let through traffic they should have stopped). | Click to jump to the Needs attention list. |
3.3 Needs attention
The first thing to act on, most serious first:
- Attack chain — attack chains SignalsGuard detected automatically (see below), with the sending element, the operation sequence, date range and confidence. Click to step through its events in the drawer.
- Critical · not blocked — critical events (techniques with no legitimate cross-network use, e.g. ATI, PSL, SLg PLR) that your firewall did not block, newest first (up to five; the rest are in All events). Click one to open it.
- Failing control — up to three controls with the most points lost; Fix on Compliance opens the prioritised fix list.
- Tagged campaign — events that share a campaign ID supplied by your firewall or feed (listed last; not counted in the tile).
Detected attack chains
Every time data arrives (portal upload, CSV, API or SFTP) SignalsGuard groups your events by the sending element — the SCCP calling GT, the Diameter Origin-Host or the source IP, in that order — and looks for the sequences below within a sliding 24-hour window. When none of those identifiers is supplied, events are grouped by source operator and country instead, and the chain's confidence is reduced, because one operator runs many nodes. Operation names are matched after normalisation, so any spelling your firewall uses is recognised.
| Chain | Detected when (same source, within 24h) | What it means | Category | Severity |
|---|---|---|---|---|
| Location tracking tracking | MAP-SRI or MAP-SRI-SM, then MAP-PSI or MAP-ATI | Routing interrogation (SRI/SRI-SM returns IMSI and serving MSC/VLR) followed by a location query (PSI to the serving VLR, or ATI to the HLR) from the same source. | A.1 Active Interception | critical |
| SMS interception sms_interception | MAP-SRI-SM, then MAP-UL | SRI-SM revealed the IMSI and serving MSC, then the same source sent UpdateLocation to the HLR to register its own MSC/VLR. The HLR then cancels the genuine VLR itself, and MT SMS and calls are routed to the attacker. | A.5 Registration Manipulation | critical |
| SMS routing reconnaissance sms_recon_sweep | 5+ MAP-SRI-SM with no MAP-MT-FSM within 10 minutes of each | Repeated SRI-SM from one source with no MT-ForwardSM following: routing data (IMSI, serving MSC) is being harvested and no SMS is delivered. This is the reconnaissance stage of SMS interception and tracking. | B.2 Intelligence Gathering | high |
| Call diversion call_diversion | MAP-SRI or MAP-SRI-SM, then MAP-ISD or MAP-RegisterSS | Routing interrogation followed by a profile write (InsertSubscriberData to the serving VLR, or RegisterSS) from the same source — the pattern used to insert call forwarding or a CAMEL trigger that diverts calls to an interception point. | A.3 Profile Manipulation | critical |
| Authentication vector harvesting vector_harvesting | MAP-SAI / S6a-AIR for 3+ home networks (IMSI MCC+MNC); 10+ requests when no IMSI prefix is supplied | Authentication vectors (SAI / S6a AIR) requested by one source for subscribers of many home networks. Vectors allow network impersonation and decryption of captured radio traffic; the subscriber key Ki is never exposed. | A.2 Auth Material Extraction | critical |
| Diameter registration hijack diameter_hijack | S6a-ULR and S6a-IDR from the same Origin-Host | The same Diameter peer sent Update-Location (acting as a serving MME towards the HSS) and Insert-Subscriber-Data (acting as the home HSS towards the MME). A genuine node plays only one of those roles. | A.5 Registration Manipulation | critical |
| GTP session hijack gtp_session_hijack | GTP-CreateSession from peer A, then GTP-ModifyBearer for the same TEID or subscriber from peer B | A GTP-C session was created by one peer and its bearer was then modified by a different peer — the user-plane endpoint is being redirected away from the node that set the session up. | A.4 Data & Bearer Manipulation | critical |
| SIP registration hijack sip_registration_hijack | SIP-REGISTER for the same user (msisdn_hash) from a second source | A user registered from a second source while an earlier registration from a different source was still current. Unauthorised re-registration binds the user's incoming calls to the attacker's contact. (Multi-device registration is legitimate; review the sources.) | A.5 Registration Manipulation | high |
Chains are built only from messages an attacker sends. Messages your own network generates in response — for example the CancelLocation your HLR sends to the genuine VLR after a rogue UpdateLocation — are not required. Normal traffic is not flagged: an SRI-SM followed by its MT-ForwardSM is ordinary SMS delivery, and authentication-vector requests for a single home network look like a serving VLR. Your own campaign IDs are never overwritten; an event that already carries one keeps it and is still listed in any chain it belongs to.
3.4 Events over time, map and all events
- Events over time — one stacked bar per day across the whole period (empty days shown as zero), split by severity. Hover for daily counts; use the legend to hide a severity.
- Threat origin map — a world map shaded by the number of events from networks registered in each country (darker → amber → red as volume rises; the legend shows the busiest origin). Hover for the count. Click a country to filter the whole page to events from that origin; click ✕ Clear filter or the country again to remove it. The All / SS7 / Diameter / GTP-C / SIP tabs recolour the map for one protocol.
- All events — open it for the full list, most recent first (up to 300; narrow the period or filter the map for more).
| Part of an event row | Meaning |
|---|---|
| Date / time (UTC) | When the event was observed. |
| Operation + category | The signalling operation (e.g. MAP-ATI) and its threat category (e.g. A.1). See the reference sections. |
| Protocol · country · network | Protocol, origin country and the sending network. ◆ detected chain marks events SignalsGuard placed in a detected attack chain; ◆ campaign marks events carrying your own campaign ID. |
| Severity badge | crit high med low (see section 15). The coloured left border repeats it. |
| Disposition | BLK blocked by your firewall · MON allowed and logged · ALRT not blocked, needs review. |
3.5 Event detail drawer
Click any event to open it. The drawer contains:
- Header — protocol, operation with its opcode / command code, the threat category and, for SS7, the FS.11 filtering category.
- What this attack does — the mechanics of the operation, the category meaning and what its FS.11 category implies for filtering.
- Sending network — country, network and any calling/called GT, Diameter Origin-Host or source IP supplied in your data.
- Event summary — the description from your firewall or analyst, timestamp and event ID.
- Confidence — detection confidence supplied with the event (n/a if none).
- Firewall disposition — blocked / monitored / alert, with what it means.
- Recommended action — operation-specific countermeasure, or the category's recommended controls.
- Control checks on this message — each check the platform ran (for example FS.11 Category 1, SMS sender consistency, SIM toolkit), its result, the reason in plain English and whether your firewall handled it correctly or missed it.
- Campaign and Related events — other events with the same technique or campaign; click one to jump to it.
4. Threat Intel
Who is attacking operators like us, and how? Figures combine your own events with the shared intelligence pool (the SignalsGuard vendor feed plus operators who have opted in to sharing). Other operators' private data never appears here.
4.1 Summary figures
Source networks scored (networks with 3+ events) · Origin countries · Events analysed · Critical events · STIX indicators available for export. Choose the period at the top (7 days to 12 months).
4.2 Global origins and pool activity
- Where hostile signalling comes from — pool events by origin country. The All / SS7 / Diameter / GTP-C / SIP tabs show one protocol; click a country to filter the tables below.
- Daily events in the shared pool — one point per day with the normal daily ceiling (mean + 2σ, dashed); red points are days above it.
4.3 Events by origin country and by protocol
Origin country columns: Country, Protocols seen from it, Events, Critical, and a Share bar (red when critical events are present). Click a country to filter the reputation table to its networks.
Protocol and severity is a matrix of protocol × severity counts with each protocol's share of events (the protocol mix). Click a protocol row to filter the reputation table and the map to that protocol.
4.4 Source network reputation
| Column | Meaning |
|---|---|
| Network / Country | Owner of the sending addresses and its country. |
| Protocols / Operations seen | What the network used against the pool (first four operations shown). |
| Events · Critical | Total and critical event counts in the period. |
| Blocked | Share of its events that firewalls blocked (green ≥90%, amber ≥50%, red below). |
| Operators hit | How many distinct organisations in the pool received its traffic — a wide spread suggests scanning or a campaign. |
| Reputation | 100 − 4 per critical event (max 50) − 2 per high event (max 25) − 5 per operator hit (max 20). Higher is more trustworthy. Risk: critical 0–19, high 20–39, medium 40–69, low 70+. |
| Last seen | Most recent event from the network. |
Click a column header to sort; type in Filter network or country or choose a protocol; Clear filters resets. Click a row for the network's detail: totals, every operation it used with its meaning, category and FS.11 class, and the recommended controls. Export CSV downloads the filtered table — useful for firewall allow/deny-list reviews.
4.5 Network lookup
Search an operator name or ISO country code across your events and the shared intelligence pool: event, critical, high and blocked counts, protocols, operations, first/last seen. Press Enter or Look up.
4.6 STIX 2.1 export
Indicators for source Global Titles (x-ss7-global-title), Diameter Origin-Hosts (x-diameter-origin-host) and IP addresses seen at least twice. Copy bundle or Download .json to load into a threat-intelligence platform, or pull it programmatically with an API key: GET /api/intelligence/stix-bundle. If the panel says there are no indicators, your exports do not yet include source_gt, origin_host or src_ip columns.
5. Compliance
Are we compliant, and exactly what must we fix? The page maps your events to the frameworks that apply to your organisation's registered country: GSMA FS.11 / FS.07 / FS.20 and GT-leasing guidance everywhere; UK Telecoms Security Regulations for GB (and Crown Dependencies, to be confirmed with your regulator); EU NIS2 for EU countries; FCC/CSRIC for the US. Admins open it for any organisation from Admin → Tenants → Registry & controls. The period selector at the top drives every section; Print / save as PDF produces a shareable copy.
5.1 Status
- Summary — overall risk (driven by critical events that were not blocked and by the defence score) with a short narrative.
- Defence score — the control-effectiveness score with each scored control's bar (see 5.4).
- Framework status — one row per applicable framework with its status; open it for its requirements. Every requirement that is not compliant lists the controls behind it and why.
5.2 What to fix — in priority order
Every failing or unreviewed control, with why it fails in plain English (e.g. “3 messages were let through: 3 × MAP-ATI — FS.11 Category 1 requires these to be blocked”), the events concerned (the link opens the Overview filtered to exactly those events), the specific fix, and which framework requirements it affects. Failing controls come first, then those needing review.
UK Telecommunications Security Code of Practice mapping (GB and Crown Dependencies) is shown as pending regulatory review until each control's mapping to a Code of Practice measure has been confirmed by a regulatory specialist. SignalsGuard does not cite measure numbers it has not verified.
5.3 Control register
Declare each control as implemented, partial, planned or not implemented, with an evidence note (rule-set version, pen-test date…). SignalsGuard combines the declaration with the evidence:
| Assessment | Meaning | Compliance |
|---|---|---|
| Supported | Declared implemented; observed traffic agrees (control score ≥ 90). | Compliant |
| Observed | Not declared, but traffic shows the control working — confirm the declaration. | Compliant |
| Declared only | Declared implemented; no traffic evidence in the period (or not observable from logs, e.g. transport security). | Review required |
| Partial / Not assessed | Declared partial, or neither declared nor evidenced. | Review required |
| Contradicted | Declared implemented, but traffic shows gaps. | Non-compliant |
| Gap / Gap observed | Declared planned or not implemented, or not declared and traffic shows gaps. | Non-compliant |
5.4 Network configuration, control checks and the defence score
Network registry
SignalsGuard validates each message the way a signalling firewall does: is this sender entitled to send this message about this subscriber? It needs two lists, uploaded as CSV under Network configuration (no subscriber data):
- Own ranges —
kind, value, descriptionwith kindgt(your GT prefixes),imsi(your IMSI MCC+MNC),realm(your Diameter realms),ip(your GTP-C CIDRs) andsms_router(your SMS home router GTs). - Roaming partners from IR.21 —
partner_name, tadig, mcc_mnc, gt_prefix, diameter_realm, gtp_ip_range, roaming_agreement; one row per range, or several values in a cell separated by;.roaming_agreementdefaults to yes; set it to no for hubs or partners you do not roam with. A partner'smcc_mncalso matches 3GPP-format Diameter realms (epc.mncXXX.mccYYY.3gppnetwork.org).
An upload replaces the list (or appends to it); the last year of your events is then re-evaluated. Templates are on the page.
Control checks per message
Each event receives control findings: pass (legitimate for its sender), violation (should have been blocked), suspicious (should at least be alerted) or unverifiable (data missing — the reason is given). Your firewall's disposition then shows whether the control worked: a violation that was blocked is a correct outcome; a violation that was monitored or only alerted is missed; a legitimate message that was blocked is over-blocked. A control with missed checks is a failing control in Overview → Needs attention and in What to fix.
| Check | Rule |
|---|---|
| FS.11 Category 1 | ATI, SendIMSI, SRI from another network are always violations. |
| FS.11 Category 2 | PSI, ISD, DSD, CancelLocation, PRN: valid only when the subscriber is an inbound roamer (is_home_subscriber = false) and the calling GT belongs to the roamer's home network (matched through imsi_prefix to the partner's MCC+MNC). About one of your own subscribers from outside = violation. |
| FS.11 Category 3 | UpdateLocation, SAI, PurgeMS and other visited-to-home operations: valid only for your own subscribers (is_home_subscriber = true) from a roaming partner. In an UpdateLocation hijack the attacker sends UL to your HLR, and your HLR itself then sends CancelLocation to the genuine VLR — so the UL is the message to stop. |
| Location velocity | A location update or authentication request from another country within an hour of the last registration is suspicious (border roaming excepted); a purge from a network other than the registered one is suspicious. Needs msisdn_hash. |
| SMS home routing | An SRI-SM answer that names a real serving MSC (instead of your SMS router) means the IMSI and location were exposed. Send the answer's network_node_number (or a firewall flag sms_hr). Deployment is inferred from the share of SRI-SM answers given by the router; without response data your declaration is used (capped at 70). |
| SCCP screening | A calling GT inside your own ranges arriving over the interconnect is suspicious (GT spoofing — or internal traffic in the export). |
| LCS | PSL / SLg / SLh for your own subscribers from outside are violations; from a partner they need an LCS agreement. |
| Diameter edge (FS.19) | Origin-Realm (or the realm of Origin-Host) must belong to a roaming partner; your own realm from outside is suspicious. |
| S6a (FS.19) | ULR / AIR / PUR / NOR only for your own subscribers from partner MMEs; CLR / IDR / DSR only from the inbound roamer's home HSS. Cx and Sh are IMS-internal and never valid across the interconnect. |
| GTP-C (FS.20) | The peer IP must be in a partner's IR.21 GTP range. Create Session / Modify Bearer / Delete Session come from the visited SGW for your subscriber; Create / Delete Bearer from the inbound roamer's home PGW; a session may move between SGWs of the same partner but never to another operator. |
| SMS sender consistency | An MT-ForwardSM must come from the network that sent the SRI-SM for the same subscriber (within 15 minutes), and its SCCP calling GT must match the MAP service-centre address (sc_address). An SRI-SM routed on the subscriber number through a third-party node (called_party_is_subscriber) is also flagged. These are the patterns of SMS relayed through a middleman SMSC and of spoofed SMS delivery. Needs msisdn_hash and, ideally, sc_address. |
| SIM toolkit (OTA) | Binary SMS addressed to an application on the SIM (flag sim_toolkit from your SMS or signalling firewall) is a violation unless it comes from your own network. These messages are how SIM-browser attacks read a phone's location and device data. Such an event is always rated critical. |
| Encoding variants | An operation sent with a global operation code (opcode_form = global) or inside a multi-component TCAP message (multiple_components) is flagged: firewalls that only match the standard encoding miss it. For FS.11 Category 1 operations it is a violation. |
Authentication vectors (SAI / AIR) never contain the subscriber key Ki; their value to an attacker is impersonating the network and decrypting captured radio traffic.
Defence score
| Control | Framework | What it requires | Weight |
|---|---|---|---|
| Block FS.11 Category 1 operations at the interconnect FS11-CAT1 | GSMA FS.11 | MAP operations with no legitimate use between networks (AnyTimeInterrogation, SendIMSI, SendRoutingInfo) are blocked at the STP / signalling firewall. | 20% |
| Category 2: accept only from the inbound roamer's home network FS11-CAT2 | GSMA FS.11 | PSI, ISD, DSD, CancelLocation and PRN are accepted only when the subscriber is an inbound roamer and the calling GT belongs to that roamer's home network. | 14% |
| Category 3: accept only from the network where the subscriber roams FS11-CAT3 | GSMA FS.11 | UpdateLocation, SendAuthenticationInfo, PurgeMS and other visited-to-home operations are accepted only for your own subscribers and only from roaming partners. | 14% |
| Location-update velocity and registration plausibility LOC-VEL | GSMA FS.11 / FS.19 | UpdateLocation / ULR and authentication requests are checked against the subscriber's previous registration (implausible travel time, purge from a non-registered node). | 4% |
| SMS home routing FS11-SMSHR | GSMA FS.11 | SRI-SM is answered by an SMS home router so that the real IMSI and serving MSC are never returned to another network. | 8% |
| SCCP calling-party screening FS11-SCCP | GSMA FS.11 | Messages arriving over the interconnect with a calling GT inside your own ranges (GT spoofing) are blocked or alerted. | 3% |
| Location services only from contracted GMLCs LCS-GMLC | GSMA FS.11 / FS.19 | MAP PSL and Diameter SLg / SLh positioning requests are accepted only from GMLCs covered by an LCS agreement. | 3% |
| Interconnect signalling monitoring and logging FS11-MON | GSMA FS.11 | Interconnect signalling is logged and reviewed; firewall decisions are exported for analysis. | register only (data feed) |
| Diameter edge filtering (Origin-Realm / Origin-Host validation) FS19-EDGE | GSMA FS.19 | The Diameter Edge Agent accepts requests only from roaming-partner realms and rejects own-realm spoofing. | 10% |
| S6a application-level validation FS19-S6A | GSMA FS.19 | ULR / AIR / PUR / NOR only for your own subscribers from partner MMEs; CLR / IDR / DSR only from the inbound roamer's home HSS. | 8% |
| Block IMS-internal Diameter interfaces at the edge FS19-IMS | GSMA FS.19 | Cx and Sh requests are never accepted from the interconnect. | 3% |
| Diameter transport protection FS19-TLS | GSMA FS.19 | Diameter interconnect runs over protected transport (IPX with IPsec/TLS where agreed) with peer authentication. | register only (declared) |
| GTP-C peer filtering FS20-PEER | GSMA FS.20 | The GTP firewall accepts GTP-C only from roaming-partner address ranges (IR.21) and rejects own-range spoofing. | 8% |
| GTP-C message plausibility and session ownership FS20-PLAUS | GSMA FS.20 | Session requests only for your subscribers from the visited SGW, bearer requests only from the inbound roamer's home PGW, and sessions stay with the operator that created them. | 5% |
| SMS sender consistency (spoofing and relay screening) SMS-SPOOF | GSMA FS.11 / IR.70 | Inbound SMS is accepted only when the SCCP calling address, the MAP service-centre address and the network that queried the subscriber's routing (SRI-SM) agree; relayed or spoofed delivery is blocked or alerted. | 6% |
| Block SIM toolkit (OTA) messages from other networks SIM-OTA | GSMA FS.11 / SMS firewall | Binary SMS addressed to applications on the SIM is accepted only from your own OTA platform; such messages from any other network are blocked. | 6% |
| Filtering survives encoding variants TCAP-ENC | GSMA FS.11 | The signalling firewall decodes alternative encodings of an operation (for example a global operation code instead of the usual local one) and filters them exactly like the standard form. | 4% |
| GTP-C rate limiting and flood protection FS20-RATE | GSMA FS.20 | Per-peer rate limits protect PGW/SGW against Delete Session floods and resource exhaustion. | register only (declared) |
Blocking controls score the share of hostile messages handled correctly. Validation controls (Category 2, Category 3, S6a, GTP-C plausibility) score 60% hostile handled + 25% share of traffic that could be validated against your registry + 15% legitimate traffic not over-blocked. Controls with no traffic, or that cannot be evaluated, are left out and their weight is shared among the rest; the Overview shows the evidence coverage.
Technical detail
Open Technical detail for the attack distribution, the daily severity trend and findings by attack category: totals, block rate, trend, operations observed and recommended action.
6. Reports
Give me a written brief. Detection and scoring are deterministic statistics; the AI only writes the explanation and recommendations from the figures it is given. Always verify AI text before acting on it.
6.1 AI threat brief
Choose a preset — My network (your own events) or Global landscape (the shared pool: vendor feed, consenting operators and your own data) — and a period, then Generate report. Sections: executive summary, attack-chain analysis, sending-network assessment, regulatory exposure and technical recommendations. A brief for the same scope is reused for an hour (the header line says "cached" and when it was generated). Download PDF saves it.
6.2 Detections
Novel threat detection lists recent events (last 7 days) with label/opcode mismatches, TEID 0 on non-initial GTPv2 messages, first-time origins, SIP REFER from outside, sweeps of the same critical technique, or critical Diameter from sanctioned jurisdictions. When there are none, the page says so.
6a. My account, data sources & API keys
- Account details — email, organisation, role, status, member since.
- Organisation & usage — plan, registered country (drives the compliance frameworks), sharing status, events this month and in the last 30 days, latest event and last time data was received.
- Change password and Two-factor authentication — see section 2.
- Data sources & sharing — upload a firewall export (CSV or JSON, up to 25 MB; Enterprise plan) to analyse threats against your own network; the status line shows when the logs are processed and how many anomalies were found. The threat-sharing consent toggle is saved for your whole organisation: Private (default) keeps your events private and only anonymised, unattributed signal (source + technique) strengthens the shared view; Sharing lets your organisation's events join the shared pool that other clients' Threat Intel pages draw on, without identifying who was targeted.
- API access — create named keys (90 days, 1 year or no expiry). The key is shown once: copy it into your exporter. The table shows when each key was last used; Revoke stops it immediately.
- Team — everyone in your organisation, their role, 2FA status and last sign-in. Your organisation's administrator (the first user) can add colleagues, who are emailed their sign-in details, and remove them, which signs them out at once. Seats follow your plan.
- Your data & uploads — events stored, oldest and newest event, last data received, approximate storage, how long data is kept, a per-source breakdown, events per month, and every load (portal, API or SFTP) with rows loaded and rejected. Download my events exports up to 24 months as CSV (network identifiers only).
- Support & data requests — send a support question, a plan or billing question, or ask for a full export or deletion of your organisation's data. You get a reference (SG-xxxxxx) and a reply by email.
- Recent sign-in activity — your last 30 sign-ins and security changes with the IP address. Tell support about anything you don't recognise.
7. Sending data
7.1 Fields
| Field | Required | Notes |
|---|---|---|
event_time | yes | ISO 8601 UTC (aliases: timestamp, time). |
protocol | yes | SS7, Diameter, GTP-C or SIP. |
operation | yes | Any common spelling: ATI, MAP-ATI, AnyTimeInterrogation are all recognised (see reference). |
status | no | What your firewall did: blocked / alerted / monitored (also block, drop, alert, pass, allowed…). |
source_country, source_operator | no | ISO country and the sending network. |
source_gt, called_gt, origin_host, dest_realm, src_ip | no | Network-side identifiers. Needed for STIX indicators and richer detail, and the key attack-chain detection groups events by (see 3.5). |
imsi_prefix, teid, msisdn_hash | no | Correlation keys. imsi_prefix is reduced to MCC+MNC (the subscriber's home network) for vector-harvesting detection; teid links GTP-C messages of one session; msisdn_hash (a SHA-256 hash, never the number) links SIP registrations of one user. |
is_home_subscriber | recommended | true / false: is the subscriber the message is about one of yours (true) or an inbound roamer (false)? Your firewall knows this from the IMSI range; SignalsGuard never needs the IMSI itself. If omitted it is inferred from imsi_prefix and your own IMSI ranges. Drives the FS.11 Category 2/3, S6a and GTP-C checks. |
called_party_home | no | true / false: is the SCCP called party in your network? false marks transit traffic, to which FS.11 category checks do not apply. Inferred from called_gt and your own GT ranges if omitted. |
origin_realm | no | Diameter Origin-Realm (otherwise derived from origin_host). |
network_node_number, sms_hr | no | For SRI-SM: the node number returned in the answer (SMS router or real MSC), or a firewall flag saying whether SMS home routing answered. Node GTs only. |
sc_address, called_party_is_subscriber, sim_toolkit, opcode_form, multiple_components | no | Firewall verdicts for the SMS and encoding checks (5.4): the MAP service-centre address (a node address), whether the SRI-SM was routed on the subscriber number, whether an SMS was addressed to the SIM toolkit, and whether the operation used a global opcode or a multi-component message. Flags take true / false; opcode_form takes local / global. |
confidence, campaign_id, summary | no | Detection confidence 0–100, your correlation ID, free-text description. |
Category and severity are always assigned by SignalsGuard from the operation, so the same technique is rated the same way whatever the source. Files containing msisdn, imsi, imei or cell_id columns are rejected by the portal upload — remove them first.
7.2 Ways to send
- Portal upload — My account → Data sources & sharing.
- REST API —
POST /api/ingest/metadatawith headerX-API-Key, up to 1,000 events per request:
curl -X POST https://signalsguard-api-production.up.railway.app/api/ingest/metadata \
-H "X-API-Key: sgk_YOUR_KEY" -H "Content-Type: application/json" \
-d '{"events":[{"event_time":"2026-10-14T10:23:00Z","protocol":"SS7","operation":"SRI",
"status":"blocked","source_country":"RU","source_operator":"RU mobile GT range",
"source_gt":"79160000001","summary":"SRI from non-partner GT"}]}'
- SFTP drop box — ask support for credentials. Upload CSV/JSON/JSONL, optionally zipped or gzipped; files are checked and reviewed before they reach your Overview. See integration docs.
8. Admin console (SignalsGuard staff)
Open Admin from any page (admins only). The left menu switches views.
8.1 Overview
Counts of organisations, users, events (90 days, all organisations) and pending access requests, with the latest requests (approve/reject inline) and latest events.
8.2 Tenants (organisations)
Name, type, plan (with pilot end date), status, 2FA requirement, retention and created date; search and status filter. Edit changes plan, status (a suspended organisation cannot sign in), Require 2FA and event retention. View as opens the organisation's portal read-only for one hour, with a banner, after you give a reason; every view is written to the security log. API keys lists the organisation's keys and lets you revoke one. Registry & controls opens their Compliance page.
8.3 Users
Email, name, role, organisation, plan, 2FA and last login. Suspend signs the user out at once and blocks sign-in (Reactivate undoes it); Reset link emails a one-hour password-reset link; Reset 2FA after verifying the person by phone; Edit or Delete. Creating a user also creates their organisation if it does not exist, so they can see data immediately.
8.4 Access requests & onboarding
Requests from the homepage form show name, title, organisation, type, email, date and message. Approve does everything in one step: finds or creates the organisation, creates an analyst login linked to it with a strong random temporary password, marks the request approved and emails the welcome message. The password is also shown to you once — if the email failed, send it over a separate channel. Reject closes the request; Reply emails the requester from intelligence@.
8.5 Events
All organisations' events for 90 days with protocol, severity and demo/real filters. Columns: time, protocol, operation, severity, sending network, organisation and campaign, disposition, and source (DEMO = synthetic seed data, REAL = ingested; hover for the ingest source).
8.6 Data ingestion (SFTP)
Connection details
Host and port of the public SFTP endpoint (Railway TCP proxy), the server's host-key fingerprint (providers should verify it on first connection), the VirusTotal mode and whether staging storage is persistent. The server is a write-only drop box: providers can upload but not list, read or delete.
Creating a credential
- + New SFTP Credential.
- Provider name (becomes the username), organisation, optional Load uploads into organisation, auth type (generated password or the provider's SSH public key) and expiry.
- Copy the connection block shown — the password appears once. Send it over a separate secure channel.
Example upload: sftp -P <port> <username>@<host> then put events.csv. Repeated failed logins from one IP are locked out with increasing delays.
Pending files — automated checks
| Column | Meaning |
|---|---|
| File / SHA-256 | Sanitised file name and the start of its hash. |
| Type | Allowed extension (.csv .json .jsonl .txt .zip .gz). |
| Size | Non-empty and within the size limit (500 MB). |
| Archive | For zip/gzip: declared and actual expansion within limits (2 GB, ratio <100:1), no nested archives, no zip64. Fails closed. |
| Schema | signalling_events (has protocol and operation columns), ioc_feed, stix_bundle, generic_csv… Only signalling_events files can be loaded. |
| VirusTotal | Clean (known file, no detections) · Malicious (blocked) · Not seen (VirusTotal has never seen the hash — normal for fresh exports; the file is not uploaded, to protect client data) · Checking / Error / Skipped. |
| Load into | The organisation whose Overview receives the events. |
Approve & load is enabled only when all checks have passed and finished. It parses the file, classifies every row, loads it into the chosen organisation, rebuilds that organisation's baseline, runs anomaly detection and deletes the staged file. Reject records a reason and deletes the file. Ingestion history shows each decision with rows loaded, anomalies found and any row errors.
8.7 Compose
Start a new email from any signalsguard.com mailbox. It is recorded in the Inbox, so the client's reply joins the same conversation.
8.8 Inbox
Every email to an @signalsguard.com address (admin, support, sales, intelligence and any other) and every request sent from a client's My account page, grouped into conversations. Each is linked to the client organisation automatically by the sender's address or domain (change it with the organisation selector). Open a conversation to read the full trail, view the formatted version (shown with scripts disabled) and download attachments. Send reply answers from the mailbox you choose with the earlier messages quoted underneath and a reference tag [SG-xxxxxx] in the subject, so replies thread correctly. Close files a resolved conversation; closed enquiries with no client account are deleted after 30 days, as the privacy policy says. Email still arrives in your normal mailbox as well.
8.9 Client activity and security log
Client activity lists each organisation's users (active in 7 and 30 days), 2FA uptake, last sign-in, last data received, events this month, API keys and open conversations, and flags feeds silent for 3+ days, organisations with no data yet and pilots not signing in. Security log shows sign-ins, failed attempts, 2FA and password events, admin actions and data exports for the last 12 months.
9. Threat categories
Every operation maps to one SignalsGuard category: A = attacks on subscribers, B = fraud and reconnaissance, C = attacks on the network itself.
| Code | Category | Meaning | Typical operations | Recommended controls |
|---|---|---|---|---|
| A.1 | Active Interception | Real-time subscriber location tracking or call/SMS interception against a live subscriber. | MAP-ATI, MAP-PSI, MAP-PSL, MAP-PRN, SLg-PLR | • Block MAP ATI and PSL at the interconnect (FS.11 Category 1) • Accept PSI/PRN only from the inbound roamer's home network (FS.11 Category 2) • Restrict Diameter SLg/SLh to contracted GMLC peers |
| A.2 | Auth Material Extraction | Retrieval of IMSI or authentication vectors, enabling network impersonation (fake base stations), decryption of captured radio traffic and subscriber tracking. | MAP-SAI, MAP-SendIMSI, S6a-AIR | • Accept MAP SAI / Diameter AIR only from the VLR/MME currently serving the subscriber (FS.11 Category 3) • Block MAP SendIMSI at the interconnect • Alert on bulk vector requests per source |
| A.3 | Profile Manipulation | Unauthorised change to a subscriber profile — call forwarding insertion, CAMEL/IN redirection, barring changes. | MAP-ISD, MAP-DSD, MAP-RegisterSS, S6a-IDR, S6a-DSR | • Accept ISD/DSD only from the inbound roamer's home HLR (FS.11 Category 2) • Audit call-forwarding and CAMEL changes against provisioning records • Validate Diameter IDR/DSR origin realm against the subscriber's home realm |
| A.4 | Data & Bearer Manipulation | GTP-C session or bearer hijack, user-plane redirection or fraudulent data sessions. | GTP-CreateSession, GTP-ModifyBearer, GTP-CreateBearer | • Validate GTP-C peer IP against the GRX/IPX roaming partner list (GSMA FS.20) • Reject Create Session for IMSIs not roaming with the sending partner • Alert on Modify Bearer requests that change the S-GW F-TEID across operators |
| A.5 | Registration Manipulation | False location registration or deregistration that reroutes, or denies, calls and SMS for a subscriber. | MAP-UL, MAP-UL-GPRS, MAP-CL, MAP-PurgeMS, MAP-NoteMsPresentForGprs, S6a-ULR, S6a-CLR, S6a-PUR, S6a-NOR, SIP-REGISTER | • Validate MAP UL / Diameter ULR against the subscriber's last known location (velocity check) • Accept CancelLocation/CLR only from the home HLR/HSS • Correlate SIP REGISTER changes with authentication events |
| B.1 | SMS Fraud | SMS spoofing, grey-route bypass and A2P termination fraud. | MAP-MT-FSM, MAP-MO-FSM, SIP-MESSAGE | • Deploy SMS home routing (SMS-HR) so SRI-SM never exposes IMSI or MSC • Validate MT-ForwardSM SCCP calling GT against the MAP SM-RP-OA • Monitor A2P termination volume per interconnect partner |
| B.2 | Intelligence Gathering | Reconnaissance: IMSI, serving-node and routing discovery that precedes targeted attacks. | MAP-SRI, MAP-SRI-SM, SLh-RIR, Cx-LIR, Sh-UDR, SIP-OPTIONS, SIP-SUBSCRIBE | • Deploy SMS home routing and SRI filtering • Rate-limit SRI/SRI-SM per source GT and alert on sweeps without follow-up MT-ForwardSM • Restrict Sh/Cx queries to trusted IMS application servers |
| B.3 | Service Abuse | Toll fraud, IRSF, call-transfer abuse, USSD abuse and other revenue-impacting misuse. | MAP-USSD, S9-CCR, SIP-INVITE, SIP-REFER | • Apply IRSF and premium-range number blocking • Restrict USSD and SIP REFER to authenticated sessions • Reconcile roaming charging (S9/TAP) against signalling volume |
| C.1 | Network Integrity | Denial of service, session teardown and resource exhaustion against network elements. | GTP-DeleteSession, GTP-DeleteBearer, SIP-INVITE-Flood, SIP-BYE | • Rate-limit GTP-C Delete Session / Delete Bearer per peer • Protect SBC/STP/DEA with per-peer admission control • Run periodic interconnect firewall penetration tests |
10. GSMA FS.11 filtering categories (SS7)
| FS.11 | Rule | How to filter |
|---|---|---|
| Cat 1 | Should never be received across the interconnect (e.g. ATI, SendIMSI, SRI except agreed routing). | Block outright at the STP / firewall. |
| Cat 2 | Only legitimate from the home network of an inbound roamer (e.g. PSI, ISD, DSD, CancelLocation, PRN). | Check the calling GT belongs to the network that owns the IMSI. |
| Cat 3 | Only legitimate from the visited network where your own subscriber is roaming (e.g. UpdateLocation, SAI, PurgeMS). | Check the subscriber is yours and the calling GT is a roaming partner; check against the subscriber's previous location (velocity / plausibility). |
| SMS-HR | Legitimate cross-network SMS routing (SRI-SM, MT-ForwardSM). | SMS home routing so SRI-SM never exposes the IMSI or MSC; pattern analysis for sweeps without delivery. |
Diameter is covered by GSMA FS.19 and GTP by FS.20; they do not use FS.11 categories.
11. SS7 / MAP operations
Code = MAP operation code. Aliases are other spellings the platform recognises.
| Operation | Code | What it does / why it matters | Category | FS.11 | Severity floor |
|---|---|---|---|---|---|
| MAP-ATI ATI, AnyTimeInterrogation, MAP-AnyTimeInterrogation | 71 | AnyTimeInterrogation — queries the HLR for a subscriber's cell ID and state. No legitimate use across interconnect. | A.1 Active Interception | Cat 1 | critical |
| MAP-PSI PSI, ProvideSubscriberInfo, ProvideSubscriberInformation | 70 | ProvideSubscriberInfo — asks the serving VLR/MSC for cell-level location. Only valid from the subscriber's own home HLR. | A.1 Active Interception | Cat 2 | critical |
| MAP-PSL PSL, ProvideSubscriberLocation | 83 | ProvideSubscriberLocation — LCS positioning request. Only valid from an authorised GMLC. | A.1 Active Interception | — | critical |
| MAP-PRN PRN, ProvideRoamingNumber | 4 | ProvideRoamingNumber — obtains an MSRN from the serving VLR to route a call. Only valid from the subscriber's home network; abused with SRI to route calls via an interception point. | A.1 Active Interception | Cat 2 | high |
| MAP-SAI SAI, SendAuthenticationInfo, SendAuthInfo | 56 | SendAuthenticationInfo — retrieves authentication vectors from the HLR. Only valid from the VLR currently serving the subscriber. | A.2 Auth Material Extraction | Cat 3 | high |
| MAP-SendIMSI SendIMSI, MAP-SIA, SendImsi | 58 | SendIMSI — resolves an MSISDN to its IMSI. Intra-network only. | A.2 Auth Material Extraction | Cat 1 | critical |
| MAP-ISD ISD, InsertSubscriberData | 7 | InsertSubscriberData — writes profile data (forwarding, CAMEL triggers, barring) into the VLR. Only valid from the subscriber's home HLR. | A.3 Profile Manipulation | Cat 2 | high |
| MAP-DSD DSD, DeleteSubscriberData | 8 | DeleteSubscriberData — removes services from the VLR profile. Only valid from the home HLR. | A.3 Profile Manipulation | Cat 2 | high |
| MAP-RegisterSS RegisterSS, ActivateSS, MAP-ActivateSS | 10 | RegisterSS / ActivateSS — sets supplementary services such as call forwarding. Used to divert calls to an interception number. | A.3 Profile Manipulation | Cat 3 | high |
| MAP-UL UL, UpdateLocation, MAP-UpdateLocation | 2 | UpdateLocation — registers the subscriber at a new VLR/MSC. Spoofed, it reroutes incoming calls and SMS to attacker equipment. | A.5 Registration Manipulation | Cat 3 | medium |
| MAP-UL-GPRS UpdateGprsLocation, UL-GPRS | 23 | UpdateGprsLocation — registers the subscriber at a new SGSN. | A.5 Registration Manipulation | Cat 3 | medium |
| MAP-CL CL, CancelLocation, MAP-CancelLocation | 3 | CancelLocation — deletes the subscriber from the serving VLR, detaching them from the network (subscriber denial of service). | A.5 Registration Manipulation | Cat 2 | medium |
| MAP-PurgeMS PurgeMS, Purge | 67 | PurgeMS — marks the subscriber unreachable in the HLR, causing calls and SMS to fail. | A.5 Registration Manipulation | Cat 3 | medium |
| MAP-NoteMsPresentForGprs NoteMS-Present, MAP-NoteMS-Present, NoteMsPresentForGprs | 26 | NoteMsPresentForGprs — informs the HLR that a GPRS subscriber is reachable again. | A.5 Registration Manipulation | Cat 3 | low |
| MAP-SRI SRI, SendRoutingInfo, SendRoutingInformation | 22 | SendRoutingInfo — returns IMSI and current MSC/roaming number for an MSISDN. Classic first step of tracking and interception. | B.2 Intelligence Gathering | Cat 1 | medium |
| MAP-SRI-SM SRI-SM, SRISM, SRI-for-SM | 45 | SendRoutingInfoForSM — returns IMSI and serving MSC for SMS delivery. Legitimate per message; repeated without a following MT-ForwardSM it is subscriber reconnaissance and the precursor to SMS interception. | B.2 Intelligence Gathering | SMS-HR | medium |
| MAP-MT-FSM MT-ForwardSM, MAP-MT-ForwardSM, MT-FSM | 44 | MT-ForwardSM — delivers an SMS to the serving MSC. Abused for spoofed SMS and grey-route termination. | B.1 SMS Fraud | SMS-HR | low |
| MAP-MO-FSM MO-ForwardSM, MAP-MO-ForwardSM, MO-FSM | 46 | MO-ForwardSM — submits a subscriber-originated SMS to the home SMSC. | B.1 SMS Fraud | Cat 3 | low |
| MAP-USSD USSD, ProcessUnstructuredSS-Request, MAP-PUSSR | 59 | ProcessUnstructuredSS — USSD session. Abused for balance enumeration, service changes and fraud. | B.3 Service Abuse | Cat 3 | medium |
12. Diameter operations
Code = Diameter command code.
| Operation | Code | What it does / why it matters | Category | FS.11 | Severity floor |
|---|---|---|---|---|---|
| S6a-ULR ULR, Update-Location-Request, Diameter-ULR | 316 | S6a Update-Location-Request — LTE equivalent of MAP UL. Spoofed, it registers the subscriber at an attacker-controlled MME. | A.5 Registration Manipulation | — | medium |
| S6a-CLR CLR, Cancel-Location-Request | 317 | S6a Cancel-Location-Request — detaches the subscriber from the serving MME (subscriber denial of service). | A.5 Registration Manipulation | — | medium |
| S6a-PUR PUR, Purge-UE-Request | 321 | S6a Purge-UE-Request — marks the subscriber purged in the HSS, causing terminating services to fail. | A.5 Registration Manipulation | — | medium |
| S6a-AIR AIR, Authentication-Information-Request, Diameter-AIR | 318 | S6a Authentication-Information-Request — retrieves EPS authentication vectors from the HSS. Only valid from the serving MME. | A.2 Auth Material Extraction | — | high |
| S6a-IDR IDR, Insert-Subscriber-Data-Request | 319 | S6a Insert-Subscriber-Data-Request — modifies the subscriber profile at the MME; also used to request location (IDR with location flag). | A.3 Profile Manipulation | — | high |
| S6a-DSR DSR, Delete-Subscriber-Data-Request | 320 | S6a Delete-Subscriber-Data-Request — removes services from the subscriber profile at the MME. | A.3 Profile Manipulation | — | high |
| S6a-NOR NOR, Notify-Request | 323 | S6a Notify-Request — MME informs the HSS of subscriber state changes. | A.5 Registration Manipulation | — | low |
| SLg-PLR PLR, Provide-Location-Request | 8388620 | SLg Provide-Location-Request — asks the MME to position the subscriber. Only valid from an authorised GMLC. | A.1 Active Interception | — | critical |
| SLh-RIR SLh-LIR, RIR, LCS-Routing-Info-Request | 8388622 | SLh LCS-Routing-Info-Request — returns the serving MME/SGSN for a subscriber; reconnaissance before SLg positioning. | B.2 Intelligence Gathering | — | high |
| Cx-LIR Location-Info-Request | 302 | Cx Location-Info-Request — asks the HSS which S-CSCF serves an IMS user; reveals IMS routing. | B.2 Intelligence Gathering | — | medium |
| Sh-UDR UDR, User-Data-Request | 306 | Sh User-Data-Request — reads subscriber data from the HSS. Only valid from trusted IMS application servers. | B.2 Intelligence Gathering | — | medium |
| S9-CCR S9-Credit-Control-Request | 272 | S9 Credit-Control-Request — roaming policy/charging exchange between PCRFs; manipulated for charging bypass. | B.3 Service Abuse | — | medium |
13. GTP-C operations
Code = GTPv2-C message type.
| Operation | Code | What it does / why it matters | Category | FS.11 | Severity floor |
|---|---|---|---|---|---|
| GTP-CreateSession Create-Session-Req, Create-Session-Request, Create Session | 32 | Create Session Request — opens a data session. Spoofed, it enables fraudulent data use and IMSI fishing (cause codes reveal valid IMSIs). | A.4 Data & Bearer Manipulation | — | medium |
| GTP-ModifyBearer Modify-Bearer-Req, Modify-Bearer-Request, Modify Bearer | 34 | Modify Bearer Request — changes the user-plane endpoint of an active session. Spoofed, it redirects the subscriber's data traffic. | A.4 Data & Bearer Manipulation | — | medium |
| GTP-CreateBearer Create-Bearer-Req, Create-Bearer-Request, Create Bearer | 95 | Create Bearer Request — adds a dedicated bearer to a session. Crafted TFTs can bypass policy or insert a covert data path. | A.4 Data & Bearer Manipulation | — | medium |
| GTP-DeleteSession Delete-Session-Req, Delete-Session-Request, Delete Session | 36 | Delete Session Request — tears down an active data session. Spoofed at scale it is a denial-of-service attack. | C.1 Network Integrity | — | medium |
| GTP-DeleteBearer Delete-Bearer-Req, Delete Bearer, DeleteBearer | 99 | Delete Bearer Request — removes a dedicated bearer; spoofed it disrupts service. | C.1 Network Integrity | — | medium |
14. SIP / IMS operations
| Operation | Code | What it does / why it matters | Category | FS.11 | Severity floor |
|---|---|---|---|---|---|
| SIP-REGISTER REGISTER, SIP REGISTER, REGISTER-hijack | — | SIP REGISTER — binds a user to a contact address. Unauthorised re-registration hijacks the user's incoming calls. | A.5 Registration Manipulation | — | medium |
| SIP-INVITE INVITE, SIP INVITE, INVITE-anomaly | — | SIP INVITE — call setup. Anomalous INVITEs indicate toll fraud, IRSF or spoofed caller ID. | B.3 Service Abuse | — | low |
| SIP-INVITE-Flood INVITE-flood, SIP INVITE flood | — | SIP INVITE flood — call-setup volume intended to exhaust SBC/media resources. | C.1 Network Integrity | — | medium |
| SIP-OPTIONS OPTIONS, SIP OPTIONS, OPTIONS-scan | — | SIP OPTIONS — capability probe. In volume it is scanning for exposed SIP endpoints. | B.2 Intelligence Gathering | — | low |
| SIP-REFER REFER, SIP REFER | — | SIP REFER — transfers a call to a third party. Abused to redirect calls or generate fraudulent call legs. | B.3 Service Abuse | — | medium |
| SIP-BYE BYE, SIP BYE, BYE-spoofed | — | SIP BYE — ends a call. Spoofed BYE tears down calls in progress. | C.1 Network Integrity | — | low |
| SIP-SUBSCRIBE SUBSCRIBE, SIP SUBSCRIBE | — | SIP SUBSCRIBE — presence/event subscription; abused for user enumeration and presence tracking. | B.2 Intelligence Gathering | — | low |
| SIP-MESSAGE MESSAGE, SIP MESSAGE | — | SIP MESSAGE — IMS messaging; abused for spoofed SMS-over-IP. | B.1 SMS Fraud | — | low |
15. Severity, disposition & scores
Severity (per event)
The platform's floor rating for a single event of that technique, from its baseline risk: critical no legitimate cross-network use (risk ≥0.9) · high sensitive, rarely legitimate from outside (≥0.75) · medium legitimate in context, dangerous if spoofed (≥0.55) · low mostly benign, matters in volume. Curated analyst events may be rated higher, never lower.
Firewall disposition
BLOCKED your firewall stopped it — good outcome · MONITORED allowed and logged; confirm the source is a partner or add a rule · ALERT not blocked and not reviewed; investigate.
Scores
- Defence score (posture score) — control effectiveness, sections 3.2 and 5.4.
- Reputation — section 4.4.
- Anomaly score — section 5.2.
16. Glossary
| GT (Global Title) | SS7 address of a network element (HLR, MSC, STP); the "sender" of SS7 traffic. |
| HLR / HSS | Home subscriber database (2G/3G / 4G-IMS). |
| VLR / MSC / MME / SGSN | Serving network elements that hold a subscriber's current registration. |
| STP / DEA / DRA | Signalling routers for SS7 / Diameter, where interconnect firewalling is applied. |
| Origin-Host / realm | Diameter identity of the sending node / its domain. |
| TEID | GTP tunnel identifier for a data session. |
| IMSI / MSISDN | Subscriber identity on the SIM / phone number. SignalsGuard keeps only the IMSI network prefix and a keyed MSISDN hash. |
| MCC / MNC | Mobile country / network code identifying an operator. |
| IR.21 | GSMA roaming database document listing a partner's GT ranges and nodes. |
| SMS home routing | Routing SMS through the home network so SRI-SM never reveals the real IMSI or MSC. |
| CAMEL | Intelligent-network service triggers; abused to redirect calls to an attacker's gsmSCF. |
| STIX 2.1 | Standard format for exchanging threat indicators. |
| Shared pool | The SignalsGuard vendor feed plus data from operators who opted in to sharing, plus your own data. |
| Tenant | An organisation's isolated space in SignalsGuard. |