回答:
一般的にはい、彼らはそれを見ることができます。これはw
manページからです:
各ユーザーについて、ログイン名、tty名、リモートホスト、ログイン時間、アイドル時間、JCPU、PCPU、および現在のプロセスのコマンドラインのエントリが表示されます。
現在実行中のプロセスの完全なコマンドラインが表示されます。そのため、コマンドライン引数を使用してパスワードなどを指定したくないのです。
XXXXXXXX
)。方法を知りたいです。それは、自分自身をフォークして偽の引数を渡すだけのような不自由なことをするかもしれません。わからない
一般に、コマンドライン引数はすべてに表示されます。たとえば、OpenBSDの非ルートユーザーとして、ルートとして実行されているプロセスの引数を確認できます。
$ ps -U root -o command= |grep getty |head -n 1
/usr/libexec/getty std.9600 ttyC0
Linuxでは、すべての/proc/*/cmdline
ファイルが誰でも読み取り可能であることに気付くでしょう。
コマンドライン引数がプライベートのままである非常に特定の設定があるかもしれません。たとえば、SELinuxとSolarisは、他のユーザーからプロセスを完全に隠すことができます。しかし、あなたがそのような設定にいることを絶対に知らない限り、コマンドライン引数はパブリックであると仮定してください。
標準セットアップでは、引数が表示されます。すでに言及した、プロセスは他のプロセスがそれらを見る機会があった前に、メモリに上書きすることはできませんが。
ただし、grsecurityパッチセットには、プロセスの所有者(およびルート)のみがプロセスに渡された引数を表示できるように変更するパッチが含まれています。