Summary: | Task injection vulnerability in Krita | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | Victor Souza <souza_comz> |
Component: | General | Assignee: | Krita Bugs <krita-bugs-null> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | ghevan, halla |
Priority: | NOR | ||
Version First Reported In: | 5.2.9 | ||
Target Milestone: | --- | ||
Platform: | macOS (DMG) | ||
OS: | macOS | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | POC-OBJC-Krita-Injection |
Description
Victor Souza
2025-07-10 21:33:02 UTC
We don't use xcode to developer Krita, of course... This entitlement was added to make it possible for users to generate backtraces for bug reports. I'm really not sure why this should be a "vulnerability" given that you're already executing code at the same privilege level as Krita, too, on the same system? (In reply to Halla Rempt from comment #1) > We don't use xcode to developer Krita, of course... This entitlement was > added to make it possible for users to generate backtraces for bug reports. > I'm really not sure why this should be a "vulnerability" given that you're > already executing code at the same privilege level as Krita, too, on the > same system? Hi Halla, I totally understand what you mean. It turns out that on macOS, by default, it's common for an application to only run what's in its sandbox. Even if the attacker already has local privileges, using this entitlement significantly lowers the barrier to escalating the attack to other trusted processes (like Krita), and can be combined with other techniques to exploit user data, abuse UI spoofing, keylogging, etc. I think it's important because it's not just theoretical; the BlueNoroff APT recently used this same technique, which can be read about in the Huntress article: https://www.huntress.com/blog/inside-bluenoroff-web3-intrusion-analysis Does this vulnerability works on krita from the macStore or only works (or was tested) for krita downloaded from krita.org? ok, ran the test using sandboxed krita.app (from the store) this are the results daedalus@dinamus:krita/test_files/task_allow $ ./inject_krita 2025-07-11 14:10:47.248 inject_krita[38057:3650901] [*] Searching for Krita process... 2025-07-11 14:10:47.258 inject_krita[38057:3650901] [+] Found Krita with PID: 37960 2025-07-11 14:10:47.258 inject_krita[38057:3650901] [+] Attempting to get task port... 2025-07-11 14:10:47.258 inject_krita[38057:3650901] [-] Failed to get task for pid 37960: 5 (0x5) The entitlement does not break the sandbox. however it also does not work running krita installed from our website, neither running any dev build. I followed the exact steps from this report. What could be missing? ๐๐งน โ ๏ธ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME. For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging. Thank you for helping us make KDE software even better for everyone! ๐๐งน This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME. |