###導入###
| Samba は、Linux システム上の Windows クライアントに共有ファイルおよび印刷サービスを提供するための標準として長い間使用されてきました。ホーム ユーザー、中堅企業、大企業によって使用されており、ツールの普及によりほとんどの Samba インストールが直面する、複数のオペレーティング システムが共存する環境における最良のソリューションとして際立っています。 WannaCry ランサムウェア攻撃のニュースが出るまで、重要ではないと考えられていた既知の脆弱性。
|
脆弱性
古いシステムやパッチが適用されていないシステムは、リモート コード実行の脆弱性に対して脆弱です。簡単に言うと、これは、書き込み可能な共有にアクセスできるユーザーが任意のコードをアップロードし、サーバーの root 権限を使用して実行できることを意味します。
この問題は、Samba Web サイトで CVE-2017-7494 として説明されており、Samba v3.5 (2010 年 3 月初旬にリリース) 以降に影響することが知られています。 WannaCry との類似点から、非公式に SambaCry と名付けられました。どちらも SMB プロトコルをターゲットにしており、ワームである可能性が高く、あるシステムから別のシステムに拡散する可能性があります。
Debian、Ubuntu、CentOS、Red Hat は、ユーザーを保護するために迅速な措置を講じ、サポートされているバージョンのパッチをリリースしました。さらに、サポートされていないセキュリティ回避策が提供されています。
Samba を更新する
前述したように、以前にインストールした方法に応じて更新には 2 つの方法があります:
Samba をディストリビューションのリポジトリからインストールした場合
この状況で何をする必要があるかを見てみましょう:
Debian での SambaCry の修正
次の行をソース リスト (/etc/apt/sources.list) に追加して、apt が最新のセキュリティ更新プログラムを確実に取得できるようにします。
リーリー
次に、利用可能なパッケージを更新します:
リーリー
最後に、samba パッケージのバージョンがバグ修正されたバージョンと一致していることを確認します (CVE-2017-7494 を参照):
リーリー
Debian での SambaCry の修正
Ubuntu での SambaCry の修正
修復を開始するには、新しい利用可能なパッケージを確認し、次のように Samba パッケージを更新します。
リーリー
CVE-2017-7494 が修正された Samba のバージョンは次のとおりです:
17.04: サンバ 2:4.5.8 dfsg-0ubuntu0.17.04.2
- 16.10: サンバ 2:4.4.5 dfsg-2ubuntu5.6
- 16.04 LTS: サンバ 2:4.3.11 dfsg-0ubuntu0.16.04.7
- 14.04 LTS: サンバ 2:4.3.11 dfsg-0ubuntu0.14.04.8
-
最後に、次のコマンドを実行して、Ubuntu に正しいバージョンがインストールされていることを確認します。
リーリー
CentOS/RHEL 7 での SambaCry の修正
EL 7 のパッチ適用済み Samba バージョンは samba-4.4.4-14.el7_3 です。インストールするには、次の手順を実行します:
リーリー
前と同様に、パッチが適用されたバージョンの Samba がインストールされていることを確認してください:
リーリー
CentOS での SambaCry の修正
サポートされている古い CentOS と古いバージョンの RHEL も修正されています。詳細については、RHSA-2017-1270 を参照してください。
Samba をソースからインストールした場合
注: 次の手順は、以前にソースから Samba を構築していることを前提としています。運用サーバーに展開する前に、テスト環境で試してみることを強くお勧めします。
また、開始する前に smb.conf ファイルを必ずバックアップしてください。
この場合、Samba もソースからコンパイルして更新します。ただし、始める前に、すべての依存関係がインストールされていることを確認する必要があります。これには数分かかる場合があることに注意してください。
Debian および Ubuntu の場合:
リーリー
CentOS 7 または類似の場合:
リーリー
サービスを停止します (LCTT 翻訳: ここでは必要ありません):
リーリー
ソース コードをダウンロードして解凍します (執筆時点では 4.6.4 が最新バージョンです):
リーリー
情報提供を目的として、次のコマンドを使用して利用可能な構成オプションを確認してください。
リーリー
以前のバージョンのビルドでいくつかのオプションを使用したことがある場合は、上記のコマンドの戻り値にいくつかのオプションを含めることも、デフォルト値の使用を選択することもできます:
リーリー
最後にサービスを再起動します。
リーリー
そして、更新されたバージョンを使用していることを確認してください:
リーリー
ここでの戻り値は 4.6.4 である必要があります。
その他の状況
サポートされていないディストリビューションを使用していて、何らかの理由で最新バージョンにアップグレードできない場合は、次の提案を検討してください。
SELinux が有効になっている場合は、保護されています。
- Samba 共有が noexec オプションを使用してマウントされていることを確認してください。これにより、マウントされたファイル システムからバイナリが実行されなくなります。
-
将軍もいます:
リーリー
smb.confの[global]フィールドに追加します。 Samba プロジェクトによれば、これにより「Windows クライアントの特定の機能が無効になる可能性がある」ことに留意する必要があるかもしれません。
重要: nt Pipe support = no オプションを指定すると、Windows クライアントの共有リストが無効になることに注意してください。たとえば、Samba サーバー上の Windows エクスプローラーで //10.100.10.2/ と入力すると、「許可が拒否されました」と表示されます。 Windows クライアントが共有にアクセスするには、//10.100.10.2/share_name などの共有を手動で実行する必要があります。
要約
この投稿では、SambaCry の脆弱性とその影響を軽減する方法について説明しました。あなたが担当するシステムを保護するためにこの情報を活用していただければ幸いです。 この記事に関してご質問やご意見がございましたら、下のコメント ボックスを使用してお知らせください。
###著者について:###
Gabriel Cánepa は、アルゼンチンのサンルイスにある Villa Mercedes の GNU/Linux システム管理者兼 Web 開発者です。彼は国際的な大手消費者製品会社で働いており、日常業務で FOSS ツールを使用して生産性を向上させることをとても楽しんでいます。