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 Kernel
Packages, which is subscribed to linux 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


-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to