rarkins
Joined 5 years ago
Joined 5 years ago
What was even worse than there being dupe ChatGPT apps in the Mac app store was that Perplexity and Gemini both recommended installing chatgpt dot macupdate dot com as if it was the official app.
The affected repo has now been taken down, so I am writing this partly from memory, but I believe the scenario is:
1. An attacker had write access to the tj-actions/changed-files repo
2. The attacker chose to spoof a Renovate commit, in fact they spoofed the most recent commit in the same repo, which came from Renovate
3. Important: this spoofing of commits wasn't done to "trick" a maintainer into accepting any PR, instead it was just to obfuscate it a little. It was an orphan commit and not on top of main or any other branch
4. As you'd expect, the commit showed up as Unverified, although if we're being realistic, most people don't look at that or enforce signed commits only (the real bot signs its commits)
5. Kind of unrelated, but the "real" Renovate Bot - just like Dependabot presumably - then started proposing PRs to update the action, like it does any other outdated dependency
6. Some people had automerging of such updates enabled, but this is not Renovate's default behavior. Even without automerging, an action like this might be able to achieve its aim only with a PR, if it's run as part of PR builds
7. This incident has reminded that many people mistakenly assume that git tags are immutable, especially if they are in semver format. Although it's rare for such tags to be changed, they are not immutable by design
BTW the VSCode extension which someone else linked to discovered everything perfectly, which is another hint that your tool needs to improve, not your users.
Even if tsconfig.json was very important, and the users are all wrong and you're right, the only thing your readme says is: "The CLI will respect the tsconfig.json for loading source files." which is insufficient.
It deleted 100s of files, most of which were Jest test files, and potentially all of which were a mistake. I restored them all with `git restore $(git ls-files -d)`.
I then ran `tsc` on the remaining _modified_ files and `Found 3920 errors in 511 files.`
Obviously at that point I had no choice but to discard all changes and unfortunately I would not recommend this for others to even try.
But the graph shows 0/2
> On June 30, 2022, we entered into a License Agreement with Visicom (the "License Agreement"), pursuant to which we agreed to distribute, at the discretion and direction of Visicom, a specified number of ManyCam software updates to certain license holders to whom Visicom has previously granted a "lifetime" license to ManyCam software. As consideration for distributing the software updates, Visicom paid us an initial upfront nonrefundable payment of $65,000. The License Agreement provides that Visicom may purchase additional licenses at prices specified therein. Other than providing a one-time, limited license to Visicom for the distribution of ManyCam software updates pursuant to the terms of the License Agreement, we do not have any obligation to provide support or service to the licensee end users.
> Upgrade now to ManyCam Studio Lifetime for only $39 and get access to all the future versions and updates, forever!
What they presented to the user was unequivocal. In a just world, the company who sold ManyCam (Visicom Media) should not be able to get away with this.