Replies: 16 comments 17 replies
-
In case it's not obvious. The Note: The lack of new images after about Aug. 3rd is due to unrelated breakage in build-automation. It was while attempting to fix it that I noticed the possible leak. This is why there were no images tagged from about Aug 3rd - present. The "latest" buildah and podman manifest-lists are nearly finished building. I will have them pushed up in the next hour or so. Followed by skopeo. |
Beta Was this translation helpful? Give feedback.
-
Is there any temporary solution so that customers can continue running pipelines? |
Beta Was this translation helpful? Give feedback.
-
The following freshly (manually) built images have been pushed:
|
Beta Was this translation helpful? Give feedback.
-
In case it might be helpful to anyone, I have had luck building skopeo images thru GitHub actions here: https://github.com/katlol/containers |
Beta Was this translation helpful? Give feedback.
-
Would it be possible to obtain a copy of the suspect images for analysis and to assess impact? |
Beta Was this translation helpful? Give feedback.
-
Update: I believe I've found a way to validate (with a high degree of certainty) if any given image was likely tampered with or not. Though I want to be as certain of my logic as possible, so have asked the team to vet it based on their intimate knowledge of how images "work". If it works out, and with a bit of scripting, answers should come fairly quickly. |
Beta Was this translation helpful? Give feedback.
-
Image restoration Update: The team has restored a slew of older podman/buildah/skopeo images we're confident haven't been messed with. All of them had push timestamps recorded by quay, prior to the earliest date of any possible credential leaks. |
Beta Was this translation helpful? Give feedback.
-
Hi @cevich. First off, thank you for disclosing this. And second, does the project employ cryptographic signatures (e.g., through Sigstore or alternative) that could be used for forensic integrity validation (assuming the stolen credentials did not include those that allow misuse of the sigining infrastruture, as well)? |
Beta Was this translation helpful? Give feedback.
-
Update: All podman/buildah/skopeo images with final tag-push dates prior to the vulnerability window have been restored on quay. I won't list all the tags, since there's quite a few. In addition, the There won't likely be any more images restored for a few (business) days, as I'm working on scripting up the validation checks. There's also additional scrutiny being performed by other Red Hat teams, in case anybody worries "it's just cevich looking at this" - it's not. Note: Monday Sept. 4th is a US holiday. |
Beta Was this translation helpful? Give feedback.
-
Currently, the following tags have been restored: Skopeo: v1 -> v1.6.0, V1.13 and v1.13.2, also latest As Chris mentioned, the other versions were made during the window of vulnerability. We are working with others to see if we can determine the safeness of the ones that were created then that we have backed up, and if we can't determine the safeness, trying to rebuild them "by hand". If there is a particular version(s) that you are in desperate need of, please feel free to leave a reply here, and we'll try to focus on those. |
Beta Was this translation helpful? Give feedback.
-
Update: Over the last several days, I've finished scripting all basic/fundimental validation checks for an automation-friendly validation tool. I've written integration tests for it, against some of the known-good images we've restored. Now it may come as a shock: The tests are all passing for me locally, though CI seems unhappy at the moment (gosh, that's never happened before!) 😀 Anyway, I'm ignoring integration-CI for now, and will be pressing on with adding the final more detailed checks. Specifically the one that verifies the quay images against metadata from our CI system. I'm hoping to get finished with that tomorrow (Thursday), but it's fairly complex. In any case, I'm intending to start using the script and restoring validated images on Friday. Though if there are hiccups it could take a few more days. But we're much closer than we were last week. I think I mentioned it before, but there are other RH teams doing validation via a completely different methods. Most of those efforts are centered around determining IF the credentials were accessed and/or used. Though even that seems a worthy question of trying to answer. |
Beta Was this translation helpful? Give feedback.
-
Update: I've finished the first working-ish implementation of a validation script. Actually the tool works fine, everything checks out perfectly on a known-good image. The problem is my data set of quay.io push timestamps are all browser-local and the 🥵 daylight-savings time is screwing up the (test) 👍 result 😠 Anyway, it's late on a Friday and my brain is completely fried. I'm sure there's a simple solution and I can start validating images first thing on Monday. |
Beta Was this translation helpful? Give feedback.
-
Daylight savings conversion of timestamp data is complete. Unfortunately I still don't have word on if it's okay to share this data. I don't see a reason not to, but it's not my call and it's still a lower for me priority ATM. Final cleanup/polishing of the validation script is also done. It's far from perfect/pretty/fabulous but I believe it will get the job done. I'm planning to start running it against a copy of the backup images first thing tomorrow (Tuesday). Since it was requested above, I'll start working on the latest image tags first and proceed backwards through time from there. Note: Just to keep everyone's expectations clear, I'll likely not restore images to quay immediatly. Instead I want to hold off a little until I've got a handle on the overall results, and a go-ahead from several teams. Hopefully the reasons for my cautiousness are obvious. |
Beta Was this translation helpful? Give feedback.
-
My validation checks are done (whew!). The news is good: I found zero anomalies, dependencies, or in-congruent timestamps to w/in less than 2-minutes of successful build-task completion. In many cases the margin was less than 30-seconds. Basically it would be incredibly difficult and resource-intensive to skirt these timings. So at this point, just based on what I found, it doesn't look likely any of the possibly-leaked credentials were successfully used. If they leaked at all. As I mentioned yesterday, I'm holding off on restoring any more images until I get a thumbs up from RH security teams doing their own checks. I'm also waiting on them for an "okay" to publish my validation data source. Though it's nothing magic, just a list of FQINs, SHAs, and push timestamps. |
Beta Was this translation helpful? Give feedback.
-
Final update: RH security has concluded their additional scrutiny, orthogonal to my image validation. Given both results together, there is a high level of confidence no credentials actually leaked nor were utilized. As I've eluded to all along, there are no 100% perfect guarantees, so please don't neglect any of your own due-diligence. That all said, I've been given the green-light to restore the original quay images and provide a copy of the validation data I used. Unless someone strongly objects, I'm not going to overwrite any of the manually rebuilt images. I'll restore images in reverse version order, since it seems folks depend on those the most. |
Beta Was this translation helpful? Give feedback.
-
As requested, here's a copy of the data I used to validate the images mostly automatically. The script I used and some tooling is in this PR (undecided what I'm going to do with it, some have asked me to develop it further in it's own project). A few notes about the data:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
On August 23rd it was discovered that the credentials for several robot service accounts with write-access to the
container-images could have leaked. Upon discovery, the credentials were invalidated. The earliest possible
leak opportunity was around March 10th, 2022.
While the investigation is ongoing, initial inspection of the images seems to indicate it is unlikely any credentials
had actually been discovered and/or used to manipulate images. Nevertheless, out of an abundance of caution,
all possibly-affected images will be disabled.
We realize this issue has the potential to impact not only direct but also indirect use, such as base-images.
The safety and integrity of these images have and must take priority. At this time, all images have been disabled.
We will restore originals and/or rebuild fresh copies based on further safety analysis.
We expect analysis to be complete and/or known-safe images restored, before Sept. 8th. However please keep
in mind the research is ongoing, and the situation remains somewhat fluid. When the examination work is complete,
or if any manipulation is discovered, we will issue further updates.
Thank you in advance for your patience and understanding.
Beta Was this translation helpful? Give feedback.
All reactions