「Blender」の脆弱性の件

どうも、ぼくです。

今回はBlenderに21個の脆弱性がウンタラカンタラ、という件についてちょっと「知ったか」しようかな、と。

続き書いたのでそちらもどうぞ?
[EDIT] BlenderNationにこの脆弱性についての記事が投稿されています。
[EDIT] (1/16)T52924 にて該当箇所の修正を完了した(D2999,D3001,D3002)とのこと。既にデイリービルドで試すことはできる模様?
[EDIT]「注目の脆弱性:Blender で複数確認された未修正の脆弱性」 という日本語訳の記事が公開されています。

3Dモデリングソフト「Blender」に未修正の脆弱性が複数存在 ~Talosが指摘 という記事で最初に知ったんですけども、「Blenderで脆弱性とはまた久々だな」とかいう感じでして。

Talosの原文記事とかBlenderのバグトラッカー( T52654 ,T52924)のエントリとか確認してきました。なるほどわからん…じゃなかった、バッファオーバーフローによる脆弱性、っていうのが中心に複数個あるってことなんですね。で、結果として「悪意あるコードの実行を許してしまう」恐れがある、というTalosからの指摘、と。

で、そもそもバッファオーバーフローって何よ?ってことなんですけど、プログラムがメモリ上に確保した領域(バッファ)以外に書き込みを行うことを言います。この辺見てご理解いただけると思います(?)

なお、「悪意のあるコードを埋め込んだファイル」を仕込んでおいて、それをBlenderで読み込み実行させる、ということができるのが問題のようです。

例えばTALOS-2017-0406では(特定の条件の?)TIFファイルを読み込むことで、ヒープベースのバッファオーバーフローの原因となりうる、とあります。なお、TALOS-2017-0406からTALOS-2017-0457の21個がそんな感じです。

反対に言うと、バッファオーバーフローさせてメモリに書き込んだのがプログラム実行領域、またはスタック領域で、悪意のあるコードまたは悪意のあるコードへのジャンプ先アドレス、という仕込みをしないと単純に「Blender落ちた」ってなるくらい(まあそれもバグっちゃあバグ)なんじゃないかな、と。

Talosの原文記事 では考えられるシナリオとして「ソーシャルエンジニアリング」や「スピアフィッシング」、「GithubやGoogle Drive,Dropboxなどで仕込んだファイルをアップロード」という記述がありますね。まあ危険度ではメールに添付されたVBScriptをうっかりクリックしちゃったらウィルス感染しちゃった的なものと同じくらいでしょうか。ちょっと気を抜けない感じ。

なので、できる対策としては「出自の明らかなファイルのみ利用する」ってことになります。 .blendファイルはもちろんですが、及び画像・映像関連のBlenderで利用しそうなものも、という感じですかね。

  • TALOS-2017-0406 – 0414:  VSEでの .tiff/.png/.iris/.cin/.bmp/.avi 読み込み時
  • TALOS-2017-0415: ファイルブラウザでサムネール表示時
  • TALOS-2017-0425: .blend (の画像)
  • TALOS-2017-0433,0438,0451,0452,0453: 古いバージョンで保存された .blend ファイル
  • TALOS-2017-0434: .blend
  • TALOS-2017-0454,0455,0456,0457: .blend データ変換(操作)時

「外部データに頼らず全て一から丹精込めて作っています」という人はひとまず安心なのかな、といった感じ。

.blendファイルに対応しているレンダーファームとか3Dプリンタのオーダーとかその辺のところはどう対応するんでしょうかねえ?

で、「Blender declined(Blender側がやんわり断った)」という文章とともに brechtさんのコメントが画像で紹介されてるんですが。

Talos has responsibly disclosed these vulnerabilities to Blender in an attempt to ensure they are addressed. However, Blender has declined to address them stating that “fixing these issues one by one is also a waste of time.” As a result, there currently is no software update that addresses these vulnerabilities. Additionally, Blender developers believe that “opening a file with Blender should be considered like opening a file with the Python interpreter, you have [to trust] the source it is coming from.”

Talosとしては、もしかして、CVE開示->修正->ページ公開 みたいな流れを予想してたんでしょうか?こういう感じの。
それはそうなんですが、プライベートメールでやりとりした一部がBTのスレッドに出てた内容の限りだと「問題点指摘したよ?早く修正してね?」としか見えなくてちょっとツライ。

今回の公表を(一部しか説明されていないので)「Blenderをイメージダウンさせる攻撃」だとか受け取っちゃいそうな人もいるかもしれませんが、メモリぶっ壊すのはバグでしかないし、それがセキュリティの観点からは「悪用される恐れがあって修正しないとマズい」って言われているだけなんですよね。片や「そこまで重大とは考えてないし、修正に使えるリソースが無い」って言ってる。それだけのことですね。なお、こういった脆弱性は他ソフトで無いわけではなく(一例)。

Heartbleedの件で何も学んでいないのか!!」とか全く違う方面からブッコまれる方も出てきそうですが、そういう方は修正パッチを書いてBFに投げつけてあげるといいと思います(この機会にBlenderを使ってみましょう!)。また、ビットコインで寄付(最近対応する種類が増えました)も受け付けているので「セキュリティ担当を雇える」くらいの寄付でもしてあげればいいんじゃないかとも思います。

そして、Talosの記事に対する反応として Tonさんのコメント

Cisco wrote this yesterday:
http://blog.talosintelligence.com/2018/01/unpatched-blender-vulns.html

For the record – a day after Brecht’s reply I talked to a Cisco engineer who offered to help us with it.
Brecht is speaking here on his own terms, as one of the core team members but it’s not an official Blender Foundation statement that we don’t take these vulnerabilities seriously. There are just no simple or easy answers.

まあそうですわね。

今回brechtがコメントしていたPythonスクリプト実行の件については、以前のBlenderの脆弱性で、「Pythonスクリプトを直接実行できることで悪意のあるコードを実行できる」というものです。以前は起動時にPythonスクリプトの実行はデフォルト有効でした。これだと悪意のあるスクリプトも実行し放題なので、「信頼するコードのみ実行させる」ようにしましたとさ。今回の件とは関係がないのですが、引き合いに出したことで変な誤解する人もいそうですw

autoexcute

 

ではー。

 

広告

「Blender」の脆弱性の件」への1件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

w

%s と連携中