パスワードを忘れた? アカウント作成
15558270 story
ソフトウェア

WebAssembly製のx86仮想マシンが登場、Webブラウザ上でLinuxが動作 26

ストーリー by nagazou
仮想マシン 部門より
Leaning Technologiesは2月1日、Webブラウザーでx86仮想マシンを実行可能な「WebVM」を公開した。WebVMは主要なWebブラウザであれば、URLにアクセスするだけでWebブラウザ上にx86仮想マシンを動かせるようになる。WebVMではx86仮想マシンの上でLinux OSのDebianがバイナリが変更なしにそのまま動作しており、さまざまなコマンドも実行可能だとしている(Publickey窓の杜)。

WebVMはLeaning Technologiesの製品群のデモとして作成されたものだという。WebVMでは、同社の「CheerpX」と呼ばれるWebAssembly製のx86マシンの仮想化技術をコアとして使用しており、CheerpXはx86のバイナリコードをWebAssemblyに変換して実行するJIT(Just In Compiler)機能を備えているという。
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2022年02月04日 13時10分 (#4195044)

    https://bellard.org/jslinux/index.html [bellard.org]
    こっちもリリース当初はJavaScriptだったけど今のはWASMになってるね。
    VGAもサポートしてるのでXも動くしWindowsも動く。
    最近はJavaScript/WASMのワークエリアを1ページあたりでメモリ4GB使えるようなので、Win2Kとかだと余るぐらいのメモリ持たせられるな。

    PCエミュレータとしては、こっちもあるが、こちらもいつのまにかWASMになってるな。
    http://copy.sh/v86/ [copy.sh]

    • by Anonymous Coward

      そうそう、確かスラドでも過去にタレコまれていたそれが真っ先に思いついて、WASMになったのが新しいのか? と思ったらそれも達成済みだったのか。ではWebVMは何が新しいの?

    • by Anonymous Coward

      wasmはもとからメモリ4GBまで使えるよ。Memory64っていうのが今作業中で4GB超えはまだ無理。

  • node.js上で走らせることができるなら、学習環境として実は良いんじゃ内科とおもったり(GUIは最初から相手にしてない)
    --
    -- やさいはけんこうにいちば〜ん!
    • by Anonymous Coward

      node.jsもいらんよ。
      nginxでもいいし、セキュリティの制限を個別に設定すれば適当にファイル置いてロードするためのhtmlファイルかけばサーバーとかも無しに動く。

  • by Anonymous Coward on 2022年02月04日 13時10分 (#4195043)

    WebBoyがWebブラウザ上で動作するWebブラウザとして復活するのか

  • by Anonymous Coward on 2022年02月04日 13時47分 (#4195059)

    凄いのはわかるんだけど、実際に何かに利用する道が思いつかない
    簡単な検証用環境…にしてもそれならコンテナでいいし

    • by Anonymous Coward on 2022年02月04日 14時33分 (#4195093)

      このWebVMは、まだ実装がすすんでないので、GUIが動かんけどv86とか別の仮想マシンだとWindowsも動くのでGUI含めたデモ環境が作れる。
      OSのライセンス管理の手段とかは考える必要があるが、ソフトの体験版をクライアントにインストールさせずに提供できるから、体験版をクラックされるとか、クライアント環境を汚すとかも考えなくていい。
      v86だとandroid x86も動いてるんで、Windowsに限らずAndroidのゲームもインスタント実行できてるよ。

      v86のほうは起動時にストレージイメージをダウンロードするつくりなので、状態保存が出来んのだけど。

      親コメント
    • by Anonymous Coward

      どこまでできるかによりますね
      起動自体はIndexedDBに永続保存できるってことだけど
      ネットワークブートや
      ローカルやネットワーク越しのストレージをマウントできるのか
      によって脅威度が変わってくるかと

      出来なければ対処のしようはありそうだけど
      これができると
      テキストコードだけでワーム入りOSを読ませて起動させられる上
      仕組み的にホストでのウイルススキャンをすり抜けそう

      外部と繋げないスタンドアローンだとしても
      そのブラウザとはつながるだろうから
      色んな情報をIndexedDBに溜め込ませて悪用するかんじかな

      インスタントOSとしての価値よりも
      危険度のほうが大きい技術な気がしますね
      少なくともIndexedDB内部へのスキャンは必須になります

      • by Anonymous Coward

        WASMはJavaScriptより制限が厳しいから、今のJavaScript以上の脅威にはならないよ。
        ブラウザのバグで何か抜け道が出来る可能性はあるけど、それはJavaScriptも同じ。
        どんだけ頑張ってもウェブページ内の世界だから、ローカルのファイルアクセスは JavaScript同様ユーザー操作が必須。ネットワークも同様。
        ユーザー許可のもとに WebUSBでUSBネットワークアダプタつければ、生のTCP/IPも使えるかもしれないが、そのあたりも含めて他のJavaScript/WASMで作ってる仮想PC実装と比べて何も変わらない。

        • by Anonymous Coward

          WASMはJavaScriptより制限が厳しいから、今のJavaScript以上の脅威にはならないよ。

          んーてことはHTMLやスクリプトソース状は問題なくとも
          WebVM内でCoinhive的なものも動かしちゃえる
          更に画像や動画に偽装したVMイメージにして読み込んどくかんじかな
          こんなんやられたら発見が難しくなりそう

          # まぁサードパーティドメイン弾くアドオン入れてりゃほぼ大丈夫だろうけど

          • by Anonymous Coward

            ゲーム提供してますっていう裏で Coinhiveみたいなことするのは可能ですね。
            WebVMとか関係なく、WASMだとバイナリコードなので解析は手間でしょう。
            そのあたりは難読化したJavaScriptも、そのへんは変わらないと思うけど。

            > 更に画像や動画に偽装したVMイメージにして読み込んどくかんじかな

            これは無理かな。
            WASMとしてリクエストして受け取らないと実行できない。

            このあたりもJavaScriptと同じですが広告の中に埋込んで、何かやらせえるってのは出来そうですね。
            WebVMになったからといって、出来ることが増えるわけでも、何かが簡単になるわけでもない。どちらかというとWebVMでやろうとしたら手間が増える。

    • by Anonymous Coward

      ブラウザ上でいい感じにDOSBox動かすことができるようになるじゃないですか。
       
      つまり古いPCゲームが永遠になるということです。

      • by Anonymous Coward

        ブラウザ上でいい感じにDOSBox動かすことができるようになるじゃないですか。

        とおもったらDDoSBoxとして活用されていたりして

      • by Anonymous Coward

        ん?archives.orgで何年も前からDOSBoxで動く
        プレイアブルなDOSゲームアーカイブ公開してるんだが。
        https://archive.org/details/softwarelibrary_msdos_games [archive.org]

        こいつはDOSBoxをトランスレータでJavaScript化した奴で動いてるらしいけど、
        「いい感じ」じゃなかったってことか?

        • by Anonymous Coward

          これとか見るにかなりいい感じで動いてますね(技術的には...
          https://archive.org/details/msdos_Prince_of_Persia_1990 [archive.org]
           
          # 剣ってどうやって出すんだっけ...?

        • by Anonymous Coward

          機械語に依存しないという点ではより互換性の維持が容易になるかもしれない。
          インタプリタとコンパイラの維持に苦労するだけか…?

    • by Anonymous Coward

      AS400「いつまでエミュ利用されるの。。コロシテ・・・」

    • by Anonymous Coward

      「何が」できるかは大した問題じゃない。
      「できる」ことが大事なんだ。

    • by Anonymous Coward

      PC-ATではなくPC98互換なら需要ある気がします。

    • by Anonymous Coward

      仮想環境上のブラウザでさらに仮想環境を起動して…
      何回入れ子にしたらクラッシュするかを見るベンチマークに使えるかな?

  • by Anonymous Coward on 2022年02月04日 18時24分 (#4195276)

    古いWindows+古いIEでしか動かないコンテンツように、
    Webブラウザでx86仮想マシン・WindowsXP・IE・ActiveXを動かせば、
    最新のOS/ブラウザでレガシーシステムが利用できるのでは?

    • by Anonymous Coward

      古いWindows+古いIEでしか動かないコンテンツように、
      Webブラウザでx86仮想マシン・WindowsXP・IE・ActiveXを動かせば、
      最新のOS/ブラウザでレガシーシステムが利用できるのでは?

      官公庁&自治体「それだ!」

      # アクセスするとギガ減る&回線パンク

    • by Anonymous Coward

      この場合 Windows のライセンス料はどう払うんだろう...

    • by Anonymous Coward

      マジレスするとこのVMからのリクエストだろうが、ブラウザを経由する以上CORSの制限を受けるのでアクセスできない。

      と思ったが、その該当のサイト開いた状態でVMをサイドロードするようにすればいける・・のかもしれない。

      • by Anonymous Coward

        配置したサーバーでproxyになるAPIでも作っとけば大丈夫。
        古のi-modeアプリも、ダウンロードしたページ以外には通信できなかった(出来るのはtrustedアプリだけ)が、i-modeアプリで作ったブラウザやメーラアプリは、そういうプロクシ機能をWEBページ側にCGIで置いてた。

typodupeerror

犯人はmoriwaka -- Anonymous Coward

読み込み中...