パスワードを忘れた? アカウント作成
13973321 story
バグ

LibreOffice 6.2.5で修正された任意コード実行可能な脆弱性、完全には修正されていない 35

ストーリー by headless
修正 部門より

LibreOfficeで任意コード実行が可能な脆弱性(CVE-2019-9848)が見つかり、バージョン6.2.5で修正されたのだが、完全には修正されていないようだ(The Registerの記事)。

LibreOfficeに標準でインストールされるオプションのコンポーネント「LibreLogo」では、WriterにLOGOのプログラムコードを書くことでタートルグラフィックスの描画ができる。コードはPythonのコードへ変換後に実行されるのだが、適切なチェックが行われていないため、Writer上に書いたPythonのコードは一部がそのまま実行される。これをイベントハンドラーによるマクロ実行と組み合わせ、LibreLogoの「run」マクロを指定すれば警告なしに任意コードが実行可能だ(JRE不要)。

これについてLibreOffice 6.2.5では、ドキュメントのイベントハンドラーからLibreLogを呼び出せないように修正したと説明されているが、Pythonコードのチェックについては触れられていない。実際にLibreLogoツールバーからプログラムを実行すれば、以前のバージョンと同様にPythonコードが実行される。また、脆弱性を発見したERNWが公開しているハイパーリンクのイベントハンドラーを利用するPoCはブロックされるものの、「文書を開いた時」などのイベントにマクロを割り当てれば実行可能だった。この脆弱性を使用するエクスプロイトはMetasploitにも追加され、バージョン6.2.5でも動作するようだと説明されている。そのため、この脆弱性を悪用する攻撃を回避するには、LibreLogoを削除するのが確実だ。

The Document FoundationはThe Registerに対し、バージョン6.2.5では部分的な修正にとどまることを認めている。その理由として別の方法でも脆弱性を呼び出せることを挙げ、近日リリース予定のバージョン6.3/6.2.6で修正するとも述べているが、Pythonコードがそのまま実行される問題を修正するつもりはないようだ。また、マクロのセキュリティ設定にかかわらず実行されることに関しては、実行されるのはマクロではなく、プログラムがPythonを呼び出すのだと主張している。ただし、安全性を高めるためLibreLogoを拡張機能として分離することも検討しているそうだ。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2019年08月03日 11時58分 (#3663120)

    https://insinuator.net/2019/07/libreoffice-a-python-interpreter-code-e... [insinuator.net]

    これが実行されるのが仕様ってあんまりでは。

    • by Anonymous Coward

      まるで電卓が悪者みたいじゃないかっ!

      • by Anonymous Coward on 2019年08月03日 13時20分 (#3663155)

        Windowsの三大被害者
        ・calc.exe
        ・notepad.exe
        ・cmd.exe

        自分が悪くなくてもexploitによってさらし者になる運命なのだよ

        親コメント
        • by Anonymous Coward

          それらに脆弱性緩和機能が追加される日も近いな。

          # Microsoftならやりかねん

          • by Anonymous Coward

            powershellにはリモートから(操作を指示されたユーザによって)任意の(スクリプトファイルに記載された)コードを実行する脆弱性に対する緩和機能があります。
            わざわざユーザが明示的にスクリプトの実行を可能に設定しないとスクリプトファイルを実行できないあれです。
            でも拡張子が.batなファイルを実行するだけで実行できるcmd.exeには同様の緩和策がいつまでたっても搭載されません。
            多分されないでしょう。

            • by Anonymous Coward

              execution policyの事であれば、powershell.exe実行時の引数に、
              「-ExecutionPolicy Unrestricted」を付与することによって、
              ps1ファイルに書かれた任意のコードを実行できてしまいますし、
              「-Command」引数を使用すれば、やはり任意のコードを実行できてしまいます。
              # ユーザーの誤操作防止用の機能ですし、緩和策にならないのでは?

              • by Anonymous Coward

                とりあえず、ファイルをダブルクリックで実行で動かなきゃ十分緩和策ですよ。
                PowerShellでやれることはEXEファイルと変わらないし。

              • by Anonymous Coward

                必要十分な緩和策でしょ。
                使うユーザーは意識するし、使わないユーザーのところで勝手に動かなければ、9割以上防げる対策になるんじゃない?

              • by Anonymous Coward

                大元のコメはexe実行の話であって、
                ps1ファイルをダブルクリックした時の話ではないのだけれども?

                #libreofficeのマクロから実行の話だし

      • by Anonymous Coward

        悪の枢軸ってことならemacsあたりにしておくべきだったね。

    • by Anonymous Coward

      Microsoft Officeの代替を目指す以上、同等かそれ以上のセキュリティーリスクも必要なのかな。

      • by Anonymous Coward

        Microsoft OfficeもVBAで同様に外部プログラムを実行できると思いますけれど。

        • by Anonymous Coward on 2019年08月03日 15時56分 (#3663210)

          セキュリティー設定変えないと警告がでますし、十年以上前からのXMLタイプの新形式だと、マクロが含まれるなら拡張子が.xlsmでないと動かない。

          親コメント
          • by Anonymous Coward on 2019年08月04日 22時35分 (#3663771)

            > セキュリティー設定変えないと警告がでますし

            LibreOfficeのマクロ実行はデフォルトだと署名付きしか実行できない設定だし、
            そこから設定でセキュリティレベルを下げる場合も、
            「(MS Officeと同様に)開いた際に実行するかしないか確認する」と、
            「確認なく実行する(非推奨であることを明記)」と2段階あるわけだけれども。

            そこらへん理解して発言してます?

            > 拡張子が.xlsmでないと動かない。

            Windowsのデフォルト設定なら拡張子なんて見えないし、攻撃する側からしたら
            拡張子を「.xls」にするか、例えばRLOを利用して「.xlsx」が拡張子のように見せかけるだけでしょ。

            親コメント
            • by Anonymous Coward

              その設定関係なく、イベントハンドラに割り当てると実行されてしまうってのが
              書いてあるわけだが、お前こそ理解できてんのか?

        • by Anonymous Coward

          だからそういう話じゃないの?

    • by Anonymous Coward

      次回で修正されるらしいじゃないですか
      ちゃんとしっかりと対策されて
      LibreOfficeからはcalc.exeが実行されないようになりますよ
      その次のリリースではnotepad.exeが実行されないようになりますよ
      更にその次のリリースでは(ry

  • by Anonymous Coward on 2019年08月03日 14時52分 (#3663189)

    セキュリティリスクと利便性はトレードオフだが、いったい誰がWriterの本文に書いたPythonを実行できることを望むというのか。
    セキュリティリスクを負ってまでこの機能を残す意味がわからん。

    • by Anonymous Coward

      一部プログラマが「俺の書いたコード」を残そうと頑張っちゃってるんじゃないの?

      • by Anonymous Coward

        一部プログラマが「俺の書いたコード」を残そうと頑張っちゃってるんじゃないの?

        まさに無能な働き者

        • by Anonymous Coward

          働き者ならば少なくとも「数」をこなしていると思うんだけど
          何故いつまでも無能でいられるんだろう?
          どんな馬鹿者でも、数さえこなせば多少は何かを学習するものじゃないのか。

          現実として、「無能な働き者」というカテゴリの人間は存在し得るんだろうか?

          • by hjmhjm (39921) on 2019年08月04日 16時59分 (#3663623)

            そのためには、自分が原因であると自覚しないといけない。
            本人が他人事にしてしまって原因を理解しないとか、まわりがうまくやってハデな問題にならなかったとか、そういう状況はよくありそうだが。

            親コメント
          • by Anonymous Coward

            まず自分が無能だと自覚しなければ学習もクソもなくね?
            そして他の業界は知らぬがSE業界では「とにかく数をこなさないと納期に間に合わない」なんて事態はいくらでも起きるので、どれだけ数をこなしても無能を自覚するどころか「数をこなせる自分は優秀」まであるわけで。
            不具合が出ても他人が手掛けた部分が悪い。自分のコードを勝手に書き換えたとか言い出す。

            というか、実際に居た。無能な働き者って本当に手に負えないぞ……。

          • by Anonymous Coward

            少なくとも、プログラマーというカテゴリーでは、大量のコードを書くが
            もっと楽な方法を調べたり考えたりとか、そもそもそのコードを書く必要があるのかなどを
            全く考えない人がいる。ソフトウェアを書いて飯を食ってる人の少なくとも半分くらいは
            こういう人たちじゃないかな。

            クリーンなコードを破壊すると言うことに関してはものすごく優秀なので、
            ライバル企業に押し込むことができたら、有能と言えるのかもしれない。

          • by Anonymous Coward

            有能なプログラマーなら毎日の生産量はむしろマイナスになったりするもので、数ばかりこなすというのはまさに無能の証

        • by Anonymous Coward

          >まさに無能な働き者
          基本優秀で仕事もやるんだけど(だから抜けられるのも困るけど)、ナイーブかつ批判されるのが大嫌いでちょっと扱いづらいタイプとかかも

      • by Anonymous Coward

        Jupyter Notebookの代わりに使おうという人がいるかもしれない(ないない

    • by Anonymous Coward

      率直に言ってMicrosoft Officeの互換ソフトであることが存在意義なのに
      こんな誰得な独自拡張を積極的に仕込むもんなんですね

      • by Anonymous Coward

        模倣か互換か改善か独自か、ポリシーが一貫しないのがこのプロジェクトの失敗要因だと思う。
        完全な模倣に集中していたら、もっとずっと有用なソフトになっていただろうなあ。
        独自に集中していたら大化けするか、今よりもっと存在感が無くなっていたかだが、どうせ今も結構ひどい状況だし。

      • by Anonymous Coward

        それはMS Officeを買えない人の考え方だよ

        もともと、LibreOfficeの系譜は1985年に遡るもので
        MS Officeが、抱き合わせ販売で市場を支配する前からあるものだよ。

        だから、MS Officeがいらないけど
        オフィススイート自体は使う人にとって有用なんだよ。

        シェアの高いMS Officeとの互換性が必要かどうかは
        場合によるけど、Lotus 1-2-3と互換性があれば充分という人もいるでしょ?

        まぁ、日本語対応していなかったStar Division StarOfficeを
        日本で知っていた人は、非常に限られるわけだけどさ…

        • by Anonymous Coward

          1983 Microsoft Multi-Tool Word (Xenix, DOS)
          1985 Microsoft Word for Mac
          1985 StarWriter (CP/M)
          ...
          1989 Microsoft Word for Windows
          1989 Microsoft Office for Mac
          1990 Microsoft Office for Windows
          1994 StarOffice 2.0 (StarWriter, StarCalc and StarBase for Windows 3.1)

          Office Stuiteとしても後発やな

  • by Anonymous Coward on 2019年08月03日 13時38分 (#3663163)

    初期に比べるとだいぶモッサリになってきたし

    • by Anonymous Coward

      初期の方がモッサリしていたような。

    • by Anonymous Coward

      6.0.xの時に以前と比べたら高速化しましたよ
      まだSSDでも起動速度が気になるけど

typodupeerror

開いた括弧は必ず閉じる -- あるプログラマー

読み込み中...