Krytyczna

OpenClaw has an inbound allowlist policy bypass in voice-call extension (empty caller ID + suffix matching)

  • Ujawniono: 17.02.2026
  • Aktualizacja: 11.10.2026 10:22

Summary

An authentication bypass in the optional voice-call extension/plugin allowed unapproved or anonymous callers to reach the voice-call agent when inbound policy was set to allowlist or pairing.

Deployments that do not install/enable the voice-call extension are not affected.

Affected Packages / Versions

  • openclaw (npm): <= 2026.2.1
  • Fixed in: >= 2026.2.2

Details

In affected versions (for example 2026.2.1), the inbound allowlist check in extensions/voice-call/src/manager.ts used suffix-based matching and accepted empty caller IDs after normalization.

This allowed two bypasses:

  1. Missing/empty from values normalized to an empty string, which caused the allowlist predicate to evaluate as allowed.
  2. Suffix-based matching meant any caller number whose digits ended with an allowlisted number would be accepted.

Proof Of Concept

  1. Configure the voice-call extension with inboundPolicy: allowlist and allowFrom: ["+15550001234"].
  2. Place/trigger an inbound call with missing/empty caller ID (provider-dependent; for example anonymous/restricted caller). The call is accepted.
  3. Place a call from a number whose E.164 digits end with 15550001234 (for example +99915550001234). The call is accepted.

Impact

Only operators who install/enable the optional voice-call extension and use inboundPolicy=allowlist or pairing could have inbound access controls bypassed, potentially allowing unauthorized callers to reach auto-response and tool execution.

Fix

The fix hardens inbound policy handling:

  • Reject inbound calls when caller ID is missing.
  • Require strict equality when comparing normalized caller IDs against the allowlist (no suffix/prefix matching).
  • Add regression tests for missing caller ID, anonymous caller ID, and suffix-collision cases.

Fix commit(s):

  • f8dfd034f5d9235c5485f492a9e4ccc114e97fdb

Thanks @simecek for reporting.

Czego dotyczy

Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.

PlatformaPaczkaPodatne wersjePoprawka w wersji
Paczka npm openclaw < 2026.2.2 2026.2.2

Odnośniki

Ocena CVSS 9.4/10
Wektor CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L
Słabość (CWE)
CWE-287
Platforma
npm
Paczka
openclaw
Ujawniono
17.02.2026
Aktualizacja
11.10.2026 10:22

Źródła i licencje

OSV / GitHub Advisory Database - GHSA-4rj2-gpmh-qq5x - CC BY 4.0

Historia podatności: openclaw

Wszystkie opisane podatności tej paczki (Paczka npm), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.

Wszystkie (588) w archiwum
Wszystkich wpisów
588
Pierwsza → ostatnia
02.2026 07.2026
Bez poprawki
9
Wykorzystywana w atakach
0

Rozkład istotności

  • Krytyczna 20
  • Wysoka 215
  • Średnia 299
  • Niska 54

Ujawnienia w latach

  1. 2026: 588
Istotność:
  1. OpenClaw has an inbound allowlist policy bypass in voice-call extension (empty caller ID + suffix matching) ten wpis
    Krytyczna · 9.4 CVE-2026-28446 < 2026.2.2 2026.2.2
  2. Wysoka · 8.8 CVE-2026-53836 < 2026.5.12 2026.5.12
  3. Wysoka · 8.8 CVE-2026-53811 < 2026.5.7 2026.5.7
  4. Wysoka · 8.8 CVE-2026-53806 < 2026.5.12 2026.5.12
  5. Wysoka · 7.8 CVE-2026-53813 < 2026.4.25 2026.4.25
  6. Wysoka · 7.5 CVE-2026-53834 < 2026.4.27 2026.4.27
  7. Wysoka · 8.3 CVE-2026-32905 < 2026.5.4 2026.5.4
  8. Krytyczna CVE-2026-34507 < 2026.4.29 2026.4.29
  9. Wysoka CVE-2026-53823 < 2026.5.3 2026.5.3
  10. Wysoka · 8.4 CVE-2026-53814 < 2026.5.20 2026.5.20
  11. Wysoka · 8.0 CVE-2026-53817 < 2026.5.22 2026.5.22
  12. Wysoka · 6.5 CVE-2026-53815 < 2026.5.19 2026.5.19
  13. Wysoka · 8.1 CVE-2026-53849 < 2026.5.7 2026.5.7
  14. Wysoka · 7.1 CVE-2026-53853 < 2026.5.12 2026.5.12
  15. Wysoka · 8.1 CVE-2026-53857 < 2026.5.3 2026.5.3
  16. Wysoka · 8.1 CVE-2026-53855 < 2026.4.2 2026.4.2
  17. Wysoka · 8.1 CVE-2026-53866 < 2026.5.12 2026.5.12
  18. Wysoka · 8.1 CVE-2026-53864 < 2026.5.26 2026.5.26
  19. Wysoka · 7.8 CVE-2026-44114 < 2026.4.20 2026.4.20
  20. Krytyczna · 9.8 CVE-2026-44109 < 2026.4.15 2026.4.15
  21. Krytyczna · 8.1 CVE-2026-43585 < 2026.4.15 2026.4.15
  22. Wysoka · 8.8 CVE-2026-43530 >= 2026.2.23, < 2026.4.12 2026.4.12
  23. Wysoka · 8.8 CVE-2026-42434 >= 2026.4.5, < 2026.4.10 2026.4.10
  24. Wysoka · 7.5 CVE-2026-42437 >= 2026.4.9, < 2026.4.10 2026.4.10
  25. Wysoka CVE-2026-41393 < 2026.3.31 2026.3.31
  26. Krytyczna · 8.2 CVE-2026-41296 < 2026.3.31 2026.3.31
  27. Wysoka · 8.8 CVE-2026-41352 < 2026.3.31 2026.3.31
  28. Wysoka · 7.8 CVE-2026-41396 < 2026.3.31 2026.3.31
  29. Wysoka · 7.3 CVE-2026-41380 < 2026.3.28 2026.3.28
  30. Wysoka · 8.6 CVE-2026-35641 < 2026.3.24 2026.3.24
  31. Wysoka CVE-2026-35636 >= 2026.3.11, < 2026.3.28 2026.3.28
  32. Krytyczna CVE-2026-35625 <= 2026.3.24 brak poprawki
Pokaż więcej (20) Widać 101 z 235

Dowiedz się, które podatności dotyczą Twojej aplikacji

Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.

Podłącz swoją aplikację
Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.