Skip to content

v1.7.2

Choose a tag to compare

@github-actions github-actions released this 20 May 13:34
· 97 commits to main since this release

v1.7.2 β€” Caller ID posture audit + posture report-card layout

Fifth tool in the Tier 1 compliance audit family. Extends the toll-fraud chain with Caller ID posture across trunks, outbound routes, and extensions.

New tool: fm_audit_caller_id_posture

Detects:

  • Trunk has no outbound Caller ID β€” calls leave the system without a CID.
  • Route has no CID AND every trunk in its priority list is also blank β€” sibling signal to the per-trunk findings (one bad trunk feeding many routes wants the route-level callout too).
  • Route force-overrides extension CID (outcid_mode=on) β€” info-level, surfaces precedence so admins know extension-level Caller IDs are ignored on that route.
  • Extension CID override doesn't match any owned DID β€” potential spoof / STIR-SHAKEN attestation drop. NANP-normalized comparison (+1 555 123 4567 and 5551234567 round-trip equal); _. any-DID catchall and s no-CID-supplied markers excluded from the owned-DID set.
  • Placeholder / test strings at any tier β€” default, freepbx, asterisk, sangoma, anonymous, 5555555555, 1111111111, etc.
  • Malformed numbers β€” not 7–15 digits after normalization.

Read-only, PERM_ADMIN, BMO-only: Core->listTrunks + getTrunkDetails, Core->getAllRoutes + getRouteTrunksByID, Core->getAllDevicesByType + getUser, Core->getAllDIDs. No direct writes, no commercial-module dependencies.

Findings for extensions include a clickable Edit in GUI link that hands the fix back to FreePBX's native extensions page (config.php?display=extensions&extdisplay=<id>). Frogman doesn't try to fix CID itself β€” trunk and route CID changes touch precedence rules and STIR-SHAKEN signing config that are best left to the GUI.

Chat phrases: audit caller id, audit cid, audit caller id posture.

fm_audit_posture report-card redesign

Chat output redesigned to a report-card layout: Score: X of N clean, grouped Action needed / Clean / Errored sections, per-audit display names ("Caller ID Posture") instead of raw tool slugs. The rollup automatically picks up the new audit.

Tool count

226 tools (+1).