[Bug 1938886] Re: rrr:no dh_strip or strip loose setuid bit

Dimitri John Ledkov 1938886 at bugs.launchpad.net
Wed Aug 4 18:02:11 UTC 2021


Based on https://elixir.bootlin.com/linux/latest/source/fs/inode.c#L1928
it seems that setuid and capabilities will be stipped, thus currently
our implementation of dh_strip causes to loose setuid and capabilities.


No idea why this is working with fakeroot when Rules-Requires-Root is set to binary-targets.
And doesn't when it is set to "no".

chmod +s debian/virtualbox/usr/lib/virtualbox/VBoxSDL
ls -latr debian/virtualbox/usr/lib/virtualbox/VBoxSDL
-rwsr-sr-x 1 xnox xnox 166208 Aug  4 18:59 debian/virtualbox/usr/lib/virtualbox/VBoxSDL
$ cat debian/control | grep Rules
Rules-Requires-Root: no
$ fakeroot dh_strip -pvirtualbox
$ ls -latr debian/virtualbox/usr/lib/virtualbox/VBoxSDL
-rwxr-xr-x 1 xnox xnox 166208 Aug  4 18:59 debian/virtualbox/usr/lib/virtualbox/VBoxSDL

$ chmod +s debian/virtualbox/usr/lib/virtualbox/VBoxSDL
$ ls -latr debian/virtualbox/usr/lib/virtualbox/VBoxSDL
-rwsr-sr-x 1 xnox xnox 166208 Aug  4 18:59 debian/virtualbox/usr/lib/virtualbox/VBoxSDL
$ sed '/Rules-Requires-Root/s/no/binary-targets/' -i debian/control 
$ cat debian/control | grep Rules
Rules-Requires-Root: binary-targets
$ fakeroot dh_strip -pvirtualbox
$ ls -latr debian/virtualbox/usr/lib/virtualbox/VBoxSDL
-rwxr-xr-x 1 xnox xnox 166208 Aug  4 19:01 debian/virtualbox/usr/lib/virtualbox/VBoxSDL

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to dash in Ubuntu.
https://bugs.launchpad.net/bugs/1938886

Title:
  rrr:no dh_strip or strip loose setuid bit

Status in bash package in Ubuntu:
  New
Status in binutils package in Ubuntu:
  New
Status in dash package in Ubuntu:
  New
Status in debhelper package in Ubuntu:
  New
Status in debugedit package in Ubuntu:
  New
Status in linux package in Ubuntu:
  New
Status in virtualbox package in Ubuntu:
  New

Bug description:
  Over at https://launchpadlibrarian.net/550715513/buildlog_ubuntu-
  hirsute-amd64.virtualbox_6.1.22-dfsg-2~ubuntu1.21.04.2_BUILDING.txt.gz

  I have rebuilt an earlier version of virtualbox, that sets Rules-
  Requires-Root: no and added extra ls statements to find where/when/why
  setuid bits are getting lost after fixperms.

  make[1]: Leaving directory '/<<PKGBUILDDIR>>'
     debian/rules override_dh_strip
  make[1]: Entering directory '/<<PKGBUILDDIR>>'
  ls -latr debian/virtualbox/usr/lib/virtualbox/VBoxSDL
  -rwsr-sr-x 1 buildd buildd 406808 Jul 29 14:34 debian/virtualbox/usr/lib/virtualbox/VBoxSDL
  ...
  dh_strip --dbgsym-migration='virtualbox-dbg'
  debugedit: debian/virtualbox/usr/lib/virtualbox/VBoxSDL.so: Unknown DWARF DW_FORM_0x1f20
  a7cf3c43c8b18c3261d2d4737a475bf730ad1554

  ls -latr debian/virtualbox/usr/lib/virtualbox/VBoxSDL
  -rwxr-xr-x 1 buildd buildd 166208 Jul 29 14:35 debian/virtualbox/usr/lib/virtualbox/VBoxSDL

  It seems to me that either dh_strip or something it calls (strip,
  debugedit) looses the setuid permission in hirsute and up.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1938886/+subscriptions




More information about the foundations-bugs mailing list