Skip to content

Strip CAP_SYS_ADMIN from gsr-kms-server and avoid its pkexec fallback - #11716

Closed
Chessing234 wants to merge 1 commit into
omacom:quattrofrom
Chessing234:security/8245-strip-gsr-kms-caps
Closed

Chessing234 wants to merge 1 commit into
omacom:quattrofrom
Chessing234:security/8245-strip-gsr-kms-caps

Conversation

@Chessing234

@Chessing234 Chessing234 commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Arch's gpu-screen-recorder package grants gsr-kms-server CAP_SYS_ADMIN, which is root-equivalent and world-executable (gsr-kms-server ships with cap_sys_admin (root-equivalent capability) #8245).
  • Strip that capability on install/upgrade via a helper, pacman hook, and migration.
  • When the capability is absent, prefer portal capture so recording does not fall back to pkexec as full root (OMARCHY_SCREENRECORD_USE_KMS=true can force KMS after restoring the capability).

Test plan

  • bash test/shell.d/gsr-kms-caps-test.sh
  • On an Omarchy box: getcap /usr/bin/gsr-kms-server is empty after update; screen recording still starts via portal

Fixes #8245

Arch grants the helper a root-equivalent capability; drop it on install/upgrade
and prefer portal capture when the capability is absent so recording does not
escalate through pkexec.
@Chessing234

Copy link
Copy Markdown
Contributor Author

@ryanrhughes @kwilczynski strips cap_sys_admin from gsr-kms-server — security review appreciated

@Chessing234

Copy link
Copy Markdown
Contributor Author

folded into #12103 — same cap-strip hooks/tests, one review is enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

gsr-kms-server ships with cap_sys_admin (root-equivalent capability)

1 participant