This is a bug in the bouncer at a private gatehouse, dangerous if you can reach the gate but irrelevant if you can’t
CVE-2026-7763 is a heap-based buffer overflow in morse.ko, the Morse Micro HaLow Wi-Fi kernel driver used by HaLowLink 2. The public description says affected builds are HaLowLink 2 software versions prior to a vendor-fixed 2.x release, but the exact fixed build string was not recoverable from indexed public sources; what is clear is that the bug sits in a kernel-space wireless parsing path, so malformed over-the-air 802.11ah traffic can plausibly crash the device and, in the worst case, become kernel code execution.
With no vendor CVSS, the right baseline is not internet RCE hysteria; it is radio-adjacent pre-auth kernel attack surface on a niche embedded platform. That keeps this out of CRITICAL territory because the attacker must be within HaLow radio range and the exposed population is small, but it still lands at HIGH because memory corruption in a wireless kernel driver happens *before* most enterprise controls ever get a vote.
4 steps from start to impact.
Get into 802.11ah radio range
- Target is a Morse Micro HaLowLink 2 with the HaLow interface enabled
- Attacker can transmit 802.11ah frames in the target’s regulatory band
- Attacker is within practical radio range
- 802.11ah tooling is niche compared with commodity Wi-Fi attack gear
- The attacker must be physically nearby or have line-of-sight style RF reach
- Many enterprise defenders will have very few HaLow deployments at all
Inject malformed management traffic
morse.ko. Because this is a wireless driver bug, the likely weaponization path is a custom frame injector or modified firmware/SDR workflow rather than an HTTP exploit or internet scanner.- The vulnerable code path is reachable by unauthenticated radio traffic
- The target driver processes the malformed frame before policy or association gates stop it
- Exploit reliability depends on the exact parser path and frame format
- Regional channelization and power limits can reduce reproducibility across sites
- Different operating modes may expose slightly different parsing surfaces
Corrupt heap memory in kernel space
- The crafted frame reaches the vulnerable buffer handling logic
- Heap layout is favorable enough for a useful overwrite
- Reliable kernel RCE from a heap overflow on embedded Linux is harder than causing a panic
- Embedded builds may reboot quickly, reducing post-crash dwell time
- Exploit development will require target-specific reversing and repeated RF testing
kernel oops, panic, watchdog resets, sudden radio loss, and unexplained reboots in logread, dmesg, or remote syslog. EDR coverage is generally absent on this class of device.Pivot from the gateway into the local segment
- Successful code execution rather than a simple crash
- The device has meaningful network adjacency to business or operational assets
- Many HaLow deployments are intentionally segmented and low-bandwidth
- Blast radius depends heavily on whether the device is just an isolated bridge or a meaningful gateway
- Persistence options are limited if the device is routinely reimaged or tightly managed
The supporting signals.
| In-the-wild status | No public exploitation evidence located in indexed sources as of 2026-06-05; not KEV-listed. |
|---|---|
| Proof-of-concept availability | No public PoC located in indexed GitHub/web results for CVE-2026-7763; expect any exploitation to require custom 802.11ah frame injection. |
| EPSS | No public FIRST EPSS value located in indexed sources for this CVE as of 2026-06-05. |
| KEV status | No; the CVE is not present in the CISA KEV catalog. |
| CVSS baseline | None exists from vendor/NVD/CNA in indexed public sources, so this is ASSESSED AT HIGH rather than upgraded or downgraded. |
| Affected software | Public CVE text indicates Morse Micro HaLowLink 2 software before a vendor-fixed 2.x build. Indexed public sources confirm HaLowLink 2 runs Morse Micro OpenWrt and observed field builds include 2.11.8 / OpenWrt 23.05.6 / kernel 5.15.189. |
| Fixed version | Not recoverable from indexed public vendor sources for CVE-2026-7763; verify against Morse customer portal/advisory before fleet rollout. |
| Exposure telemetry | This is a radio-adjacent flaw, so Shodan/Censys/GreyNoise style internet telemetry is a poor proxy. No indexed evidence of broad internet scanning or mass exposure surfaced. |
| Disclosure date | 2026-06-05. |
| Reporter / credit | No public researcher attribution found in indexed sources. |
noisgate verdict.
The decisive factor is pre-auth memory corruption in a kernel wireless driver, which means an attacker can hit privileged code before application-layer controls matter. The main downward pressure is that this is not internet-reachable at scale: it requires radio proximity on a niche 802.11ah platform, which materially shrinks the real exposed population.
Why this verdict
- Started high on technical impact: heap overflow in
morse.komeans potential kernel crash or kernel-level code execution, not a userland bug. - Adjusted down for attacker position: the prerequisite is adjacent RF access, which implies the attacker must already be physically near the site or have a purpose-built nearby transmitter.
- Adjusted down again for exposed population: Wi-Fi HaLow / HaLowLink 2 is a niche enterprise footprint, so the vulnerable population is far smaller than mainstream Wi-Fi APs or internet appliances.
- Held above Medium because defenses are weak at this layer: WAF, MFA, reverse proxies, and most IP-layer monitoring do nothing against malformed pre-association wireless frames parsed in kernel space.
Why not higher?
It is not CRITICAL because there is no public active exploitation, no KEV listing, and the attacker must clear a real-world reachability hurdle: being in 802.11ah radio range. Just as important, this is a specialized product family, so the internet-scale blast radius that drives true emergency patching is not here.
Why not lower?
It is not MEDIUM because the bug lives in a kernel driver, not a management UI or authenticated feature path. The attacker does not need valid credentials or a post-login foothold if the vulnerable parser is reachable over the air, and even a 'mere crash' can take out a gateway serving IoT or OT traffic.
What to do — in priority order.
- Disable unused HaLow radios — If a HaLowLink 2 is not actively needed for 802.11ah service, take the radio down or remove the device from service; that shrinks the vulnerable RF surface immediately. For a HIGH verdict, deploy this compensating control within 30 days wherever business use permits.
- Constrain RF reachability — Move devices away from publicly reachable perimeters, reduce unnecessary transmit footprint, and prefer indoor/controlled placement so an attacker cannot casually get into effective radio range. Treat this as a within-30-days mitigation step for exposed field sites and campus edge locations.
- Segment the gateway hard — Assume a compromised HaLow gateway becomes an edge foothold; keep it on tightly scoped VLANs/firewall zones with minimal east-west access and no admin plane exposure to crown-jewel networks. Put these segmentation controls in place within 30 days for all production deployments.
- Turn on remote logging and crash collection — Forward
logread/dmesgto centralized logging so panics, oops events, watchdog resets, and repeated interface flaps are preserved even if the box reboots. Do this within 30 days because local logs on embedded OpenWrt gear are easy to lose. - Validate vendor-fixed images before rollout — Because the exact fixed build was not publicly indexed, confirm the vendor advisory or portal release note, then pin and test that image in a lab before broad deployment. That validation work should begin now so the actual patch can land well inside the remediation window.
- MFA does not help because this is not a login-path bug; malformed radio frames can hit the driver before authentication matters.
- WAF / reverse proxy / IPS on the WAN do not help because the attack surface is 802.11ah RF, not HTTP or internet-exposed TCP services.
- HTTPS-only admin UI is irrelevant to this flaw; management-plane hardening does not protect a vulnerable kernel parser.
- Asset scanners alone are insufficient because most will not identify a vulnerable
morse.kobuild or RF-reachable state without device-local inspection.
Crowdsourced verification payload.
Run this on the target HaLowLink 2 or another Morse Micro Linux target, not from your auditor workstation. Invoke it as sh verify-cve-2026-7763.sh --fixed <vendor-fixed-version>; for example, sh verify-cve-2026-7763.sh --fixed 2.11.12 only if your vendor advisory confirms that fixed build. It needs root for modinfo, package queries, and reliable access to system release files.
#!/bin/sh
# verify-cve-2026-7763.sh
# Purpose: determine whether a Morse Micro / HaLowLink target is likely VULNERABLE,
# PATCHED, or UNKNOWN for CVE-2026-7763 by comparing the local software version
# to a vendor-confirmed fixed version supplied at runtime.
#
# Exit codes:
# 0 = PATCHED
# 1 = VULNERABLE
# 2 = UNKNOWN / insufficient evidence
set -u
FIXED=""
usage() {
echo "Usage: $0 --fixed <vendor-fixed-version>"
echo "Example: $0 --fixed 2.11.12"
}
while [ $# -gt 0 ]; do
case "$1" in
--fixed)
shift
[ $# -gt 0 ] || { usage; echo "UNKNOWN: missing value for --fixed"; exit 2; }
FIXED="$1"
;;
-h|--help)
usage
exit 2
;;
*)
usage
echo "UNKNOWN: unrecognized argument: $1"
exit 2
;;
esac
shift
done
if [ -z "$FIXED" ]; then
usage
echo "UNKNOWN: vendor-fixed version not supplied"
exit 2
fi
version_lt() {
# returns 0 if $1 < $2
[ "$1" = "$2" ] && return 1
[ "$(printf '%s\n%s\n' "$1" "$2" | sort -V | head -n1)" = "$1" ]
}
get_local_version() {
# Prefer explicit HaLowLink / Morse release markers if present.
for f in /etc/halowlink_release /etc/morse_release /etc/openwrt_release /etc/os-release; do
if [ -r "$f" ]; then
# shellcheck disable=SC2162
while IFS= read line; do
case "$line" in
VERSION=*|DISTRIB_RELEASE=*|IMAGE_VERSION=*|HALOWLINK_VERSION=*|MORSE_VERSION=*)
v=$(echo "$line" | sed 's/^[^=]*=//' | tr -d '"' | tr -d "'" )
case "$v" in
*[0-9]*.*[0-9]*)
echo "$v"
return 0
;;
esac
;;
esac
done < "$f"
fi
done
# Fall back to opkg package metadata if present.
if command -v opkg >/dev/null 2>&1; then
for pkg in halowlink morse-driver morse_firmware morse-firmware; do
v=$(opkg list-installed 2>/dev/null | awk -v p="$pkg" '$1==p {print $3; exit}')
case "$v" in
*[0-9]*.*[0-9]*)
echo "$v"
return 0
;;
esac
done
fi
return 1
}
has_morse() {
if [ -e /lib/modules/"$(uname -r)"/morse.ko ] || [ -e /lib/modules/"$(uname -r)"/updates/morse.ko ] || [ -e /lib/modules/"$(uname -r)"/extra/morse.ko ]; then
return 0
fi
if command -v modinfo >/dev/null 2>&1 && modinfo morse >/dev/null 2>&1; then
return 0
fi
if lsmod 2>/dev/null | awk '$1=="morse" {found=1} END{exit(found?0:1)}'; then
return 0
fi
return 1
}
if ! has_morse; then
echo "UNKNOWN: Morse Micro driver (morse.ko) not detected on this host"
exit 2
fi
LOCAL_VERSION=$(get_local_version || true)
if [ -z "$LOCAL_VERSION" ]; then
echo "UNKNOWN: morse.ko detected, but local software version could not be determined"
exit 2
fi
# Normalize versions by trimming non-version suffixes if present.
LOCAL_CLEAN=$(echo "$LOCAL_VERSION" | sed 's/[^0-9.].*$//')
FIXED_CLEAN=$(echo "$FIXED" | sed 's/[^0-9.].*$//')
if [ -z "$LOCAL_CLEAN" ] || [ -z "$FIXED_CLEAN" ]; then
echo "UNKNOWN: version parsing failed (local='$LOCAL_VERSION', fixed='$FIXED')"
exit 2
fi
if version_lt "$LOCAL_CLEAN" "$FIXED_CLEAN"; then
echo "VULNERABLE: local version $LOCAL_VERSION is older than fixed version $FIXED"
exit 1
fi
echo "PATCHED: local version $LOCAL_VERSION is at or above fixed version $FIXED"
exit 0
If you remember one thing.
morse.ko, confirm which ones actually have the HaLow radio enabled, and reduce RF exposure on anything nonessential right away. For a HIGH verdict, the noisgate mitigation SLA is ≤ 30 days: within that window, disable unused radios, hard-segment the gateways, and get remote crash logging in place. There is no KEV or active exploitation override, so you do not need an hours-level fire drill; but you should still verify the vendor-fixed image now and complete patch deployment inside the noisgate remediation SLA of ≤ 180 days.Sources
- Morse Micro HaLowLink User Guide 2.11.2
- Morse Micro Linux Porting Guide
- MorseMicro/morse_driver GitHub repository
- Morse Micro HaLowLink 2 product brief
- Morse Micro announcement: HaLowLink 2 at CES 2026
- Morse Micro Community: HaLowLink 2 fails to pair (shows 2.11.8 / OpenWrt 23.05.6)
- Morse Micro Community: TX power thread (shows 2.11.8 / kernel 5.15.189 / OpenWrt 23.05.6)
- CISA Known Exploited Vulnerabilities Catalog
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.