We have a CI server application run as the build
user. Any command with arguments run by the CI server is visible via ps
. Although non-admin users do not have access to load a shell on the CI server, they do however have access to running unix commands via a task.
My concern is; user A can potentially expose a user B's task which has command line arguments (which could potentially be sensitive info) by simply doing a ps
.
Note that all tasks within the CI server is run as the build
user. Users cannot switch to different user
.
I could perhaps block the ps
command so within a task a user cannot execute ps
, which should solve my problem however I'm curious to know:
- Are there other commands that can be run to expose command line arguments without having
root
privileges? - Given the context of this problem, is there a better/secure way to manage it?
build
? If they were run as different users, this could be done.ps
for all users is probably not what I'm looking for as its vital for administering the system. Perhapsproc
can be disabled too? but if there are still other means perhaps its not an efficient way to go about it.build
user.