こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。
02/06/2019にcurlの脆弱性情報(Medium: CVE-2018-16890, High: CVE-2019-3822, Low: CVE-2019-3823)が公開されています。今回はこれらの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。
[関連リンク(最新5件)]
curlの複数の脆弱性情報(Low: CVE-2018-16839, CVE-2018-16840, CVE-2018-16842)
curlに複数の脆弱性(CVE-2018-1000300, CVE-2018-1000301)
curlの複数の脆弱性(CVE-2018-1000120, CVE-2018-1000121, CVE-2018-1000122) — | サイオスOSS | サイオステクノロジー
curlに複数の脆弱性(CVE-2017-8816, CVE-2017-8817, CVE-2017-8818) — | サイオスOSS | サイオステクノロジー
一次情報源
curl security problems (https://curl.haxx.se/docs/security.html)
NTLM type-2 out-of-bounds buffer read
Priority
- CVE-2018-16890
Medium
- SuSE
- CVSS v3 Base Score: 3.1
- Vector: AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
- Red Hat Customer Potal
- CVSS v3 Base Score: 7.1
- Vector: VSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H
- NVD
- SuSE
- CVE-2019-3822
High
- SuSE
- CVSS v3 Base Score: 7.5
- Vector: AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
- Red Hat Customer Potal
- CVSS v3 Base Score: 7.1
- Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H
- NVD
- SuSE
- CVE-2019-3823
Low
- SuSE
- CVSS v3 Base Score: 4.3
- Vector: AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
- Red Hat Customer Potal
- CVSS v3 Base Score: 4.3
- Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
- NVD
- SuSE
修正方法
各ディストリビューションの情報を確認してください。
CVE概要(詳細はCVEのサイトをご確認ください)
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16890
- CWE-125: 境界外読み取り
- ヒープバッファーの境界外読み取りの可能性
- 重要度 – Mdeium
- NTLM type-2メッセージを処理する関数(lib/vauth/ntlm.c:ntlm_decode_type2_target)が入力データを正しく検証していないため、整数オーバーフローの脆弱性が存在します。
このオーバーフローを用いて、悪意のあるNTLMサーバはlibcurlに誤ったlength + offsetのコンビネーションを許可させることで、バッファーの境界外読み取りを引き起こす可能性が有ります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3822
- CWE-121: スタックベースバッファーオーバーフロー
- スタックベースバッファーオーバーフローの可能性
- 重要度 – High
- 外部に出ていくNTLM type-3ヘッダーを作成する関数(lib/vauth/ntlm.c:Curl_auth_create_ntlm_type3_message())は、以前に受け取ったデータを元にリクエストHTTPヘッダーコンテンツを生成します。ローカルバッファーのオーバーフローを抑止するためのチェックの実装に誤りがあったため、完全には抑止できていませんでした。
この出力データは、悪意のあるHTTPサーバにより提供されたNTLMv2ヘッダーから、とても大きい”nt response”データが展開された場合、ローカルバッファーよりも大きな値になります。
そのような”大きな値”には1000バイト以上が必要になります。実際のペイロードデータはNTLMv2 type-2レスポンスヘッダーのバッファーからコピーされます。
今のところ、この脆弱性を用いたexploitは見つけられていません。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3823
- CWE-125: 境界外読み取り
- ヒープ境界外読み取りの可能性
- 重要度 – Low
- smtp_endofresp()に渡されるバッファーがNUL終端されていない場合で、パースされた値を終了させるキャラクターが含まれておらず、長さが5に設定されている場合、strtol()は割り当てられたバッファーを超えて読み込みに行きます。読み込んだコンテンツは呼び出し元に返されることはありません。
今のところ、この脆弱性を用いたexploitは見つけられていません。
主なディストリビューションの対応方法
詳細は、各ディストリビューションの提供元にご確認ください
- Debian
https://security-tracker.debian.org/tracker/CVE-2018-16890
- Red Hat Enterprise Linux/CentOS
https://access.redhat.com/security/cve/CVE-2018-16890
- Ubuntu
https://people.canonical.com/~ubuntu-security/cve/2018/CVE-2018-16890.html
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-3822.html
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-3823.html
- SUSE/openSUSE
https://www.suse.com/security/cve/CVE-2018-16890.html
対処方法
各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat SatelliteやKatello、Spacewalk等を使うと管理が便利でしょう。
[参考]
curl security problems (https://curl.haxx.se/docs/security.html)
NTLM type-2 out-of-bounds buffer read
セキュリティ系連載案内
- OSSセキュリティ技術の会による日経Linuxでの連載「IoT時代の最新SELinux入門」がITPro上で読めるようになりました。技術の会代表で第一人者である中村さん等による、最新のSELinuxの情報やコマンド類等も更新されているのでお薦めです。
- OSSセキュリティ技術の会によるThinkITでの連載「開発者のためのセキュリティ実践講座」がThinkIT上で開始しました。技術の会の中の人間で、最新の代表的なOSSセキュリティ技術を紹介していきます。
- OSSセキュリティ技術の会により、ThinkITでLinuxSecuritySummit 2018のレポートが紹介されています。
- OSSセキュリティ技術の会の面により、@ITで「OSS脆弱性ウォッチ」が連載されています。
- OSSセキュリティ技術の会の面により、@ITで「OpenSCAPで脆弱性対策はどう変わる?」が連載されています。
- OSSセキュリティ技術の会のメンバーにより、@ITで「Berkeley Packet Filter(BPF)入門」が連載されています。
セミナー情報1
2019/02/08 19:00-21:00に「DRBD開発の最新動向を聞く夜 (つまりDRBDメイン開発者Philippが来日するので迎撃したい。)」が開催されます。SIOSは会場の提供をさせて頂きます。
DRBD(Distributed Replicated Block Device)は、TCP/IPネットワークを通じて複数のサーバ間のHDD(パーティション)をミラーリング(複製)するソフトウェアです。簡単に言うと、ネットワーク越しにRAID1の環境を構築することができます。詳しくは、こちらやこちらの記事がわかりやすく参考になると思います。
DRBDメイン開発者の Philipp Reisner が来日するというので,日本のコミュニティに向けてもDRBDの最新情報を話してもらう場となります。お話は英語で行われます。当日は懇親会も予定しております(ビール、ピザなど)。
https://connpass.com/event/116940/がプログラム内容と申し込みの詳細になります。奮ってご参加下さい。
セミナー情報2
2019/02/12 17:00-19:30で、「NGINX MeetUp Tokyo #2」を行います。
日本のNGINXユーザー、また関心をお持ちの方に向けてNGINX, Inc. CTO / Igor Sysoevを 招きNGINX最新情報をお届けします。セッション終了後には懇親会を用意しておりますので、NGINXを利用する方同士で交流もいただけます。
https://nginx-mj.connpass.com/event/116837/がプログラム内容と申し込みの詳細になります。奮ってご参加下さい。
セミナー情報3
2019/02/21 18:30-22:00で、「OSSライセンスMeetup Vol.2 「実録:GPL違反とその対応を振り返る」」を行います。
いまだに国内の事例として紹介されるGPL違反に関して、状況や経緯、解決策、対応後の反響などについて振り返ります。 これまでは、客観的に違反とその対応に関して事例を説明することは多くありましたが、実際に起こった現場の声を反映した 事例の説明は数少なく、今だから言えることなど、知見を共有いたします。
https://sios.connpass.com/event/112157/がプログラム内容と申し込みの詳細になります。奮ってご参加下さい。