Security vulnerability in the app uninstaller allowing arbitrary user data deletion via 'short-name bomb' and unchecked file operations.
Raw Developer Origin & Technical Request
GitHub Issue
Apr 16, 2026
### Summary
A malicious `.app` dropped into `~/Applications` makes PureMac's uninstaller propose deletion of arbitrary user directories via three compounding issues:
1. `AppPathFinder.matchesApp` enforces `normalizedBundleID.count >= 5` but has NO length check on `normalizedAppName` / `appNameLettersOnly`; `normalizedForMatching()` strips space/dash/underscore/dot, so app name \"s-s-h\" becomes the 3-char token \"ssh\" that `String.contains()` then matches against home entries.
2. `matchesApp` and `applyConditions` use `normalizedBundleID.contains(condition.bundleID)` — unanchored substring. Attacker bundle ID `com.evil.jetbrainsapp` hijacks the `jetbrains` condition and force-includes real JetBrains/Arc/VSCode directories.
3. `AppState.removeSelectedFiles` and `OrphanListView` Remove Selected call raw `FileManager.default.removeItem(at:)` — no `isSafeToDelete`, no symlink guard, no confirmation dialog. The `CleaningEngine`'s allow-list does not apply here.
### Location
- `PureMac/Logic/Scanning/AppPathFinder.swift` 198-264, 324-341
- `PureMac/Logic/Scanning/StringNormalization.swift` 5-11
- `PureMac/ViewModels/AppState.swift` 116-131
- `PureMac/Views/Orphans/OrphanListView.swift` 63-67
### Evidence (runtime)
Attacker drops `~/Applications/s-s-h.app` (Info.plist with `CFBundleDisplayName=s-s-h`).
```
normalizedAppName = ssh
[scan] .ssh → normalized=ssh **MATCH**
[uninstaller] proposes: ~/.ssh (pre-selected)
[user clicks Uninstall]
[remove] ~/.ssh → OK ← id_rsa, k...
Developer Debate & Comments
No active discussions extracted for this entry yet.
Adjacent Repository Pain Points
Other highly discussed features and pain points extracted from momenbasel/PureMac.
Frequently Asked Questions
Market intelligence mapped to Security vulnerability in the app uninstaller allowing arbitrary user data deletion via 'short-name bomb' and unchecked file operations..
How is Security vulnerability in the app uninstaller allowing arbitrary user data deletion via 'short-name bomb' and unchecked file operations. positioned in the market?
Which technical concepts are associated with Security vulnerability in the app uninstaller allowing arbitrary user data deletion via 'short-name bomb' and unchecked file operations.?
Engagement Signals
Cross-Market Term Frequency
Quantifies the cross-market adoption of foundational terms like isSafeToDelete and malicious .app by tracking occurrence frequency across active SaaS architectures and enterprise developer debates.
SaaS Metrics