OracleのCSO、ブログに「Oracle製品をリバースエンジニアリングするな」と投稿し炎上 54
ストーリー by hylom
そんなCSOで大丈夫か 部門より
そんなCSOで大丈夫か 部門より
あるAnonymous Coward 曰く、
Oracleの最高セキュリティ責任者メアリー・アン・デビッドソン氏が8月10日にブログで「脆弱性を探すためにコードを読解すること(リバースエンジニアリング)は利用規約に反しているのでやめるべき」と書き込んだところ炎上、非難を受けてデビッドソンCSOはブログの投稿を削除したという(GIGAZINE、@IT)。
この記事は、Oracleのプロプライエタリな製品について、リバースエンジニアリングを行って解析することはライセンス条項に違反すると主張するものとのこと。また、「利用者は、脆弱性に対するパッチを作成することはできない。それをできるのはベンダー(オラクル)だけ」といった内容もあったようだ。
しかし、本来的には協力者とも言えるセキュリティコンサルタントやユーザーの存在を「利用規約に反する不届き者」と断罪した結果、今回の顛末に陥った模様。Oracle側はデビッドソンCSOの投稿は私たちの理念や顧客との関係を反映したものではないため、削除いたしました」という公式見解を出している。
ダチョウ倶楽部メソッド (スコア:0)
するなよ
絶対するなよ
親愛なる出歯亀君へ (スコア:0)
"Advice to dear Peeping Tom.Good programmer never copies other guy's code !This message is for YOU !!!"
PC-8801のマシン語モニタ逆アセンブルしてたら日電のマルシーとともにありがたいメッセージが書かれてた思い出。
Re: (スコア:0)
これは知らなかったなあ。
当時はまだ「1バイトは血の一滴」の時代だったはずなのにずいぶんと豪気なことで。
Re: (スコア:0)
当該メッセージをI/Oだったかな、雑誌で見てダンプしてみてへーっと思った口です。
当時からソフトウェアの無断コピーが問題化していたことを示すとともに、PC-8801が当時としてはリソースが潤沢だったことを象徴する事例でもありますね。機械語モニタはN88-BASIC ROMとは別バンクの、N-BASIC ROMのの余り領域(メモリバンクサイズが32KBでN-BASICが24KB、残りの0x6000-7fff番地を機械語モニタが占めてた)にあり、機能を足すには足りない半端な空きがあったんではないかと想像します。
Re:親愛なる出歯亀君へ (スコア:1)
PC-8801 は Z80相当品を積んでるくせに、
ROM は 8080 の機能しか使ってないぐらいですし。
マシン語モニタのアセンブル・逆アセンブルもインテルニーモニック形式だったので
Z80慣れした自分にはすごく使いづらかったですが、
それでROMをつらつらと逆アセンブルして眺めて、
「Z80なコードを書けばらもうちょっとコンパクトにできそうなのになー」と思った覚えがあります。
Re: (スコア:0)
アホか。8080 の機能しか使ってないなら割り込みモードの設定もできんわ。
Re: (スコア:0)
40kBあるN88-BASICのROMのなかで8080由来の絶対ジャンプ命令は約1000箇所で使われているが、Z80の命令である相対ジャンプ命令はそれより多い約1800箇所で使われてる。他、
SBC HL,DE
LD DE,(nn)
IN A,(C)
OUT (C),A
LDIR
これらのZ80の命令も2桁以上の箇所で使われてるし、EX AF,AF'やEXXで裏レジスタも使われてるよ。インデクスレジスタIXとIYは完全に未使用だけど。
Re:親愛なる出歯亀君へ (スコア:1)
そうだったんですか…ちゃんとZ80命令は使われてたんですね。
8080命令しか使っないと考えた根拠は、網羅的に調べたわけではなく、マシン語モニタの逆アセンブラを使って、そのときそのときにピンポイントでつらつら眺めた程度での推測だったんですが、
後に、「Microsoft BASIC にはZ80版がなく、N-BASIC/N88-BASICは8080版の移植だから、Z80命令は使われてない」って説明を聞いて納得してたんですよね…
NECが独自に実装した拡張部分なんかはZ80コードで書かれてたってことかな。
Re:親愛なる出歯亀君へ (スコア:1)
PC-8801のマシン語モニタ組み込みアセンブラ/逆アセンブラは、インテルニーモニックにも拘らず相対ジャンプだけは使えたはず。
(JMPRとか、DJNZとか)
なので、モニタで逆アセンブルした場合には、Z80命令があっても意外と気づかないかもです。
利用規約にあるなら (スコア:0)
何者であってもそれを守るのが当然でしょ
規約が気に入らないなら使わなきゃいいだけの話
Re:利用規約にあるなら (スコア:1)
じゃあ使わないって流れになりかねないから会社が火消してんのにお前はアホか?
Re: (スコア:0)
じゃあ使わないって流れにすればいいだけで、炎上させたり規約違反のリバースエンジニアリングを正当化するのは別問題だろう。
Re:利用規約にあるなら (スコア:1)
お前みたいなゴミ屑の意見なんてどうでもいいが、
それはオラクルの理念とは違うそうだぜ?
Re: (スコア:0)
使わないって流れ自体が炎上じゃないの?
Re: (スコア:0)
じゃあ使わないって流れにさせようとするのも、炎上させるのと同じくらい『別問題』だよね。
「すればいいだけ」と言えるような一択には見えないんですけど…。
# なんでそんなにディスコミュニケーションを強いるの?
Re: (スコア:0)
オープンソースはどんな理由であってもライセンスは守らなければならない(特にGPL)
プロプラは悪なので守らなくても良い
と言うことですか
Re:利用規約にあるなら (スコア:1)
じゃぁ、使わないよって思って、他のオープンソースのDBを使ってたのに気づいたらそれもOracleになってしまって、仕方が無くまた他の奴を使ってたら、それもOracleになった。
Re: (スコア:0)
その利用者と契約した「セキュリティコンサルタント社」はオラクルとは直接契約していない。
しかしオラクル製品は利用者の所有物だからリバースエンジニアリング出来る。
これを「やめて」と言ったらオラクルの権利を超えてるでしょう。
Re: (スコア:0)
> しかしオラクル製品は利用者の所有物だからリバースエンジニアリング出来る。
オラクルが契約していていない「セキュリティコンサルタント」が、
オラクルの製品を利用してるわけだから、この場合、
利用を許した「利用者」が違反にあたるのでしょうか。
Re: (スコア:0)
米国にはフェアユースがあるので場合によりけりじゃないかな。
Re: (スコア:0)
オラクルの権利を超えてると訴えたら購入の対価は「オラクルのサービスを利用する権利」って言い出すと思うよ
Re:利用規約にあるなら (スコア:2)
プログラム使用権許諾書サンプルダウンロード [oracle.co.jp] とあるように当然ながら使用権許諾書となってますね。
フェアユースであるかどうかはともかく、製品そのものの所有権は"お客様"側にないと考えるべきです。
実際にリバースエンジニアリングしたのが第三者であれば、許諾の条件から外れますね(もちろんこちらもフェアユースであるかどうかは別)
Re: (スコア:0)
日本には、プログラムの使用権なんてものはありませんよ。プログラムの所有権というものもありません。あるのは知的財産権による複製権その他だけです。
Re: (スコア:0)
これは契約に基づく権利ですから、日本にもありますね
Re: (スコア:0)
それでも、プログラムの使用権の許諾や所有権が元よりOracleにあることを前提として書かれているOracleのライセンス契約書は酷いでしょう…。債権と債務が滅茶苦茶。
>日本オラクル、米国オラクル・コーポレーション(以下「オラクル」といいます)、およびそのライセンサーは、対象プログラムについて一切の所有権および知的財産権を保有します。
[...]
>お客様は、使用権を許諾された範囲で対象プログラムを必要なだけ複製(インストール)することができ、また、バックアップ目的で、対象プログラムのメディアを1部複製することができます。
Re: (スコア:0)
Re: (スコア:0)
利用者が規約のもとにコン猿会社に使用させているのだから守らないと駄目では
自動車の使用者責任みたいな
でなければザルすぎる
あいつは人の言うことを聞かないからな (スコア:0)
Oracle「一番いいCSOを頼む(切実
株価も最高値$112をつけた1999年末の半分以下。
シェアトップでMySQLまで入れると不動の巨大シェアではあるんだけどね。でも株価は(略
もうDatabaseといえばOracleって時代じゃないし、新規顧客がつかないとRDBMS界のCOBOLになったりして。
いや、後方互換性がアレだからCOBOLにもなれないか。
Re:あいつは人の言うことを聞かないからな (スコア:1)
>Oracle側はデビッドソンCSOの投稿は私たちの理念や顧客との関係を反映したものではないため、削除いたしました
「Oracle側」の理念にそぐわないデビッドソンCSOを削除してたら拍手喝采だったのに。
Re: (スコア:0)
Oh メリーアン 突然どこへ消えたのか
嵐の去った真夏の夜 あなたの姿を求めて歩く
Re: (スコア:0)
don't reverse, do rebirth.
とか言ってたら洒落乙的に流してもらえたのかもね
Re:その通りだよ思うけど (スコア:3, 参考になる)
> 脆弱性を見つけてくれるのはありがたいし、そこは感謝してる。
違う。「脆弱性報告はほとんどゴミだし、うちはちゃんと賞をもらってるから安全だし、解析はライセンス違反だからやめろ」って書いてる。1980年代並みのことが本当に書いてある。
https://web.archive.org/web/20150811052336/https://blogs.oracle.com/ma... [archive.org]
Recently, I have seen a large-ish uptick in customers reverse engineering our code to attempt to find security vulnerabilities in it. This is why I’ve been writing a lot of letters to customers that start with “hi, howzit, aloha” but end with “please comply with your license agreement and stop reverse engineering our code, already.”
there are a lot of things a customer can do like, gosh, actually talking to suppliers about their assurance programs or checking certifications for products for which there are Good Housekeeping seals for (or “good code” seals) like Common Criteria certifications or FIPS-140 certifications.
Q. Surely the bad guys and some nations do reverse engineer Oracle’s code and don’t care about your licensing agreement, so why would you try to restrict the behavior of customers with good motives?
A. Oracle’s license agreement exists to protect our intellectual property. “Good motives” – and given the errata of third party attempts to scan code the quotation marks are quite apropos – are not an acceptable excuse for violating an agreement willingly entered into. Any more than “but everybody else is cheating on his or her spouse” is an acceptable excuse for violating “forsaking all others” if you said it in front of witnesses.
Re: (スコア:0)
寄せられた脆弱性に関する情報の中には、明らかにそういった行為(ツール解析とか)でなければ見つけ出すことができないものがあるので、それは節度がどのへんにあるのか、使用に関する契約内容、ならびに、権利に関する契約内容を書面の記載で再度、確認してくださいませよって言いたかったんだろうけども、もう、おばちゃん長いことこの仕事してて、こういう通報なんて枚挙にいとまないし、おかげでくっそ忙しいし、もうひとりいるデビッドソン@男は社内でツクツク、チクチクしやがってうっせーし、あたしなんか、最初はプロダクトマネージャーだったし、セキュリティに関するカンファレンスでたくさん講演やって指導もして意見も言ってきたけど、プログラミングなんてわかんないし、やったことないし、あんたたちが騒ぐからあたしの立場が危なくなるのがわっかんないの? いー加減にしてくんなーーーーーい? って読めた(笑 おばちゃんになったから周囲から引退しろって言われてるから騒ぐのやめて!って読めた(笑
Re:その通りだよ思うけど (スコア:2, 参考になる)
原文読みましょうよ
リバースエンジニアリングとかうざいから,やめて
品質管理はオラクルに全部任せて,と言う主張です
協力者&利用者は怒って当然の内容です
Re:その通りだよ思うけど (スコア:2, すばらしい洞察)
JAVAであれだけ脆弱性を出してるのに、品質管理してたの?
Re: (スコア:0)
協力者なんていらないって話でしょ。
それはそれで一つの見解だと思う。
Re:その通りだよ思うけど (スコア:1)
ソース見た?
その「一つの見解」とやらをオラクル社のブログで書いちゃって
会社側が「ウチの理念とは異なる」って尻拭い。
思慮の浅いザルCSOなんていらないって話でしょ。
Re: (スコア:0)
ドゲザー鳩山に対する民主党みたい
Re: (スコア:0)
品質管理をOracleがやって、それであの体たらくだと他の製品もザルであるという評価が付くし、CSOは仕事してなーいってことになると思うんだけど、本気で言ってたの?>メアリー
バウンティハンティングコンテストを開いて、懸賞金はCSOの報酬を原資にするってすれば、社内のバグ取りに血道を上げてくれると思うなww
Re: (スコア:0)
8i辺りから報告への対応が悪くなったんですよね。
報告してた人は、WindowsはMSだからミドルは他でと考えてた人たち。
そんな人たちが9iでぶち切れて、他に移って行きましたが、公言した感じですかね?
Re: (スコア:0)
実行形式ファイルから得られる情報だけだと脆弱性見つけるのに多大な時間を要するでしょ
Re: (スコア:0)
実行形式ファイルから情報を得るのがリバースエンジニアリングじゃないの?
Re:その通りだよ思うけど (スコア:1)
まわりから突いて挙動を確かめるのもリバースエンジニアリングです。
Re: (スコア:0)
え?そうなの?
それってどこがリバースなの?
Re:その通りだよ思うけど (スコア:1)
リバースエンジニアリングは、
実行形式ファイルの disassemble する事だけを指しません。
実行形式ファイルの挙動を解析する事も含まれます。
要は、公開されていない仕様を明らかにするエンジニアリング行為すべてが、
リバースエンジニアリングにあたる行為になるかと思います。
Re: (スコア:0)
分かりやすい所だと、パケットキャプチャでプロトコル解析するのも
リバースエンジニアリングですね。
Re:その通りだよ思うけど (スコア:1)
Reverse "Code" Engineeringなら逆アセンブルとか逆コンパイルしてソースの復元・分析がメインになるかもしれないけど、単にリバースエンジニアリングって言うならハードウェアや暗号プロトコルに対するサイドチャンネル攻撃とか、ブラックボックステストみたいに周りから間接的に仕組みを把握しようとする手法は一般的だと思う。
え?そうなの?
それってどこがリバースなの?
ビルド(製造)過程で「失われた情報の取得」がリバースなんだから問題ないでしょう。
Re: (スコア:0)
つつく元は実行形式なんで。
#実行形式→仕様(挙動)なのが通常と逆
Re: (スコア:0)
夏休みなの?
Re: (スコア:0)
仕様から製品を作るのが普通のエンジニアリング。
製品から仕様(バグ含む)を見つけるのがリバースエンジニアリング。