print(knowledge)

アウトプット帳

yumで管理してるソフトはバージョンが古いけど大丈夫なのか

どゆこと

CentOSの各種ソフトをyumで管理していて、PHPhttpdなどのソフトに脆弱性が見つかったとする。

果たしてそのソフトは別途アップデートする必要があるのか。

定期的に

$ sudo yum update

でソフトのアップデートはしてるじゃんっていう状況。

※偉い人たちが日々脆弱性に関する情報を共有してくれている。

↓とかからいろいろなソフトの脆弱性を見ることができる。

JVN iPedia

多分大丈夫

yumで管理しているソフトはリポジトリの方で脆弱性対応をしてくれているのでだいたい大丈夫。

みかけのバージョンに騙されてはいけない。

しかし、changelogをちゃんと確認する必要がある。

changelogとはソフトのchangeのlogである。どんな変更をしたかが書かれている。

例えば、次のリンクのようにhttpdのバージョン2.2.33未満の2.2系は脆弱性があるよという場合。

脆弱性IDは"CVE-2017-3167"。

cve.mitre.org

確認方法

$ httpd -v
Server version: Apache/2.2.15 (Unix)
Server built:   Jun 19 2018 15:45:13

バージョンを確認すると2.2.15だと分かる。

$ rpm -q --changelog httpd | grep CVE-2017-3167
- Resolves: #1463194 - CVE-2017-3167 httpd: ap_get_basic_auth_pw()

しかし、changelogを見ると"CVE-2017-3167"は解決されたと書かれている。

この場合、使用しているhttpdに"CVE-2017-3167"の脆弱性は無いと言える。

yumで管理してるソフトの脆弱性はこんな感じで調べると良い。

"httpd"と"CVE-2017-3167"の部分は適宜変更してほしい。

yum以外のパッケージ管理ソフトを使っている場合でもchangelogをなんらかの方法で確認すれば脆弱性対応されているかどうかは分かる。

参考

CentOSの脆弱性対策を考える – つめあと的なやつ。

CHANGELOG の書き方 - 角待ちは対空