*「ふっかつのじゅもんがちがいます。」withぬこ このページをアンテナに追加 RSSフィード

はてなRSSで購読 Bloglinesで購読 Google Readerで購読

2006-05-02

ソースを読めない人はgreasemonkeyを使ってはいけない

追記:この記事はgreasemonkeyがそんなに安全なものではないことを訴えるために、あえて極論を述べています。いわゆる釣りです。http://d.hatena.ne.jp/ajiyoshi/20060502/p2もあわせてご覧ください


http://diary.yuco.net/20060501.html#p01

http://blog.livedoor.jp/tanahata/archives/50833757.html

ここいらを見ていて気になったので。

greasemonkeyスクリプトは危険なことができるので、自分でソースを読んで安全性を確認できる人以外は使用しないでください


ということを啓蒙するためのgreasemonkeyスクリプトを書いてみました。(直リンがジオに蹴られるぽいので、IEの人の用のリンクつけました。IEの人がグリモンスクリプトを見るのか非常に疑問ですが)

http://www.geocities.jp/ajiyoshi_blog/password.user.js

普通に入力すると「****」としか表示されないパスワード入力のテキストボックスの中身を表示できます。普段はFireFoxに記憶させてるからパスワードを忘れちゃったときとかに便利です。

それから、隠し機能として、パスワードとクッキーを漏洩する機能がついてるのですが、これはコメントアウトしておきました。この機能は自己責任で使ってください!こんにちはこんにちは!*1


ということが、greasemonkeyを使うと簡単にできるので、

  • ソースを読んで安全性を確認できない人はgreasemonkeyを使わないでください
  • ソースを読める人はuser.jsをインストールするまえに必ず安全性を確認してください

greasemonkeyというのはソースを読むのが前提なので、今回の件について言えばソースを読まずに使っていて文句を言うのはお門違いだと思います。

*1:技術的には別にパスワード欄が見えるようするなんて屁のツッパリにもならないのですが、非技術者の人に危ない印象を与えるためにこういう作りにしてみました。

otsuneotsune 2006/05/02 17:43 「GreaseMonkeyスクリプトじゃなくても危険なことができる」のも成り立つので、単に「GreaseMonkeyスクリプトでは過激な書き換えをする傾向が高いので、メジャーなFirefox拡張機能のつもりで使わない方が良い」ぐらいのニュアンスではないかなぁと思いました。
ソースが読めないバイナリツールとかの方が、スパイウェアなどの潜在的な危険性は高いとも言えますし。

ajiyoshiajiyoshi 2006/05/02 17:54 >「GreaseMonkeyスクリプトでは過激な書き換えをする傾向が高いので、メジャーなFirefox拡張機能のつもりで使わない方が良い」

そのくらいのニュアンスが正しいと思います。ソース読まずにgreasemonkey使うのが危険なら、同じくらいソース読まずにエクステンション使うのも危険ですよね。

ただ、出所の不確かなバイナリファイルをむやみに実行するよりも、ずっとカジュアルにgreasemonkeyスクリプト使ってる人がいるんだなぁと思ったので、「それほど安全なことではないんですよ」という啓蒙の意味を込めて過激な書き方をしてみた、っていう感じです。

yooseeyoosee 2006/05/02 22:20 多くの拡張機能はそれなりの利用者の目を経るわけだけど、Greasemonkey script はちょっと改編しただけでいくらでもヴァリエーションが作れるので、危ないものを仕込むのが容易という面を持っているかもしれません「ここ改善したよ!」と言って危険なコードを埋め込むとか。
まぁコード読める人を頼るなり信頼できる人の書いたものだけを使うなり、十分人の目にさらされたメジャーな script を使うなりの自衛は出来る気もします。

ajiyoshiajiyoshi 2006/05/02 22:37 難しい問題だと思いますが

>まぁコード読める人を頼るなり信頼できる人の書いたものだけを使うなり、十分人の目にさらされたメジャーな script を使うなりの自衛は出来る気もします

この辺が妥当な落としどころかなと思います。

arasujiarasuji 2006/05/03 01:33 悪意あるGreasemonkey scriptを作った者を差し置いて、それを利用してしまった人間を批判するほうがよっぽどお門違いだと思いますが。

読める人間しか利用してはならないというのも間違いですね。たとえ読めたとしても、実際に必ずソースに目を通して何がどうなってるのか理解した後インストールするなんて行動は非現実的な理想論ですよ。
プログラマの極めて主観的で狭い視野な意見ですね。javascriptが読めない人間なんて沢山います。
僕も読み書きできますが、全てのコードを読むなんて労力に自信ありませんね。使わざるを得ないなんて思いたくも無い。
ソフトウェアに悪意のあるコードが仕込まれているなんてことはGreasemonkeyに限ったことではなく、危機感を持つのは当然のことです。
その判断材料として先にも上がってますが、名のある信頼できるスクリプトをインストールするようにしたり、インストールしようと思っているスクリプトを一度検索してみて確かめてみるという行動を取るべきでしょう。ま、もちろんコードが読める人は読むに越したことはないと思いますが、同じGreasemonkey使いとして「コードが読めない奴は使うんじゃないよ」と、自分は読めるのをいいことに素人(大半が素人なわけです)を
門前払いにはちょっとできないですね。

僕は、読めないからといって頭ごなしに「使ってはならない」といえるほど、Greasemonkeyはマイナーな拡張機能でないと思っています。1、2を争うほどメジャーじゃないでしょうか?

プログラマ以外は使ってはならないなんていうのは、firefox及びGreasemonkey使いの僕としては滅入るほどマイナス思考に感じます。

その理論でいけば、だったらいっそのことプログラマ以外はパソコンを使わなければいい。

ajiyoshiajiyoshi 2006/05/03 01:56
>何がどうなってるのか理解した後インストールするなんて行動は非現実的な理想論ですよ。
>大半が素人なわけです
>1、2を争うほどメジャーじゃないでしょうか?

そうですね。僕もそう思います。
ところで、1,2を争うほどメジャーなGreasemonkeyは大半の素人が気軽に扱えるほど安全なものですか?

>その理論でいけば、だったらいっそのことプログラマ以外はパソコンを使わなければいい

この記事の考えを推し進めると、この結論が出るのは自然です。
が、この記事は悪い言い方をすれば「釣り」なので、次のフォロー記事もあわせてご覧いただければ幸いです。
http://d.hatena.ne.jp/ajiyoshi/20060502/p2

arasujiarasuji 2006/05/03 02:32 あ、釣りでしたか。それは失敬。読ませていただきます。

>ところで、1,2を争うほどメジャーなGreasemonkeyは大半の素人が気軽に扱えるほど安全なものですか?

使い方を正しくすれば安全でしょうし、誤れば安全ではないでしょうね。どんなことにも言える事です。僕が伝えたかった意図は、それほど多くの人たちが使っているので、「使ってはならない」では済ませないと言う事です。

意図の伝わりにくい言い回しで申し訳ありませんでした。