# CVE-2016-10481: Null dereference in Snapdragon Mobile, Snapdragon Wear

> A null pointer dereference in Qualcomm WLAN firmware causes a system assert and denial of service when receiving specific commands in an unassociated state.

- **Severity:** Critical 9.8 (`CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** No
- **Published:** 18 Apr 2018
- **Updated:** 16 Sep 2024
- **Also known as:** GHSA-8vg5-3xcg-xq3h

## What is CVE-2016-10481?

CVE-2016-10481 is a critical vulnerability in Qualcomm Mdm9607 Firmware, published on 18 Apr 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

In Android before 2018-04-05 or earlier security patch level on Qualcomm Snapdragon Mobile and Snapdragon Wear MDM9206, MDM9607, MDM9635M, MDM9640, MDM9650, QCA4531, QCA6174A, QCA6574AU, QCA6584, QCA6584AU, QCA9377, QCA9378, QCA9379, SD 210/SD 212/SD 205, SD 425, SD 600, SD 625, SD 650/52, SD 808, SD 810, SD 820, SD 835, SD 845, SD 850, and SDX20, if WLAN FW receives the WMI_STA_SMPS_PARAM_CMDID ioctl in not-associated state, when the virtual channel handle is not assigned, the code doesn't check for NULL virtual channel handle, so an assert occurs.

Weakness: CWE-17

## Which versions are affected by CVE-2016-10481?

It affects 26 products.


Products: Qualcomm Mdm9607 Firmware, Qualcomm Mdm9635m Firmware, Qualcomm Mdm9640 Firmware, Qualcomm Mdm9650 Firmware, Qualcomm Qca4531 Firmware, Qualcomm Qca6174a Firmware, Qualcomm Qca6574au Firmware, Qualcomm Qca6584 Firmware, Qualcomm Qca6584au Firmware, Qualcomm Qca9377 Firmware, Qualcomm Qca9378 Firmware, Qualcomm Qca9379 Firmware, Qualcomm Sd 205 Firmware, Qualcomm Sd 210 Firmware, Qualcomm Sd 212 Firmware, Qualcomm Sd 425 Firmware, Qualcomm Sd 600 Firmware, Qualcomm Sd 625 Firmware, Qualcomm Sd 650 Firmware, Qualcomm Sd 652 Firmware and 6 more.

## How do I fix CVE-2016-10481?

No fix has been published for CVE-2016-10481 yet. Limit exposure of the affected software until one is available.

## Is CVE-2016-10481 being exploited?

There is no known exploitation of CVE-2016-10481 in the wild and no public exploit code.

## Other vulnerabilities in Qualcomm Mdm9607 Firmware

- [CVE-2019-10531](https://insights.sbomify.com/CVE-2019-10531/): Memory corruption in Snapdragon Auto, Snapdragon Mobile, Snapdragon Wearables (critical 9.8)
- [CVE-2019-2276](https://insights.sbomify.com/CVE-2019-2276/): Memory corruption in Snapdragon Auto, Snapdragon Consumer Electronics Connectivity, Snapdragon Consumer IOT, Snapdragon Mobile, Snapdragon Voice & Music (critical 9.8)
- [CVE-2018-5915](https://insights.sbomify.com/CVE-2018-5915/): Denial of service in Snapdragon Automobile, Snapdragon Mobile, Snapdragon Wear (critical 9.8)
- [CVE-2015-9126](https://insights.sbomify.com/CVE-2015-9126/): Memory corruption in Snapdragon Mobile, Snapdragon Wear (critical 9.8)
- [CVE-2016-10479](https://insights.sbomify.com/CVE-2016-10479/): Memory corruption in Snapdragon Mobile (critical 9.8)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2016-10481 and fix it if it is affected.

What it is: CVE-2016-10481 is a critical vulnerability in Qualcomm Mdm9607 Firmware, published on 18 Apr 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2016-10481 in the wild and no public exploit code.

Affected product: Qualcomm Mdm9607 Firmware. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2016-10481/ (Markdown: https://insights.sbomify.com/CVE-2016-10481/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2016-10481
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2016-10481
- OSV: https://osv.dev/vulnerability/CVE-2016-10481

---
From sbomify Insights: https://insights.sbomify.com/CVE-2016-10481/
Summaries are generated and may contain mistakes; the official description above is the record.
