パスワードの変更時に USER.root への変更が動作しない
search cancel

パスワードの変更時に USER.root への変更が動作しない

book

Article ID: 408502

calendar_today

Updated On:

Products

CA Privileged Access Manager - Server Control (PAMSC) CA Privileged Identity Management Endpoint (PIM)

Issue/Introduction

Privileged Identity Manager (以下、 PIM) が稼働する環境で、su コマンドを使用して他のユーザのパスワードを変更しようとするとエラーになる。ただし、別のマシンでは成功するケースもある。

トレースを確認すると以下のような動作になっていた。

18 Feb 2025 15:29:06> EXECsu  : P=143777 U=909832 G=15000 (D=fd00     I=6599167) Pgm:/usr/bin/passwd
18 Feb 2025 15:29:06> EXECARGS: 'passwd' 
18 Feb 2025 15:29:06> INFO    : Cache [SET] fn=/usr/bin/passwd un=<user> prog=<program> acc=80
18 Feb 2025 15:29:06> EXEC    > Result: 'P' [stage=201 gstag=200 ACEEH=9    rv=0(/usr/bin/passwd)]
        Why?    Class checks not active
18 Feb 2025 15:29:06> FORK    : P=143777 U=909832 G=15000 Child=143778 ACEEH=9     F=80000001 Pgm:/usr/bin/passwd
18 Feb 2025 15:29:06> SUID    : P=143778 U=909832 (R=909832 E=0    S=0   ) to USER.root (R=0    E=0    S=0   ) D=0000fd00 I=6599167
18 Feb 2025 15:29:06> SUID    > Result: 'D' [stage=69 gstag=0  ACEEH=9    rv=0]
        Why?    No Step that allowed access

成り代わりが有効なグループに <user> を追加するか、User.root のアクセサに <user>を追加すると正常に動作する。
その時のトレースは以下の通り。

20 Feb 2025 12:57:33> EXECsu  : P=111455 U=909832 G=15000 (D=fd00     I=4292779) Pgm:/usr/bin/passwd
20 Feb 2025 12:57:33> EXECARGS: 'passwd' 
20 Feb 2025 12:57:33> INFO    : Cache [SET] fn=/usr/bin/passwd un=xe26298 prog=<program> acc=80
20 Feb 2025 12:57:33> EXEC    > Result: 'P' [stage=59 gstag=59 ACEEH=25   rv=0(/usr/bin/passwd)]
        Why?    Resource UACC check
20 Feb 2025 12:57:33> FORK    : P=110313 U=909832 G=15000 Child=111455 ACEEH=25    F=80000c05 Pgm:/usr/bin/passwd

Cause

いくつかのプラットフォームではシステムの su コマンドが標準とは違う動作をする場合があります。
この場合、rootでないユーザが別のユーザの成り代わりをリクエストする際に、一旦、rootになってから対象のユーザに成り代わる動作を行います。
PIM や PAMSCではデフォルトでrootユーザへの成り代わりの代理保護が設定されているため、このような動作が保護されてしまう可能性があります。

Resolution

このような動作をするプラットフォームで su コマンドが代理保護を回避するには、以下の seos.ini 内の bypass_suid_program トークンを設定してseosd を再起動することでも可能になります。

; Default Value: none
; bypass_suid_program =/usr/bin/passwd

Additional Information

本文書は 以下の英文の KB を翻訳し、加筆修正しました。

Article ID: 388780: Surrogate to USER.root does not work when changing password