<i>> We wanted to make you aware that we are currently investigating a security incident, and that our investigation is ongoing. We will provide you updates about this incident, and our response, as they become available. At this point, we are confident that there are no unauthorized actors active in our systems; however, out of an abundance of caution, we want to ensure that all customers take certain preventative measures to protect your data as well.</i><p>Is anyone else a little annoyed by the messaging here, I read it as, "We think something bad happened to your ultra secret data, but we don't know, so we're asking teams to spend potentially hours or days fixing things while we aren't really able to tell you if your stuff was actually compromised"?<p>What I find more troubling is, if they don't quite know what happened, or aren't telling us, and we do the work to change everything, how do they know it won't just happen again in the next day or so and people are still accessing our systems, where is the details?<p><i>> At this point, we are confident that there are no unauthorized actors active in our systems.</i><p>Confident isn't really a good enough word to use here in my opinion. We've just blocked Circle CI from all our systems for now until we hear more, likely start to move to another build system.<p>I know accidents happen but this is likely the beginning of the end for our teams relationship with Circle CI. Trust has been broken.
Great reminder for folks to switch any AWS actions you perform from CI/CD to use OIDC role assumption instead of static IAM user credentials. Then even if an attacker stole all your secrets they can't do anything in your AWS account.
<a href="https://twitter.com/sanitybit/status/1610829345676996609" rel="nofollow">https://twitter.com/sanitybit/status/1610829345676996609</a><p>>I've been investigating the use of a @ThinkstCanary AWS token that was improperly accessed on December 27th and suspected as much.
Perhaps just unfortunate timing, but of note: this comes approximately a month after CircleCI reduced their staff by about 17%[1].<p>[1]: <a href="https://circleci.com/blog/ceo-jim-rose-email-to-circleci-employees/" rel="nofollow">https://circleci.com/blog/ceo-jim-rose-email-to-circleci-emp...</a>
What's tricky is this is not the first interesting recent post from Rob, he previously posted on "An Update on CirclCI Reliability" (Dec '22) [1] and "CircleCI remains secure; be vigilant and aware of phishing attempts for your credentials" (Nov '22) [2]. Overall, CircleCI has had a rough run of it lately.<p>[1] <a href="https://circleci.com/blog/an-update-on-circleci-reliability/" rel="nofollow">https://circleci.com/blog/an-update-on-circleci-reliability/</a><p>[2] <a href="https://circleci.com/blog/circleci-security-update/" rel="nofollow">https://circleci.com/blog/circleci-security-update/</a>
Someone please correct me if i'm wrong... but there was a kerfuffle in 2017 about Circle using third-party JS which could be an attack vector: <a href="https://news.ycombinator.com/item?id=15442636" rel="nofollow">https://news.ycombinator.com/item?id=15442636</a><p>To give credence to this, a gitlabber spoke up in that thread, said it was a serious thing and they deliberately had no third-party stuff on their site for that reason.<p>And I just logged into Circle today, and use the Safari network inspector to see what JS it loads... and it's still plenty of third party stuff that I can see:<p>* Amplitude
* Segment
* cci-growth-utils
* Statuspage
* DataDog
* HotJar
* Pusher<p>Not sure if this is an issue, but it doesn't make me comfortable.
@dang this is currently #198 off the front page, yet this is basically an emergency (literally every customer's secrets are exposed?)... either circleci has no more customers, or people are very calm about this...<p>we need to rotate:<p><pre><code> - secrets in context environment variables
- secrets in project environment variables
- project deploy keys
- circleci api tokens
</code></pre>
then we have to go back and look at all audit logs for... basically everything... and try to find something that looks weird. :/
Had one legacy app still on CircleCI and figured may as well move it over to GH actions if we're already rotating tokens anyway. Really hard to recommend anything else these days.
I legitimately don't understand how the ranking on HN works sometimes. How is it that there are older, less-commented posts ranking higher than this story? @dang?<p>edit: I sincerely think this should be bumped, given how many folks don't seem to be getting the news here in a timely fashion.
Our hodgepodge of microservices- developed over more than a decade- never got coordinated env variables, so now we've got to go through like ~50 services & libraries, one by one, updating secrets. Yuck.<p>If you do your shit right, you can just dump most of your secrets into some Contexts- containers of env variables- and apply them. Then when this stuff roles around, it's easy to update everything centrally; change the context & everyone sees it. We, alas, can't easily do that, since we have so many differing env var names. New Year, new fun!
Why on earth haven't I received an email from Circle about this??<p>I guess the answer is, why on earth am I still using Circle CI....<p>Thankfully all of my secrets/env variables are just dummy data for tests, and already using OIDC
I've created a tool due to this incident to help you find your secrets in CircleCi.<p><a href="https://github.com/rupert-madden-abbott/circleci-audit">https://github.com/rupert-madden-abbott/circleci-audit</a><p>It can:
* List env vars attached to your repos and contexts
* List SSH keys attached to your repos
* List which repos are configured with Jira (a secret that might need rotating)
Another thread which may need merging to this: <a href="https://news.ycombinator.com/item?id=34255189" rel="nofollow">https://news.ycombinator.com/item?id=34255189</a>
I really don't understand why you use someones else's computer to compile and test your stuff.<p>When their computers are compromised, by internal or external crooks, the crooks have full access to your code, and - in some cases - your data. If they wanted, they could inject their own shit into your binaries, totally ruining <i>your</i> reputation.<p>As a bonus, you get to pay a premium!<p>I still compile and test my code on my own machines, in my own network. It's <i>much</i> faster than CircleCI, cheaper, and it's ∞ safer.
I want the following option in my account settings for all critical services:<p><pre><code> [X] In case of a "security incident", lock down my account until I take action.
</code></pre>
I understand why they can't do that by default, but it's crazy that every time this happens, I have to run in order to secure my assets when in many cases, I'd be perfectly fine with things just shutting down until I have time to take care of them.<p>Better yet, also give me a button that does this even when there's no official incident reported. That means disabling all access tokens, resetting the password, halting any scheduled jobs, and revoking access for any connected OAuth services until I manually re-enable them.