Skip to main content

Phusion Passenger is running as root, and part(s) of the Passenger root path (パス) can be changed by non-root user is not secure: it can be modified by user ほげほげ

Ruby on Rails 6 実践ガイド (impress top gear)

新品価格
¥3,850から
(2020/2/25 21:00時点)


Mac Catalinaで
Passengerのバージョンを上げたら以下のエラーが出たので対応した話


・エラー内容
/usr/local/var/log/httpd/error_logの中身

[ W 2020-02-24 18:20:11.9510 87262/T1 age/Cor/CoreMain.cpp:1007 ]: WARNING: potential privilege escalation vulnerability detected. Phusion Passenger is running as root, and part(s) of the Passenger root path (パス) can be changed by non-root user(s):
- パス is not secure: it can be modified by user ユーザ

・原因
どこかのバージョンからかPassengerがroot指定になった模様
だけどhomebrewだとパスが/usr/localだし
rbenvだとユーザ配下にフォルダできるし
これらを全部chmodしてrootにするのは現実的じゃない

・解決策
/usr/local/etc/httpd/extra/httpd-vhosts.conf

Listen 8081
<VirtualHost *:8081>
  PassengerUserSwitching off
  PassengerDefaultUser エラーに出てたユーザ
</VirtualHost>

・参考
https://sun-blog.site/passenger%E3%81%AE%E5%AE%9F%E8%A1%8C%E6%A8%A9%E9%99%90%E3%81%AE%E8%AD%A6%E5%91%8A/
https://stackoverflow.com/questions/46855906/how-can-i-avoid-phusion-passenger-running-as-root

関連記事:

Pocket