3DSソフト「プチコン3号 SmileBASIC」で任意のコードを実行できる問題が確認される 24
ストーリー by hylom
BASICでハック 部門より
BASICでハック 部門より
ニンテンドー3DS上でBASICプログラムを実行できるソフトウェア「プチコン3号 SMILE BASIC」に任意のコードを実行できる脆弱性が発見され、一時的に配信が停止される事態となった。
「大人のためのゲーム講座」ブログによると、とあるバイナリデータを含むBASICプログラムをSMILE BASIC上に打ち込んで実行した上で特定のファイルをロードすることで、任意のプログラムを実行できるという。
それの何が問題? (スコア:1)
BASICインタプリタにマシン語モニタ機能がついてるのなんて普通だと思ったが。
Re:それの何が問題? (スコア:2, すばらしい洞察)
「任意のコード(プログラム)」って大雑把に定義すると自分で書いたコードも任意のコードになるから話が変だなと思って公式サイト見に行ったら
>海外で「プチコン3号 SmileBASIC」を利用し Nintendo 3DS システムに不正なアクセスを行うプログラムが確認された
…確かにそれは問題だな
Re: (スコア:0)
ユーザー空間からカーネル空間にアクセスできたらそれは脆弱性だろう。
Re: (スコア:0)
BASICの常として、内部解析本を片手にシステム書き換えや
未発表ルーチンを使うのは、常識です。どや。
Re: (スコア:0)
VMなんだから、床が勝手に抜けたらダメ。
Re: (スコア:0)
PC-8001せっかくモニタに入れるのに、BASICがROMにあるもんだから書き換えられないので、
空きメモリ空間にRAMを入れて、そこにコードをコピーして、
ワークエリアを書き換えて、そこに飛ぶようにして、、、
何だっけ?なんか色々とやった気が。
Re:それの何が問題? (スコア:2)
MZシリーズ「クリーン設計」だから、BASICがROMにないもんで書き換え仕放題で
PEEK・POKEの値ちょっと間違えて、コード書くと
BASICのシステムエリアが書き換えられて、非ぬ所に飛んでって、、、
何んだよまたBASICのロードから?なんか色々と懐かしいな。
Re: (スコア:0)
BASICで書かれたマシン語モニタで機械語のモニタのダンプリストを入力して、
TL/1とアセンブラと逆アセンブラとLISPのダンプリストを入力して、、、
Re: (スコア:0)
MZ80BでラリーXもどきのゲームがあって画面データをマシン後領域に持っていたんで画面データを読みだすアドレス変更して
システム領域なんかを表示、そこで車を走らせてシステムが落ちるまでどれくらい走れるかとかやったな。
Re: (スコア:0)
おおっと、PC-6001の悪口はそこまでだっっっ!!!
Re: (スコア:0)
pc-6001に限らず、pc-8801、やPC-9801、sharpのE-500なんかのBASICにもマシン後モニタはあったと思うが。
当時のCPUじゃBASICオンリーだと重いから。
Re:それの何が問題? (スコア:2)
いや、話が逆ですよ。PC-6001のBASICインタプリタにはマシン語モニタ機能が無いんです。だから、
という大元のコメに対して、
って流れになってるんです。
#PC-6001にもサードパーティー性のマシン語モニタはありましたし、
#素のBASICでもPEEK/POKE/USRは使えるのでマシン語なユーザープログラムの実行も可能です。
Re: (スコア:0)
ポケコンだと、PB100系はその辺の命令がなかったので、
マシン語が使えるPC12系がうらやましかったです。
#なんか謎の未定義ステートメントがあった気がしたけど
Re: (スコア:0)
いやPC-6001にもマシン後モニタあります。mkⅡからですが。
http://p6ers.net/hashi/monitor.html [p6ers.net]
7/27配信再開か (スコア:0)
リンク先のブログ見たらダウングレードが必要とかあるけど、PCのアプリじゃあるまいしすでに公開停止中の配信専用アプリをどうやってダウングレードさせるのやら……。
しもべは投稿を求める →スッポン放送局がくいつく →バンブラの新作が発売される
Re:7/27配信再開か (スコア:1)
アップデートパッチは追加コンテンツ扱いなので、本体機能から簡単に削除できます。
Re: (スコア:0)
「できる」けど「しない」人たちにどうやって「させる」か、という問題です。
Re: (スコア:0)
ほっておけばいいのでは?
Re: (スコア:0)
マジコン的な悪用に関しては、セキュリティパッチが出来てからいつもの3DS本体の「アップデートしないとサービスが使えない」制限機能を使えばいいんじゃね?
ROMソフトではないのは幸い? (スコア:0)
DLソフトだから、DLした固体でしか動かないから色々なツール(w)として
使われる可能性は局在化される?
かな
load "run (スコア:0)
>特定のファイルをロードすることで、
あのツールを想起させられてしょうがない。
# あれがどういう仕組みなのかと紐解いていったのが、色んな理解への入り口だったなぁ
Re: (スコア:0)
自動実行ですか。あれはスタックにloadさせて帰り値で実行させるんでしたなぁ
まったく、やってることはあの時代とぜんぜん変わらない訳で。
# 変わったのは密度/速度くらい
TASが大幅更新されるな (スコア:0)
何秒でエンディング表示できるかな?
Re: (スコア:0)
ついにニンテンドーeショップがクリアされる日が来るのか