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

米マイクロソフトが「HTMLアプリケーション」の特許を取得する 71

ストーリー by yoosee
利便性と危険性の天秤がゆれる 部門より

Anonymous Component曰く、" CNETの記事によると、 米マイクロソフトが、HTMLでWindowsアプリケーションを記述する ことについての特許(登録番号6662341)を取得したようです。

この特許は、ブラウザではない独自のウィンドウで動作する、 標準的なHTMLファイルの記述方法についてのものだそうですが、現存の ActiveScript 等に適用されるブラウザの内蔵セキュリティ機能を迂回することが可能になるので、具体的には、ユーザーのローカルコンピュータのデータの読み書きや、 フレームを利用した異なるドメインでのスクリプト実行などが可能になる ようです。
アプリケーションのファイル拡張子が「.hta」、 プラットフォームに依存せず、 LinuxやUnixなどを含む全てのオペレーティングシステム(OS) に適用可能だそうですが、 こういうのって、プログラムの安全性とか信頼性は、 誰が決めるんだろう。悪用される危険性ってないんだろうか?"

内容を流し読みした時には「新しい脆弱性?」と思ってしまった。流石にそのレベルは MS も把握済みだろうが、ともあれ実装次第か。
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 『Method and apparatus for writing a windows application in HTML』 (米特許6,662,341号 [uspto.gov]) ですね。
    • by Anonymous Coward on 2003年12月11日 12時50分 (#452447)
      タレコミ文の
          >> HTMLでWindowsアプリケーションを記述することについての特許
      と英語の
          >> Method and apparatus for writing a windows application in HTML
      は微妙に違う気が。
      日本語で書くと Windows プラットホーム限定のように見えるけど、
      英語の方では windows と小文字で始まってるので、X, Mac とかの
      一般的な windowing system も含まれそう。
      わざと曖昧に書いてあるのかな?
      親コメント
      • by tmiura (6268) on 2003年12月11日 13時18分 (#452472) 日記

        タイトルしか見てなくて本文を読んでませんが、タイトルだけ素直に読むと、「ウィンドウアプリケーション」、つまりコンソールアプリケーションでない、窓が出る奴一般、じゃないかと思います。

        タレコミの段階で予断が入って意味を限定しちゃってるんじゃないか、みたいな。

        親コメント
        • by tmiura (6268) on 2003年12月11日 13時41分 (#452498) 日記

          タイトルだけでどうこう言うのは浅薄なわけで 本文を見てるんですが、よく分からなくなってきました。 特許をの読み方の心得がないとつらい。

          ClaimsにはMicrosoft Windowsにプラットフォームを限定する記載はないですよね。

          DescriptionのFIELD OF THE INVENTIONには

          This invention relates generally to writing computer applications, and more particularly to writing a Windows application using HTML
          とありますが、これもプラットフォームを限定しているわけじゃないですよね。

          DETAILED DESCRIPTION OF THE PREFERED EMBODIMENTに Microsoft Windowsが出てきますが、 これは実施例であって請求項を構成するものではないですよね。

          いかん、教えて君と化している。 勉強し直してきます……

          親コメント
  • HTAって (スコア:3, 参考になる)

    by marinkarin (10618) on 2003年12月11日 12時48分 (#452446)
    要するに.exeですよね。扱いは。脆弱性も何もないと思うけど。
    むかし,AcriveScriptRubyを使って,チャットアプリ(http経由でサーバとの間でデータをやりとりするよーなやつ)をHTAで
    書いたことがありますが,JavaScript+DHTMLに感覚は近いです。ただHTAは.exeと同じで,なんでもできる(スクリプトの
    できることは)ところが違う。
    でもどこかのサイトに置いてあっても.exeと同じ扱いだから「ダウンロードしますか」って聞かれるわけで,いきなり実行とか,
    そういうことはない。つまりネットワーク越しの実行機能はないので,特に心配することは無いような。
    「出力にHTMLレンダリングを使う」というのが焦点ってことです。
    • by Y.. (7829) on 2003年12月11日 15時53分 (#452585) 日記
      でも特許とれるほどの新規性があるかというとちょっと微妙ですねぇ
      出力がHTMLの実行ファイルってだけじゃないですか?
      となると、サーバーサイドスクリプトの類に制限を付けたってことになるのかな
      これって新規性…あるのかなぁ
      なんか実装例が腐るほどありそう
      親コメント
      • by az77 (11230) on 2003年12月11日 20時48分 (#452776)
        >出力がHTMLの実行ファイルってだけじゃないですか?

        実行ファイルと違うのはスクリプトなんでコンパイル不要って事です。
        特許の是非については分りませんが、それなりに使い道はありますけどね。
        私はWindows環境での作業用ツールとして時折使います。

        ・コンパイルは不要だからその場でデバッグ出来る
        ・WSH(スクリプト)をそのまま使うよりもインターフェースが自由
        (HTMLのインターフェースが使えるから)
        ・WSHと組み合わせて使う分にはIE(5ぐらい?)があれば、ランタイム不要
          (HTAからランタイムが必要なexe呼び出せば当然必要ですけど)
            なんで、Windowsであれば殆ど実行環境を選ばない
        ・サーバ不要
        ・ローカルファイルにアクセス可能

        まあ要するに、ローカルスクリプトの入出力画面にIE+HTMLが使えるって
        だけの事ですね。他の実装例は・・・私は知りません。

        HTML使えると、ボタンやテキストボックス使ったパラメータ入力画面を作れるんで
        他人様も使うような作業ツールに使う結構良いんですけどね。
        親コメント
  • 策略 (スコア:2, 参考になる)

    by Anonymous Coward on 2003年12月11日 11時49分 (#452414)
    HTA自体は前からありますが(HTAs [microsoft.com])、特許を取得したことには策略が垣間見えます。
    • Eolasの特許対策。毒をもって毒を制す式の考え方。
    • XAMLのための布石。HTAのインフラをベースにXAMLを持ち込むことを考えているのではないかと推測します。
    • セキュリティすれすれの技術を使うことで差別化。確かに現状のHTAはあぶなっかしいですが、XAMLベースだと.NET Framework上のセキュリティ機構を用いることが出来るので、安全を確保しつつもかなりすれすれのところまでアプリケーションのドメインを広げることが出来ます。これが出来ればかなりの差別化です(たぶんJava Web Startよりさらにアプリケーションっぽいものを考えていると思う)。
    問題は(そしてたぶんMicrosoftの狙いは)、XAMLに追従もしくは対抗する側(MonoとかJavaとかFlash陣営)に対して、かなりシビアなセキュリティポリシーの微調整を迫ることではないでしょうか。失敗すると脆弱なプラットフォームだという烙印を押される羽目になります。
    • by Pen2 (18210) on 2003年12月11日 13時10分 (#452464)
      ビジネス帳票を非直結(メールなど)で
      運用するには HTA みたいなものが必要ですね
      親コメント
    • by Anonymous Coward
      その見解にはおおむね賛成です。

      が、.NET Frameworkの安全性は、セキュリティ機構の問題なんでしょうか? .NET Frameworkも、1.0 SP2ではネットワーク越しの実行はデフォルトで行われないようにフィルタがかけられましたが、これはいくつかのクラスライブラリのインターフェース自体が脆弱であったためであると思います。実際、.NET Framework 1.1になって、いくつかのクラスにはセキュリティ上の修正が加えられたわけで。クラスライブラリが爆発的に増えるWinFXにおいて、セキュリティホールはいくつも存在しうると思います。
      JavaWebStartは別にHTMLアプリケーショ
      • by Anonymous Coward

        ...実際、.NET Framework 1.1になって、いくつかのクラスにはセキュリティ上の修正が加えられたわけで。クラスライブラリが爆発的に増えるWinFXにおいて、セキュリティホールはいくつも存在しうると思います。

        そう思いますよ。だから常にセキュリティが保てるすれすれまでをセキュリティの境界にしていくアプローチなんじゃないでしょうか(実際に保てるかどうかは別ですが)。

        JavaWebStartは別にHTMLアプリケーションではないから、比較の対象にはならない気もします(JavaWebStartはむしろClickOnceではないかと)。

  • by Led (7726) on 2003年12月11日 11時54分 (#452418) 日記
    プログラミング言語そのものでは特許にならないはずですので、
    (impressに記事がありました [impress.co.jp])
    今度の特許はつまり、「HTMLアプリケーション」を実行する機構で
    特許を取ってるのではないでしょうか。
  • by Anonymous Coward on 2003年12月11日 11時53分 (#452416)
    EXEファイルも重大な脆弱性だと思うのだが。

    MFC等のウィジェットセットで見た目を記述し、C++等でロジックを記述するEXEと、
    HTMLで見た目を記述し、Active Script(JScript, VBScript, Ruby, Python, ...)でロジックを記述するHTAにどれほどの差がある?
    • by Anonymous Coward
      1.起動方法
      EXE:基本的にダウンロード→ユーザによる実行・起動。
         ユーザは実行の可否をコントロールできる。
      HTA:URLにアクセスするとそのまま起動。
         確認のダイアログぐらいは出るかもしれんが、でないかもしれん。

      2.不正なロジックに対する対応
      EXE:特に無し。.NETで作成されたEXEなら制限か
      • by Ryo.F (3896) on 2003年12月11日 12時23分 (#452434) 日記
        > HTA:URLにアクセスするとそのまま起動。
        >    確認のダイアログぐらいは出るかもしれんが、でないかもしれん。

        うちのIEでは、開く(実行する)か、ダウンロードするか、キャンセルするか、ってダイアログが出ますが。
        親コメント
      • by miri (12057) on 2003年12月14日 18時39分 (#454610) 日記
        >1.起動方法
        >EXE:基本的にダウンロード→ユーザによる実行・起動。
        >   ユーザは実行の可否をコントロールできる。

        この辺には.Net Frameworkとの兼ね合いで最近変化がありました。

        1. ブラウザで.exeへのリンクをクリック

        2. 拡張子.exeを判別

        3. ノータッチデプロイメント対応か判別(対応ならそのまま実行)

        4. ユーザーに実行するか判断をゆだねる。

        .Net Frameworkのランタイムをインストールすると3.の判断が新たに加わります。
        たとえばこんなリンク [atmarkit.co.jp]とか。

        @ITの記事 [atmarkit.co.jp]などが参考になるかと思います。
        親コメント
  • 何を考えているんだろうか?
    セキュリティを迂回するってことは、例えば
    ページを見ただけでHDをフォーマットとか、
    今まで出来なかった(悪意のある)行為が
    し放題ということではないのだろうか?
    というか、HTMLを利用する事に
    何の利点があるのかわからない。

    というのはさて置き…

    >OSは、HTMLアプリケーションのファイル拡張子「.hta」によって、ファイルがアプリケーションとして実行可能なことを識別することになる。
    この発想が困るんだよなぁ。MIMEタイプ見てくれないと、
    ちゃんとtext/plainにしてるのに.txtなファイル中に
    HTMLが記述されてればそれだけでHTMLとして表示しちゃうし。
    --
    っと・・・。
    • >この発想が困るんだよなぁ。MIMEタイプ見てくれないと、
      わお、世の中のどれだけのサイトが不等号記号のページになっちゃうんだろう♪
    • ネットワークでいきなり実行されることはない。
    • だからウェブ用のものじゃないんだってば。ようするにネイティブアプリと同じものをHTML+JScriptで作れるというやつなの。
      別に最近登場したものでもないし。

      表層的な情報だけで、しかも誤解したうえで批判するのはみっともないよホントに。
      • ネイティブアプリとして「HDをフォーマットされる」危険性は残るんじゃないかなぁ。
        そういう特権命令が使えるかどうかだけど。

        >表層的な情報だけで、しかも誤解したうえで批判するのはみっともないよホントに。
        てなわけで大丈夫と言い切るのも非常に危険と思うんですが?
        • >> だからウェブ用のものじゃないんだってば。ようするにネイティブアプリと同じものをHTML+JScriptで作れるというやつなの。
          > ネイティブアプリとして「HDをフォーマットされる」危険性は残るんじゃないかなぁ。
          > そういう特権命令が使えるかどうかだけど。

          冗談でなければあなたは底抜けの■■でしょう

          #include <stdlib.h>
          int main()
          {
               
          • >Cでこういうネイティブアプリが作れますが、これをCの脆弱性といいますか?

            ・・・誰が脆弱性だと言いました?危険性とはいいましたが。
            「底抜けの■■」発言といい別のレスといい、煽りととられてもおかしくない
            • >>Cでこういうネイティブアプリが作れますが、これをCの脆弱性といいますか?
              >・・・誰が脆弱性だと言いました?危険性とはいいましたが。

              話の大本はあなたのコメントの表題にも付いている「それって脆弱性そのものじゃ」なのですが、まあいいでしょう。
              別に「危険性」に置換してもいいですよ。
        • >ネイティブアプリとして「HDをフォーマットされる」危険性は残るんじゃないかなぁ。
          >そういう特権命令が使えるかどうかだけど。

          だから、そんなもんはexeでもbatでもvbsでもjsでもwshでも同じだろ。
          パーミッションは全然別のレイヤの話。
          (まあ、ユーザのパーミッションに従うんだけど。)

          # アホですか?
          • 建設的な方向にも話を向けてみましょうか。

            このコメント [srad.jp]にあるように、EXEと違って「なんでも実行可能」にしない方法があるのならば、IEの「セキュリティレベル」でカスタマイズ可能とするべきでしょう。もちろんデフォルト設定はより安全な方にふっておくべき。
            コマンド実行自体は別のレイヤとはいえ、コマンドはコマンド実行関数経由でないと不可ということにして、.htaをレンダリングする時点でレベルチェックを行
  • by bero (5057) on 2003年12月12日 8時53分 (#452986) 日記
    「HTMLアプリケーション」(HTA)はアバウトに言うと
    ブラウザwidgetでGUIを、JavaScript(VBScript)でロジックを記述するローカルアプリケーションである。
    Tcl/tkあるいはPerl/Qtなんかのアプリと本質的には変わらないと思うが、
    ブラウザと同じ言語やノウハウが使えるのがミソなのだろう。
    exeを実行するのと同じで脆弱性云々は的外れだと思う。

    同様の技術としては
    IBMのSash [google.com]やMozillaのXUL [google.com]アプリ
    なんかが相当すると思う。

    今のところXULはスタンドアロンアプリよりもMozillaブラウザの拡張プラグインとして作られたものが多く、
    スタンドアロンのkomodo [activestate.com]やthunderburdではランタイムライブラリ(と起動ランチャ)を自前で抱えているが、
    将来的にランタイムがXRE(XUL Runtime Environment)として独立すると、XULだけでスタンドアロンアプリを記述できるようになる(予定、らしい)。

    特許がどこまでカバーしているか知らないが、これらが使えなくなるといたいかも。
    • >exeを実行するのと同じで脆弱性云々は的外れだと思う。

      なぜですか? たとえば脆弱性とは何でしょうか。
  • by Anonymous Coward on 2003年12月11日 11時28分 (#452403)
    □ htaファイルを表示しない


    といったチェックボックスが増えて一件落着するものと予想。
  • by Anonymous Coward on 2003年12月11日 11時44分 (#452412)
    セキュリティの制約がないとか、少し違うように見えるけど特許になるほどの新規制はないと思うのですが。
    • CMの後に驚くべき新規性がっ!

      とまでは言わなくても、HTMLから.htaの世界に限定するならば(してくれるんだろうか?それ以前に区分が違っているよなぁ)どんな技術を提案してくれても構わないんだけどなぁ。

      で、特許じゃないとだめなんですか?製品値上げの方がよくありませんか??

      # とか唾棄してみる
  • by Anonymous Coward on 2003年12月11日 11時50分 (#452415)
    .htaccessが読み出せちゃったりしちゃうサーバで誤動作をする、とか?
    • by Anonymous Coward
      だから違うって。サーバで動かすもんじゃないんだから。
  • by Anonymous Coward on 2003年12月11日 23時22分 (#452844)
    HTAが何なのかを知らずにコメントするのはやめて欲しい。少しは調べてからタレコんでくれ。ていうかこんな内容のものを採用しないで欲しいというか(トピック自体は問題ないというのに)。

    おかげでコメントの多くは、さらに出てきた勘違い君の誤りを正すものになってしまっている。
    • んだな。
      これのひとつ上のやつなんかひどすぎる。
      なのに、いまだにマイナス付かず・・・
    • ホント、勘違いしてる人が多いし、コメントも意外と少ないですよね。

      タレコミの時点で、
      似た様な手法でGUIツールを作成できるXULと比較するとか、
      複数のOSで(殆ど?)同じGUIツールを作成できるGTKやTk(他にもあるかも知れないが知らないので御容赦)の話を出すなりすれば判りやすかったかもしれないのにねぇ。

      #まあ、俺も詳しかないのでAC
typodupeerror

日本発のオープンソースソフトウェアは42件 -- ある官僚

読み込み中...