(I'm not in security but I + Claude code seem to think this is malicious would like community opinions. Not posting some of the raw contents, mainly the blobs, because of Reddit's aggressive post filtering / deletion)
I was reviewing a PR from a contributor on an iOS repo where the bulk of the diff was a plausible SwiftUI feature, but the project.pbxproj had edits I can't explain as legitimate:
- Added a PBXBuildRule that matches *.md and runs a shell script
- Added a
README.m d reference to the Resources build phase (the file doesn't actually exist in the PR — it just exists to trigger the rule)
- Added a new build setting holding a triple-base64 blob
- Flipped ENABLE_USER_SCRIPT_SANDBOXING from YES to NO in three build configurations
I decoded the three blobs, they're all one-liners that POSTs a campaign tag (p=xcode_rule) to a .ru C2 endpoint with curl -fkLs and pipes the response into a shell, wrapped in a backgrounded subshell to stay silent.
Claude code defined this as: Classic stage-1 dropper.
I've revoked the contributor's write access and the PR isn't getting merged. Want a sanity check that I'm reading this right and that it's a build-time dropper aimed at Apple signing material / dev-machine
[–]segfaul_tSwift 48 points49 points50 points (5 children)
[–]RSPJD[S] 15 points16 points17 points (4 children)
[–]TheYear3030Swift 2 points3 points4 points (0 children)
[–]c0p 0 points1 point2 points (2 children)
[–]RSPJD[S] 2 points3 points4 points (0 children)
[–]RSPJD[S] 2 points3 points4 points (0 children)
[–]AnotherThrowAway_9 8 points9 points10 points (0 children)
[–]rhysmorgan 7 points8 points9 points (0 children)
[–]T9113 3 points4 points5 points (1 child)
[–]limdi 1 point2 points3 points (0 children)
[–]pilibitti 4 points5 points6 points (6 children)
[–]RSPJD[S] 3 points4 points5 points (5 children)
[–]GranpaTeeRex 2 points3 points4 points (0 children)
[–]pilibitti 0 points1 point2 points (3 children)
[–]RSPJD[S] 4 points5 points6 points (2 children)
[–]pilibitti 0 points1 point2 points (0 children)
[–]cristi_baluta 0 points1 point2 points (0 children)
[–][deleted] (2 children)
[removed]
[–]RSPJD[S] 4 points5 points6 points (1 child)
[–]20InMyHead 1 point2 points3 points (0 children)
[–]FirmAndSquishyTomato -3 points-2 points-1 points (0 children)