On Fri, 31 Jan 2025 at 19:23:07 +0000, Sean Whitton wrote: > On Sun 30 Jun 2024 at 11:03pm +02, Paride Legovini wrote: > > * I am not aware of Debian (or Ubuntu) developers actively using it. > > This includes autopkgtest developers, and makes the virt server not > > well tested. > > This statement is very surprising to me: > I have used it for almost every upload I have made to the archive, ever.
What is your expansion of "it" here? schroot, or autopkgtest-virt-schroot? I think Paride was referring to a-v-schroot. > I was under the impression that it was such a core piece of Debian's > toolchain that there was no way there could be plans to remove it that I > wasn't even aware of. Again, what is "it" here? schroot, or autopkgtest-virt-schroot? schroot is no longer a core part of Debian's toolchain in the way that it was at the time of the bookworm release, because part of the response to the xz-utils back door (CVE-2024-3094) was a realization that schroot is not designed to protect the host system from malicious code running as root inside the chroot ("if you are root in the chroot then you are root in real life"). Unfortunately, running sbuild with its schroot backend involves running apt, dpkg and maintainer scripts from the target suite as root, which means that in principle, getting malicious code into unstable or even experimental could have been enough to achieve a root compromise on the buildd (and dpkg involves xz). In the case of the xz-utils back door, I believe there is consensus that this didn't happen, because the attacker was playing a longer game, wanted a back door into our stable releases, and was minimizing their risk of being detected early; but it could have done, and that's already a concern. As a result, efforts to migrate official buildds from sbuild's schroot backend to sbuild's unshare backend became a higher priority, especially for buildds that handle relatively uncontrolled suites like unstable and experimental. unshare runs unprivileged, so the worst-case scenario (in the absence of an attacker chaining several unrelated vulnerabilities) should hopefully be a compromise of the container or the buildd user, but not a root compromise of the whole machine it is running on. I was not involved in that effort, but my understanding is that "most" buildds now use the unshare backend, for this reason. I am not aware of autopkgtest-virt-schroot being a core part of Debian's toolchain at a distro level. ci.debian.net mostly uses a-v-lxc, with a-v-qemu on some architectures for some packages that benefit from the isolation-machine capability, and (I believe) ongoing work on supporting a-v-podman as an alternative to or replacement for a-v-lxc. Incidentally, I suspect that a-v-lxc should also be considered "at risk", because my understanding is that it's based on an old version of the lxc interface, whose upstream developers consider it to be deprecated and would variously recommend replacing it with either lxd or Incus, depending on who you ask. (I have not attempted to carry out a security audit on any of these container managers, and I am not a professional exploit developer; all of this is merely to the best of my limited understanding.) I am sorry that I do not have the spoons to support every container technology, past and present, at an equivalent level, and I am sorry that my attempts to re-scope my maintainer responsibilities by supporting fewer container managers fail to meet your expectations. smcv