パスワードを忘れた? アカウント作成
12855325 story
ハードウェアハック

3DSソフト「プチコン3号 SmileBASIC」で任意のコードを実行できる問題が確認される 24

ストーリー by hylom
BASICでハック 部門より

ニンテンドー3DS上でBASICプログラムを実行できるソフトウェア「プチコン3号 SMILE BASIC」に任意のコードを実行できる脆弱性が発見され、一時的に配信が停止される事態となった。

「大人のためのゲーム講座」ブログによると、とあるバイナリデータを含むBASICプログラムをSMILE BASIC上に打ち込んで実行した上で特定のファイルをロードすることで、任意のプログラムを実行できるという。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • BASICインタプリタにマシン語モニタ機能がついてるのなんて普通だと思ったが。

    • Re:それの何が問題? (スコア:2, すばらしい洞察)

      by Anonymous Coward on 2016年07月25日 17時18分 (#3052723)

      「任意のコード(プログラム)」って大雑把に定義すると自分で書いたコードも任意のコードになるから話が変だなと思って公式サイト見に行ったら

      >海外で「プチコン3号 SmileBASIC」を利用し Nintendo 3DS システムに不正なアクセスを行うプログラムが確認された

      …確かにそれは問題だな

      親コメント
    • by Anonymous Coward

      ユーザー空間からカーネル空間にアクセスできたらそれは脆弱性だろう。

      • by Anonymous Coward

        BASICの常として、内部解析本を片手にシステム書き換えや
        未発表ルーチンを使うのは、常識です。どや。

        • by Anonymous Coward

          VMなんだから、床が勝手に抜けたらダメ。

        • by Anonymous Coward

          PC-8001せっかくモニタに入れるのに、BASICがROMにあるもんだから書き換えられないので、
          空きメモリ空間にRAMを入れて、そこにコードをコピーして、
          ワークエリアを書き換えて、そこに飛ぶようにして、、、
          何だっけ?なんか色々とやった気が。

          • by marute (13883) on 2016年07月25日 21時56分 (#3052863) 日記

            MZシリーズ「クリーン設計」だから、BASICがROMにないもんで書き換え仕放題で
            PEEK・POKEの値ちょっと間違えて、コード書くと
            BASICのシステムエリアが書き換えられて、非ぬ所に飛んでって、、、
            何んだよまたBASICのロードから?なんか色々と懐かしいな。

            親コメント
            • by Anonymous Coward

              BASICで書かれたマシン語モニタで機械語のモニタのダンプリストを入力して、
              TL/1とアセンブラと逆アセンブラとLISPのダンプリストを入力して、、、

            • by Anonymous Coward

              MZ80BでラリーXもどきのゲームがあって画面データをマシン後領域に持っていたんで画面データを読みだすアドレス変更して
              システム領域なんかを表示、そこで車を走らせてシステムが落ちるまでどれくらい走れるかとかやったな。

    • by Anonymous Coward

      おおっと、PC-6001の悪口はそこまでだっっっ!!!

      • by Anonymous Coward

        pc-6001に限らず、pc-8801、やPC-9801、sharpのE-500なんかのBASICにもマシン後モニタはあったと思うが。
        当時のCPUじゃBASICオンリーだと重いから。

        • いや、話が逆ですよ。PC-6001のBASICインタプリタにはマシン語モニタ機能が無いんです。だから、

          BASICインタプリタにマシン語モニタ機能がついてるのなんて普通だと思ったが。

          という大元のコメに対して、

          おおっと、PC-6001の悪口はそこまでだっっっ!!!

          って流れになってるんです。

          #PC-6001にもサードパーティー性のマシン語モニタはありましたし、
          #素のBASICでもPEEK/POKE/USRは使えるのでマシン語なユーザープログラムの実行も可能です。

          親コメント
          • by Anonymous Coward

            ポケコンだと、PB100系はその辺の命令がなかったので、
            マシン語が使えるPC12系がうらやましかったです。

            #なんか謎の未定義ステートメントがあった気がしたけど

          • by Anonymous Coward

            いやPC-6001にもマシン後モニタあります。mkⅡからですが。
            http://p6ers.net/hashi/monitor.html [p6ers.net]

  • リンク先のブログ見たらダウングレードが必要とかあるけど、PCのアプリじゃあるまいしすでに公開停止中の配信専用アプリをどうやってダウングレードさせるのやら……。

    • by Anonymous Coward on 2016年07月25日 17時07分 (#3052718)

      アップデートパッチは追加コンテンツ扱いなので、本体機能から簡単に削除できます。

      親コメント
      • by Anonymous Coward

        「できる」けど「しない」人たちにどうやって「させる」か、という問題です。

        • by Anonymous Coward

          ほっておけばいいのでは?

        • by Anonymous Coward

          マジコン的な悪用に関しては、セキュリティパッチが出来てからいつもの3DS本体の「アップデートしないとサービスが使えない」制限機能を使えばいいんじゃね?

  • by Anonymous Coward on 2016年07月25日 17時27分 (#3052729)

    DLソフトだから、DLした固体でしか動かないから色々なツール(w)として
    使われる可能性は局在化される?
    かな

  • by Anonymous Coward on 2016年07月25日 19時58分 (#3052801)

    >特定のファイルをロードすることで、

    あのツールを想起させられてしょうがない。

    # あれがどういう仕組みなのかと紐解いていったのが、色んな理解への入り口だったなぁ

    • by Anonymous Coward

      自動実行ですか。あれはスタックにloadさせて帰り値で実行させるんでしたなぁ
      まったく、やってることはあの時代とぜんぜん変わらない訳で。
      # 変わったのは密度/速度くらい

  • by Anonymous Coward on 2016年07月26日 7時55分 (#3052970)

    何秒でエンディング表示できるかな?

    • by Anonymous Coward

      ついにニンテンドーeショップがクリアされる日が来るのか

typodupeerror

弘法筆を選ばず、アレゲはキーボードを選ぶ -- アレゲ研究家

読み込み中...