CVE-2026-107181 — Telegram Desktop IPC Injection (Deep Link → Local File Read / Account Takeover)
October 14, 2026 · 4 views
Telegram Desktop through 7.2.8 (Windows): tg:// URI record-separator injection in single-instance IPC → legacy file path can exfil local files (session/tdata risk) after user opens crafted link. Not classic OS RCE. Fixed 7.2.9. Node.js 18+ research PoC (00nx): craft, lab server, npm test. Authorized lab only.
Description
Overview
CVE-2026-107181 — Telegram Desktop — IPC record-separator injection via crafted deep links, leading to arbitrary local file read/exfiltration and potential account takeover if session material is exposed. User interaction is required (victim opens a link).
| | | |---|---| | Affected (reported) | Through 7.2.8 | | Fixed (reported) | 7.2.9 | | Platform focus | Windows (research PoC) | | Class | IPC injection + unsafe internal file handler — not demonstrated native code execution |
Mechanism (summary): unescaped record separators in URI handling can produce extra IPC records; an injected record may reach a legacy file-handling path without proper authorization, sending local files to a remote chat. Combined with exposed session/tdata artifacts, impact can escalate to account compromise.
PoC page: https://pocbit.org/pocs/cve-2026-107181
Upstream repository: 00nx/telegram-account-takeover-poc
CVE.org: CVE-2026-107181
Vendor fix (reported): Telegram Desktop commit db3405699f
Original research: BeakSec — Telegram Desktop: one-click account takeover via IPC injection
Bundled tool (Node.js 18+)
Download cve-2026-107181.py — extracts the upstream Node.js tree from 00nx/telegram-account-takeover-poc.
python cve-2026-107181.py
cd telegram-account-takeover-poc # files at bundle root
npm install
npm test # code review / unit tests first
npm run craft # inspect crafted protocol payload (lab only)
cp .env.example .env # configure test-only destinations
npm run start # review routes before any live use
The upstream README documents bin/craft.js, instruction generation, and an optional Express receiver. Default instruction targets may reference sensitive session paths — replace with synthetic marker files in disposable VMs; do not run against real accounts or third-party devices.
Mitigation
- Upgrade Telegram Desktop to ≥ 7.2.9 (verify against vendor release notes).
- Train users: do not open untrusted tg:// / Telegram deep links.
- Enterprise: standard desktop patching; consider application control on outdated clients.
Legal and ethical use
Authorized security research and patch validation only. Do not use against accounts or systems without explicit permission.
References
Related PoCs
Same platform, vendor, or tags — explore more write-ups on Pocbit.
- Web appCVE-2026-101894critical
CVE-2026-101894 — @xhmikosr/decompress Symlink-Chain Archive Path Traversal
Node.js @xhmikosr/decompress (and unmaintained decompress): read/write outside output dir via chained symlink archive entries — bypass of CVE-2026-53486 hardening. Fixed in 10.2.2 / 11.1.4; kevva decompress ≤4.2.1 unpatched. CVSS 3.1 9.1 Critical. Python PoC: --lab, lockfile check, evil.tar upload exploit, mass -j.
- Web appCVE-2026-105844critical
CVE-2026-105844 — Payload CMS Import/Export Plugin Prototype Pollution → ACL Bypass
Payload CMS + @payloadcms/plugin-import-export ≥3.0.0 <3.88.0: POST /api/exports/export-preview fields __proto__.overrideAccess pollutes Object.prototype via getSelect() → overrideAccess on later REST ops, unauthenticated data leak (app-dependent RCE). CWE-1321, CVSS 4.0 9.3 Critical. Fixed 3.88.0 / 4.0.0-canary.27. Python PoC: check/exploit/mass -j, hits.txt & exploited.txt.
- Web appCVE-2026-106445critical
CVE-2026-106445 — Handlebars 4.0.0–4.7.9 RCE (Function.prototype.constructor Bypass)
handlebars 4.0.0–4.7.9: lookupProperty own-property order bypasses proto deny list → Function.prototype.constructor → sandbox escape when allowProtoMethodsByDefault:true and attacker-controlled compile (CWE-184/CWE-1289). CVSS 4.0 9.2 Critical AT:P. Fixed 4.7.10 GHSA-p8wg-vrv2-v86f. Python PoC: check/exploit, Docker lab, --render-path. Marker POCBIT-106445-OK.
- Web appCVE-2026-76268critical
CVE-2026-76268 — Splunk Enterprise SHC Patroni REST Unauthenticated RCE (archive_command)
Splunk Enterprise 10.2.0–10.2.6 and 10.4.0–10.4.2 on SHC members: PostgreSQL sidecar Patroni REST (typ. :8008) accepts unauth PATCH /config + POST /restart → archive_command OS exec (CWE-306). SVD-2026-1001. CVSS 3.1 9.8 Critical. Fixed 10.2.7 / 10.4.3. Python PoC: check/exploit, OOB POCBIT-76268-OK.