「一方通行」を含む日記 RSS

はてなキーワード: 一方通行とは

2016-12-22

失恋した

1年間、ずっと彼女がいる人のことが好きだった。

そいつとはちょうど1年前、本当にちょっとしたきっかけで仲良くなった。お互いの部屋を行き来するようになり、一緒にテレビを見たり一緒に寝たり、そういうことを何度かしているうちに私はどんどんと彼のことが好きになって、もしかしたら向こうもそうなのかもしれないと、そう思っていた矢先、そいつ彼女ができていたことを知った。

かなり、かなりショックだった。けど、もう私は後戻りできなくて、そのまま1年間、浮気相手のような、2番手のような、今流行りのソフレのような、1週間に1回くらいの頻度で部屋に行き、2人で過ごしてキスをして一緒に寝るというよくわからないふわふわとした関係をずるずると続けてきてしまった。

いつか辞めなきゃいけないということは分かっていて、でも無理だった。彼は彼女と別れる気もなければ私との関係自分から終わらせる気もないようだった。終わらせるとしたらその役目は私が負わなきゃいけなくて、傷つくのも、私だけ。そう思うとどうしても耐えられなくて、目をそらして逃げ続けて、1年が経った。

しかしたら、もしかしたら彼も私のことが好きになってくれるかもしれないという期待もあった。私を大事に思ってくれているような感じはあったし、諦めなければそのうち私が1番になれるんじゃないかって、妄想を抱えて現実から顔を背け、関係を続けてきた。

でも、昨日。

私はふと出来心で彼のラインを覗いた(勝手に人のラインを覗くなんてまずそれ自体がクソとしか言いようがないし、そこに関しては私が全面的に悪いとしか言いようがないのだが、そこは一旦目をつぶってほしい)。そこには彼女との会話や私との会話の他に、共通の友人(女)との会話もあった。私は何の気なしにその会話を開いた。それがとんでもない地雷だった。

言ってしまえば、彼はその女の子とも浮気関係にあった。私だけじゃなかったのだ。彼はその子に向かって、「好き」「早く会いたい」とラインを送っていた。キス写真もあった。

とんでもないものを見てしまったという動揺と、ショックと、怒りと、悲しみとで頭が混乱する中、ふと思った。

私は1年間この関係を続けてきたけど、彼に「好き」って言われたことはなかった。私はずっと2番手にされているのだと思っていたけれど、それすら勘違いだったのかもしれない。最初から最後まで、私の一方通行で、彼から感じていた私への親愛は、全て幻想だったのかもしれない。

彼にとって、私は、なんだったんだろう。友人だろうか。キープだろうか。それとも、部屋によく来る抱き枕か何かのように思っていたのだろうか。わからないけれど、ひとつ言えるのは、私のこの1年間は全くの無駄だったということだ。

今は彼の顔を見たくないし、もう1人の浮気相手の女の顔も見たくないけれど、大学が一緒なので否応無しに見なければいけない。ていうか今日会うし。耐えられるだろうか。

ほんとにこの1年間、なんだったんだろう。できることならやり直したい。

2016-12-21

ずっと好きだった人と付き合えることになった

ずっと好きだった人と付き合えることになった。

から彼と共通の知り合いと何人かで遊んだりしてたけど突然彼から個人的にご飯に誘われた。

何回か彼と個人的に会ううちに、彼は私のことが好きなのでは?と勘違いしてしまった。喪女もいいところである

ついに調子乗って「付き合ってくれませんか?」って言ってしまった。

彼は驚いて「考えさせて」って言った後に「いいよ」って言ってくれた。

この時点で彼は私のこと好きじゃないんだなってちゃんと気付けばよかった。

正直付き合う前の方がデートっぽいことしてたしLINEもたくさんしてた。

今じゃご飯行ってもあまり会話が進まないしLINE既読無視される。

その度に「ああ、彼は私のこと好きじゃないんだな」って痛感させられる。

彼のことはずっと好きだったし今でも好きだけど一方通行すぎて正直好きでいることにちょっと疲れてきている。

好きだったことを言わないで、いいお友達関係に留まっていた方がよかったのかもしれない。つらいなあ。

2016-12-13

WELQ並にヤバそうな予防接種に関するNEVERまとめについて

一言で言うなら『やっぱNEVERまとめもまともじゃないのこいつもさっさと閉鎖しろ』という話。

ただの個人的意見だがネットに限らず不特定多数現在の正しい情報提供するためにはエビデンス(証拠的な意味での)は公的機関等が発表した信頼性の高い書物論文記事であるのが絶対条件。そしてその中でも過去4〜5年くらいまでのものが実際に使えるものだと思っている。私が学生時代ディベート試合なんかをしていた時には年季の入った引用先のエビデンス信憑性が下がるから使うなと指導されたものだ。

WELQに始まるキュレーションメディアの騒動では著作権違反やらエビデンスなんてクソ喰らえと言わんばかりのデマ拡散やらで多いに盛り上がったが最近NEVERまとめでも微妙に怪しいまとめを見つけてしまったのでそのことについて記そうと思う。

近辺でのインフルエンザ予防接種を扱う病院を調べていると何故かまとめサイトに行き着いた。「インフルエンザワクチンは打たないで!」とかいタイトルなのだ引用(という名のただのほぼパクリなのはともかく)されている情報信憑性が欠けているように思えて仕方がなかったので少し調べることに。

このまとめの引用元としてよく使用されている元母里氏の書籍だが発行はなんと2007年。9年も前の医学を元にまてめているらしい。そして氏のワクチンは全く効かないだとかのアンチ意見引用されてるが、(引用問題があるのかもしれないが)特に例を出されている箇所は約30年ほど前のワクチン使用中止の話がベースとなっている節がある。医学進歩する中、今のワクチン事情に引き合いに出すものではない。

あと気になったのが慶応大等の研究結果によりインフルエンザ予防接種中学生乳幼児には無意味!という記事研究結果自体をちらっと拝見すると単に"件数不足により分析不可"ということらしい。うむ、毎○新聞記事はあてにならないということか。

…とまあ医療知識に乏しい素人目でもちょっとおかしいなと思っていたのだがネット上にもこのまとめについてWHO等の発表や最近ワクチン事情について比較信憑性の高いエビデンスを用いた反駁をされている方々がいるようで。それらはワクチン効果は十分期待できるものであり近年使用されているワクチン危険性が低いよう改良されている等まとめの内容と真逆を行く情報ばかりだ。

無論私もワクチンに限らず薬には副作用があるもの100%安全性があるとは考えていない。が、この情報を見た今まとめにあるような危険性があるとも考え難いものがある。まとめを信じるか否かは各々に任せるとしてもこのような情報確認したまとめ閲覧者はどれ程いるのだろうか。

他に腹の立つことを挙げるならば後半のページにあるこのまとめに対する肯定意見ワクチン否定派のTwitterまとめ。否定的意見は気にもせず一方通行で「常識ウソ、こんなに沢山の人が信じているから正しいに決まってる」的な誘導をしたいのだろうか。このような自分に都合の良い情報ばかりを集める所はアフィリエイト丸出しの2ちゃんねるまとめサイト等にもよく見られるものだが。

このまとめを知る人からしたら何を今更とも思うかもしれないが一連のキュレーションサイト問題がここまでの大炎上となった今、この騒動が鎮火する前に是非このような情報拡散するNEVERまとめも逃げずに削除なり何なりの対応を取ってほしいもである

2016-11-27

ネット乞食文化気持ち悪い

ネットの海を泳いでいると、しばしば乞食行為に出くわすことがある。「誕生日が近いのでほしいもリスト公開します!!」みたいな。

ブログをやってる人、いわゆるブロガーなんて人種がそういった類のことをやっている印象だが、傍から見てて「気持ち悪いなぁ」と思ってしまう。乞食している側も贈っている側も馴れ合っている感じがして非常に気持ち悪い。

そういった行為を見かけると「そんな物乞いみたいな真似してないでブログ収益を使って自分で買えばいいじゃん」と思うし、「この人たちは現実のみならずネット上でも馴れ合って一体何がしたいのだろうか」とも思う。


個人感覚としては、プレゼントという行為自分でクレクレ言いに行くものではなく、贈る側が何らかのアクションを起こすことによって始まるものだと思っているのだが、世間一般感覚はどうなのだろう。友人でも家族でもない人に物をねだるだなんて行為、私には到底できる気がしない。

似たような例として、海外フリーソフトオープンソースソフト界隈ではPayPalによる寄付文化があるが、ああいったものに対して特に嫌悪感はない。恐らく、自分自身が「そういった寄付モチベーションに繋がる」ということを身に染みてわかっているからだろうし、そもそもそこに馴れ合い存在せず、利用者開発者という一方通行感謝の念だけが存在している(と私は思っている)からだろう。

同様に、プロフィール欄などに欲しいものリストURLが貼ってあるような例も見かけるが、あれらも特に嫌悪感はない。PayPalの件と同様に自らクレクレ言っているわけではなく、その人に対する何らかの報酬・対価を贈るための手段として、PayPalなり欲しいものリストへのリンクが置いてあるだけだからだろう。

要は私の中に「友人でも家族でもない人に物をねだる」「ネット上で馴れ合う」といった価値観存在しないために、ここまでの嫌悪感に繋がっているわけだ。狭量な人間だね。


まぁそれはともかく、こんなことを言っていると、ほしいもリスト乞食をやってる人からは「嫉妬してるだけでしょ」「全員がブログ収益出てるとでも思ってるの?」「嫌なら見なければいいじゃん」といった声が飛んできそうである

嫉妬云々は感情の話なので否定したところで証明のしようがないが、収益云々に関しては「初期費用ゼロで済む以上、金額を問わなければブログ利益を出すのは全く難しくない」と思っているので、そんなことを言ってくる人とは根本的にブログに対するイメージが違うのだろう。

嫌なら見るな」という意見はごもっともなド正論なので、そういった乞食行為をやっているのを見かけたらTwitterなりFeedlyの購読を解除するようにしている。

あぁ、今日も1つ購読しているブログが減ってしまった。

悲しいなぁ。

2016-11-19

結婚式に呼ばれた事がない

27歳、理系院卒、ごく普通会社員

今まで生きてきて、1度も結婚式に呼ばれた事がない。ひとりっ子かつ親戚付き合いも殆どないので、身内の結婚式にも出たことがなく、本当に祝いの席に参加した経験は皆無である。流石にこの歳になると、結婚式に出た事がないとは恥ずかしくて誰にも言えない友達がいないと公言しているようなものだ。

友達がいなかった訳ではない、と思っている。いや、今となってはよく分からないが。

小学校イジメられっ子だったが、学区の違う中学高校では一緒に遊ぶグループもできた。しか卒業と同時に縁が切れ、今ではフェイスブックふわふわ繋がっているだけの関係。なまじ繋がっているから、彼等が素敵なパートナーと結ばれて華やかな式を挙げたことだけは知っている。早い人には子どもも出来た。大学生活はリア充とは程遠かったものの、サークル語学クラスバイト先、学生寮にそれぞれ親しい人達がいた。しかし、サークル活動ガチ過ぎてついて行けなくなって辞めてしまった。無理にでもついていくべきだったのだろう。語学クラスバイト先の仲間は、進学•就職を機に付き合いがなくなった。こちらも高校時代同様、フェイスブックだけで未だふわふわ繋がっていて、最初の数年は同窓会もやったりしたが、そのうち開催しなくなった。SNSでの私の見かけの友達数はやたら多い。学生寮人間とは、引越した後も比較的長く付き合っていたが、2-3年もすると徐々に疎遠になってしまった。学生寮同窓会ネットワークもないので、今後会うことはないような気がする。大学院研究室関係者とは、今も関わりがない訳ではないが、非常に表面的な付き合いである。

考えてみたら、友達だと思っていたのは私の一方通行勘違いで、どこにも友達は居なかったのかもしれない。だから、誰からも祝いの席に呼んでもらえないのだ。お前が積極的に繋がりを残そうとしなかったのが悪いんだろう、自己責任だ、と指摘されるかもしれない。確かに、私は同窓会幹事をやった事もないし、そんなネットワークも行動力も持っていなかった。でもその程度の受け身人間、いっぱい居るじゃないか。それに、親しい(と思っていた)数人に連絡して遊びや飲みに誘うくらいのことなら、自分でもやってきた。けれど、私がやると何故か上手くいかないんだ。誰も乗り気でないような、酷い場合には全員不参加で流れるような。

今の職場にも、プライベートで飲みに行ったりする仲間はいるが、彼等を友人と呼んで良いのか分からない。職場が変われば簡単に付き合いは無くなる気がする。ついでに言うと既婚者ばかりなので、仮に付き合いが続けられても結婚式経験なのは変わらなかったりする。

そういえば職場の後輩が、学生時代の友人の結婚式が今週末あると言っていた。新しい服やらご祝儀やら、出費がキツいと嘆いていた。「増田さんくらいの年齢だと結婚式多いですよね?どうやってやりくりしてるんですか?」と聞かれたけど、さすがに行った事がないとは言えず、金欠だよね等々言って適当に誤魔化しておいた。今頃披露宴なのだろうか。誰かの華やかな人生の門出に立ち会って祝福するというのは、どんな感じなのだろう。私には、誰かを祝福する資格は無いのかもしれない。

2016-11-05

気づかれていないだけの女性アスペルガーって結構いそう

一方通行の会話(というより演説)とか

特定人間への執着の仕方とか

アスペ特有の「こだわり」が恋愛に向いている場合もあるんじゃないかなあ

2016-10-18

オリンピックに金かけるなら歩道整備しろ

東京道路は車天国

東南アジアビックリの、

歩行者ギリギリを走り抜ける車

おかしいんかこの国はと笑われる前に、

狭い道は全部車道潰して歩道しろ

一方通行にして、逆走したらパンクするようにしろ

2016-10-17

東京オリンピックとかどうでもいいか

都内の狭い歩道を広げろ

線引いただけの路側帯がなんで歩道なんだよ

ガードレールつけろや

俺たちはボーリングのピンかよ

小学生のよこスレスレを30キロ制限なのに60キロで走る車を何度見た事か

金かけるべきは歩道の整備だろ

住宅がじゃま?

対面一車線ずつあるなら、そこは一方通行道路の一車線にしろ

車椅子に乗りながら書いています

2016-09-24

昨日一緒に呑んでた腐れ縁の友人から、中高の同期が

レイヤーにして法曹界の卵という訳がわからない存在になってることを

インタビュー記事へのリンクで知らされる。

友人にはバイであることをカムアウトしてるので

映画300みたい♡と記事中の写真から肉体美を十分くらい賛美したのだけど、

週5で映画を見てると云う映画好きにしてはノリが悪い。

聞けば、見たことがないらしい。

コーエン兄弟作品は全部観てるのに!?

高等遊民め。つい、イラッとなった感情を抑えようとした反動

単純に、友人は学校の旧い同期のことで盛り上がりたいのだと気づいた。

同期との繋がりが友人A一人だけになってしまったオレと違って

友人は定期的な交流があるようだった。先の記事も一週間前だった。

誰かが知らせてくれたんだろう。本人かも知れない。

そう分かって、雄っぱいではなくメイクを落とした顔の方を凝視したが、

200人程度の同期にこんなやつがいたかどうか、終電で別れる最後まで思い出せず、

ダルい気分で自宅に帰った。

自分から見て一人だけど、相手からはそうではない。

その晩は学校の中の狭い付き合いでしかまれない古い嫉妬を思い出して久々に胸が軋んだ。社会に出てから一方通行関係普通だと自明だと自分に言い聞かせてたんだが。

2016-08-27

自転車を除かない一方通行存在するのか

いまだに見たことがない

2016-08-21

http://anond.hatelabo.jp/20160821014255

全員さくらからだよ お給料もらって仕事してるんだからレビューはきっちり一方通行

自分で見に行って素直に好きだからかいってるかわいそうな消費者は勘弁してやれ

2016-08-18

http://anond.hatelabo.jp/20151224210815

ほとんどネタ感だけど、ひょっとして「自分大好きのナル男にひっかかるアホ女(数年後誰かに言われて突然「目覚める」とこまでがデフォ)」ってこういう人?という微妙説得力はあった。

鬼女板とかのDV報告とかでよく見るひどい夫の話。「確かに男はひどいけど、そもそもなんでそんなのと結婚したの?」みたいな。「相手の好きなもの相手自身」だったら、この人が相手のこと好きなウチは幸福だよね。一方通行だけど。

ああ。でもこの人自身がそもそも壮絶なナルシストである可能性があるか。

2016-07-27

歩きスマホが危ない道幅の狭い住宅街に、ポケモンGOが来た。

うちの子風邪でダウンしてしまったので、今日会社休みをとった。今、子どもは寝ているので、様子を見ながら、先週末から気になっていたことを、長文に書いてみよう。

立て込んだ住宅街で、アップダウンが激しく、カーブの多い道幅の狭い道路が入り組んでいる・・・東京23区住宅街では珍しくはない道路事情だろう。私が日常的に駅へ行くのに使っている道路も、そのような地域の人々の生活道路ひとつだ。道幅は広いところで5メートルあるが、全体をつうじては4メートルのところが多い。歩道は確保されていない。タクシー運転手も嫌がるような一方通行の狭い道だ。

その道路の中でもとりわけ道幅が狭い区間が、200メートルほどある。一番狭いところは道幅3メートル50センチだ。

この道は私たち住民生活道路だが、数百メートル向こうを通っている幹線道路への抜け道として「抜け道マップ」に掲載されたこともあり、ただ通過するだけの車も少なくない。近隣のコンビニ配送大型車もひっきりなしに通る。時間帯によっては学生ママチャリも多い。住民は、ベビーカー子供を乗せたお母さんも、歩行補助のカートを押して歩くおばあちゃんも、道路幅のわりに多い交通量に気を使いながら、びくびくして歩いている。

歩きスマホ」は、この道では、既に問題として指摘されていた。駅に向かう人と駅から歩いてくる人が狭い道路の両側にいるだけで、道幅は半分以下になる。車はひっきりなしに通る。そこで歩きスマホなどしたらどういうことになるか・・・後ろから車が来ていることにも気づかずに手元を見て歩き続けている人がいたので、見かねて、すれ違うときに「危ないですよ」と言ったこともあるが、「何、このおばちゃんは?」という目つきで睨み返されただけだった。

この道路は曲がりくねっている。道路幅が5メートル区域からカーブを描いて下り坂を曲がったところが幅4メートル、その先が幅3メートル台の区間で、歩きスマホという問題などなかった時代でも、カーブを無謀にも飛ばしてくる土地勘のない車と、歩行者自転車が接触しそうになるようなことは、しょっちゅうだった。せめて拡幅すれば危険は軽減できるとして、区の「安全安心な住み良いまちづくり推進評議会」のようなところでも議題になったそうだ。だが、道路の拡幅は一向に実現しそうにない。地権者が多すぎて埒が明かないのである

私自身も、先日、そこでヒヤリとする目にあったばかりだ。日曜日で、ママチャリスーパーに買い出しに行くため、道路の左側を徐行していた。私の10メートルほど前にはカートを押した高齢者ゆっくりと歩いている。道路の右側は幼い子ども2人の手を引いた父親母親が歩いていて、それだけで道幅は半分以下だ。ここに車が来たら危ないなあと考えながら、私が高齢者ほとんど追いついたときカーブの向こうから歩きスマホ若者が現れた。面白いマンガでも読んでいるのか、画面をスワイプしながらニヤニヤと笑って歩いてくる彼は、高齢者に気づかず激突しそうだ。そこは高齢者が慣れたもので、電柱の際に立ち止まり若者を先に通そうとした。歩きスマホ若者道路の左側をそのまま歩いてきて、右側の親子連れとすれ違おうとする瞬間、両者の間に確保された狭い空間を抜けて、私はママチャリで進もうとペダルを踏み込んだが、急に歩きスマホ電柱に気づいたのか、道路中央に向けて足を踏み出した。「フラフラ道路の真ん中に出てきた」のである。このままでは私が歩きスマホに激突してしまう。反射的にハンドルを切って自転車の急ブレーキをかけた。後続の自転車が反射的に左に出て、電柱脇の高齢者に気づいたのだろう、左後ろからブレーキの音がした。同時に、カーブの向こうから下り坂でスピードに乗ったミニバンが曲がってきた。子どもの「あっ」という声が聞こえた。歩きスマホは下を向いたままこっちに歩いてくる。耳にイヤホンがささっているのにそのとき気づいた。後続の自転車のおじさんが「っぶねぇ!」と叫ぶ声がした。

いったい、どのようにして何事もなく済んだのか、回想しても思い出せない。私は気づいたら道路の右側、縦一列になって立ち止まっていた親子連れの後ろで自転車を降りてハンドルを支えていた。道路の左側では、電柱脇の高齢者も、歩きスマホ若者も、後続の自転車も、通り過ぎていくミニバンとは接触していなかった。一瞬のできごとだった。でも、長く感じた。スローモーションに見えた。

歩きスマホが急に道路の真ん中に出る前に、一瞬でいいから画面から目を上げて周囲を確認し、できれば道路脇に寄って立ち止まってくれていたら、あんなふうにヒヤリとすることはなかっただろう。

こういう環境に、「ポケモンGO」がやってきた。この先で道路が少し広くなっているところに、何かのスポットがあるのだそうだ。

日曜日夕方、狭い道路で、2列に広がった男子2人組が、一心不乱にスマホを見つめて歩いてくる。「男子」と言っても20歳は超えているようすだ。普段この狭い道路を使っていれば、体の小さな子どもでも、この道で2列になって歩いたりはしない。その後ろのほうには、自転車にまたがって、ハンドルにもたれかかってスマホ操作をしつつ、つま先で地面を蹴りながらふらふらと進んでいく15歳くらいの少年もいる。前方などまるで見ていない。この先はカーブだし、右方の道から出てくる車もいる。事故が起こらなければいいけれど。

ポケモンGOで歩いて健康増進」と言って宣伝するのはよい。スマホアプリを起動したままで歩くだけなら何の問題もないのだからしかし、せめて、画面を見ていなければならないようなシーンは公園敷地内のような広いスペースや、歩道が整備されている場所だけにしてくれないだろうか。それでも「歩きスマホ」に係る問題は避けて通れないだろうが、人と自転車と車がひしめきあっている幅の狭い生活道路に、多くの「歩きスマホ」が出没することは、シャレにならないのだ。

ARがどうのこうのなどという高尚なことは、現に人間暮らしているリアル世界に持ち込むのなら、交通事故のような基本的安全性を確保してから実験してほしいと思う。

2016-06-23

一方通行友達しかいない

こっちからは連絡するけど、向こうから来ることがないとか、

向こうからは連絡来るけど、こっちからはしないとか、

そういう一方的な付き合いしかない

2016-06-10

日本は狭い道が多すぎて、また歩行者蔑ろにしすぎている件

車が対面でそんなぎりぎりなら

一方通行の一車線にしてしま

歩道を両端に整備するべきである

アホが世の中を壊す瞬間に立ち会ってしまった

http://anond.hatelabo.jp/20160610121720

2016-06-05

ガソリンスタンドで働いてた頃の話

自分が働いてたスタンドは狭いか一方通行をお願いしてたんだけどたまに逆走してくる車がいる。

初めて来たのならそんなルールも知らないし一方通行の表示も見逃したんだろうから別にいいんだけど

逆走してくる車は超高確率で給油口の位置も間違って入ってくる。

どうして給油口の位置も間違えるんだろうと働いてた当時は不思議に思ってたんだけどマジでどうしてなんだ?

ちなみに一方通行を守る車は給油口の位置を間違えることは滅多にない。

2016-05-11

http://anond.hatelabo.jp/20160511120808

指示というと語弊があるが、「管理職からこそ得られる情報」ってあるだろ?

そういうのは管理職である上司からしか発信できないわけだから、ただ報告を待つんじゃなくて上司の側からの何らかのアクションがあってしかるべきだと思うんだ。

そもそも「報連相」とは部下→上司という一方通行的なものではなく双方通行的なものでなければ意味をなさないだろ。

2016-05-09

不快報道番組

逆走が多い一方通行道路隠し撮りしててなんかなぁ

前に敷地内を通り抜けした車にインタビューして勤務先に電凸してて

交通違反警察に罰せられるならわかるけどこれ私刑じゃねーかみたいな

2016-04-26

anond:20160426124418 続き

プレビューまでは全文見えるんだけどな。すまんやで。しかもまだ続く anond:20160426150324

anond:20160426124418 の続き

おそらく、上記のサービスを使っているシステムのうち、この問題のせいで悪用可能なものは多数あることと思います特にデスクトップアプリでは、コンパイルされたアプリバイナリから秘密情報がそのまま取り出せることは、サービス側で何も危険なことを要求していなくてもよくありますGoogleOAuth の使い方を多数提供しているうちで、client_secret と redirect_uri を両方受け取るエンドポイントのことが書いてあるのはたったひとつだけだというのは重要な点です。少なくとも Google場合、redirect_uri があっても、このエンドポイントウェブブラウザベースアプリには推奨していません。しかし、だからといって実際に独自ブラウザでそれを使う人や、このフロー標準的ブラウザ用のエンドポイントコピーする人が一切いなくなるはずがありません。それに加え、Google例外なのであって、世の中にはセキュアな OAuth フローを受け入れず client_secret (や同等品) を常に渡すよう要求する愚かなサービスが今も満ちあふれており、そのフローウェブブラウザを通るときでさえも要求しているのです。さらに悪いことに、こうしたサービスの多くはユーザウェブブラウザを通して「しか」利用できないのですが、これは後ほど詳述します。

前掲のセキュリティ文書は、アプリ認証情報 (client_id と client_secret) を盗んだ人ができる悪行にいくつか言及しています。以下に、この攻撃と組み合わせることで (これまで筆者の知る限り公表されていない) 危険行為を実行可能にする問題をいくつか取り上げますさらに皆様の独創性にかかれば、「秘密」のはずのものを盗んだ人が悪用できる方法は他にも発見できるはずです。

セキュアでないトークン

トークンベース認証は多くの開発者にとって新しい概念です。そのため誤解も多く、EVS のようなもの設計する開発者の中にも、ただ何かの設計ガイドライン (たとえば OAuth) に従って API の動作を決めれば、あるいは他のプラットフォームのしていることをコピーすれば、自分プラットフォーム自動的にセキュアになるはずだと考える人が少なくありません。しかし何かをセキュアにするには、その要素ひとつひとつを余さずセキュアにする必要があり、それらの組み合わせすべてをセキュアにする必要があり、全体の枠組みもセキュアにする必要があります。思い出してください、全体のセキュリティ強度はその弱点の強度に等しいのですから、何らかの大まかなフレームワークを固守することだけに頼りきって、その通りに使う限り何をやってもセキュアだ、などと安心するわけにはいきません。OAuth ベースフレームワークそれ自体は、その内部要素のセキュリティを確保することに関しては殆ど何もしてくれません (ある種の要素で、あからさまにセキュリティを害するものだけは別)。

トークンベースシステムで少しでもセキュリティらしさを出すには、最低でもトークン生成に暗号学的にセキュアな擬似乱数生成器 (CSPRNG) を使う必要がありますが、この話題はあまりよく理解されていません。さらに悪いことに、一般的スクリプト言語の適切な CSPRNG 用 API は非常に少なく、しかしそうしたスクリプト言語が、人気ある最新サービスの多くを設計する際の基礎となっていることが多いのです。

もし生成されるトークン予測可能であれば、攻撃者はトークンを推測するだけで別のユーザになりきって悪意ある行為をすることができてしまます。筆者は、fortune 500 クラス大企業による OAuth ベースサービス一種の単調増加 ID (おそらくデータベースフィールド?) をそのままトークンに使っているのを見たことがあります。他にも、生成されるトークンがすべて単調関数の出力のようなサービスもありました。よく調べてみると、それは現在時刻に基づく非常に単純なアルゴリズムでした。こうしたシステムでは、まず自分としてログインし、現在トークン ID を見て、その後の ID を予測すれば、続く任意ユーザになりかわってトークン交換その他の操作にそれを使うことができるでしょう。他のテクニックと組み合わせれば、もっと標的を絞った攻撃も可能です。

このクラス攻撃は前述のセキュリティ文書で「4.5.3. オンライン推測による新規トークン取得の脅威」や「4.6.3. アクセストークン推測の脅威」に分類されています。この問題には解決策があるとはいえ、現時点でこの間違いを犯しているサービスの膨大さと、この間違いの犯しやすさを考えると、任意OAuth ベースサービスが外部レビューセキュリティを証明してもらえる可能性はあまり高くありません。

本欄の主眼ではありませんが、乱数に対する攻撃の中には、セキュリティを固めた CSPRNG を使っていないと OAuth ベースサーバを完全に破壊してしまえるものもあります。こうした問題は他のシステムでも非常に困ったものではありますが、動作のすべてが乱数のやりとりの上に成り立っている普通OAuth 実装では、より一層この問題が際立ちます。こうしたトークンは EVS のサーバ側で生成され、「普通実装における」OAuth がよくやる使い方ではサーバ信頼性を奪い、関連するトークンすべての予測可能性を高めていきます。最新の攻撃手法を防げるセキュリティ強化 CSPRNG が用意できないのであれば、もっとハードルの低い別のプロトコルに乗り換えたほうが良いでしょう。

一方、一部の OAuth ベース実装乱数必要性クライアント側に移すような構造になっていることも注目しましょう。色んな意味で、これは問題を別の場所に移しただけではありますが、サーバ側のアタックサーフィスを減らすのは事実です。これによって、少なくとも情報強者利用者は、信頼できるサービスをセキュアに使うことが可能になります。ただし情報弱者脆弱なまま放置ですが。今回の例に当てはめてみると、この種のセットアップでは AFCP の開発者が頑張って EVS をセキュアに使えるようにすることと、EVS 自体が陥落する危険回避することは可能ですが、ABC や XYZ が EVS をセキュアに利用するかどうかは別問題です。

クロスサイトリクエストフォージェリ (CSRF)

本論に入る前に指摘しておきたいのですが、CSRF 攻撃はその名前に反して、外部サイトからスタートする必要はありません。CSRF 攻撃というのは、自サイトへのリンクユーザが貼れる、掲示板メッセージングソフトのようなサイト自体からでもスタート可能なのです。

色々な手法CSRF に立ち向かうべく設計された数々のテクニックフレームワークがあります。これらのシステムの多くは、OAuth ベースのもの統合すると使いものにならなくなったり、サイト攻撃さらしかねない行為を促すことがあります

CSRF を防止するひとつの仕組みとして、ブラウザから送られる referer (原文ママ) が外部サイトを指していないことを確認するというものがあります。多くの OAuth 実装ユーザ特定の外部サイトから連れてくるよう要求しまから、この防御策は執行できません。OAuth サーバリダイレクトする膨大なサードパーティドメイン、また関係する URL やドメインの完全なリストは明文化されていないうえに折々で変更があるため、EVS のドメインとページ全体をホワイトリストにするのは不可能です。

また、EVS の提供者が寝返って AFCP を攻撃しようとする可能性がないかどうかも検討する必要がありますOAuth の背後にある原則ひとつOAuth ベースサービス側が利用者を信用しないことです、しかし同時に、利用者側には CSRF 回避策を見なかったことにしてサービス側を完全に信用することを要求しています理想認証システムというものがあるとすれば、一方通行ではなく相互レベルの不信を確立するでしょうに。

転送元と転送先のどちらかだけの、部分的ホワイトリストというのも難しいことがあります。使っている CSRF 対策フレームワークによりますが、機能オンオフ中間がなく、特定のページや転送元だけを無効にすることができないかもしれないので、その場合 EVS 利用者CSRF 対策フレームワークを一切使用できなくなります

OAuthCSRF 攻撃を防ぐ CSRF トークン指定するようにと、オプショナルな state パラメータ定義していますしかしながら、OAuth ベースサービス一般的state の長さや文字種を制限し、要求どおりそのままでさないことがあるようです。そこで、おかし互換性問題が起こるため、多くの OAuth ベースサービス利用者リダイレクトのエンドポイントにおける CSRF 防御をすべてオフにせざるをえない状況に追いこまれています。これは「10.14. コード・インジェクションと入力バリデーション」に分類されていますstate パラメータの別の懸念は、EVS 側で stateアクセスのある人はだれでも、リクエスト改竄して、それ以外はまったく有効なままのパラメータを付けて AFCP にブラウザを送り返すことができるという点です。

OAuth ベース API の利用者は、自分アプリサービス登録する際にひとつか複数の URI をカッチリ決めておくよう求められるという制限も課せられています。これは redirect_uri に使えるホワイトリスト URI です。この仕組みにひそむ重大なユーザビリティ問題は後述するのでひとまず措くとして、この制限のせいで開発者は、state パラメータや他の潜在的危険の伴うアイディア姑息な工夫をこらし、泥沼に沈んでいくはめになっています。多くの OAuth ベースサーバは、ホワイトリスト URI をひとつしか許可していなかったり redirect_uri との完全一致のみ有効パラメータの追加を認めなかったりしています。このせいで開発者たちは CSRF 対策フレームワークの利用をやめたり、あらゆる危険ものstate パラメータに詰めこもうとし始めたり、浅薄システムを自前で作り出したりしています。その結果、redirect_uri と state の組み合わせによってはユーザ不適切なページに誘導する危険性が出てきます。これは「10.15. オープンリダイレクト」に分類されます

こうしたリダイレクトの問題は、パラメータをしっかり認証していないせいで、それ自体悪用可能なのですが、これを前述の「OAuth サービスへの偽装」問題と組み合わせるとユーザ大惨事をもたらしかねません。盗んだ client_id と client_secret を使えば、悪いやつらは AFCP とまったく同じ情報認証できるので、本物の AFCP にも見ぬけないようなリダイレクトを作ることができます。また、悪意あるユーザも、本来自分の持っていない AFCP 内の権限を取得するような state パラメータの利用方法改竄方法を見つけることができるかもしれません。その際には、おそらく盗んだ認証情報も使うことでしょう。概して、「普通実装における」OAuth の低品質設計のせいで、また特定の分野に関する教育レベルが低い外部開発者の直面する問題のせいで、OAuth ベース利用者に対する攻撃はしばしば、本来あるべき状態よりもずっと容易になっています

ここで読む意義のあるものとして、さらに「3.5. リダイレクト URI」「3.6. state パラメータ」「4.4.1.8. redirect-uri に対する CSRF 攻撃の脅威」があります

章のまとめ

セキュリティに関して言えば、「普通実装における」OAuth仕事ぶりはとてもひどいです。OAuth が目指していると思われるセキュリティ目標の多くは、達成されていません。さらに、OAuth ベースサービスの中には、種々の攻撃に対して無防備でいることを利用者公然要求するものがありますサービスをセキュアに使える場合も、そのことが知られているとは限らず (サービス側の、トークン生成手法といった重要セキュリティ詳細が明文化されていないうえにクローズドソースなため)、OAuth は今なお多くの低品質プログラミング習慣を招いていますOAuth は外部の開発者を守る点でほとんど何もしませんが、そうした開発者が使っている各種フレームワークの方はといえば、こちらも真のセキュリティ提供していなかったり、厳しい自制と注意がなければセキュアに使えなかったりする代物です。

この記事についていえば、個人的蔓延していると思った問題の一部を取り上げたものに過ぎません。この中には、極度に低質な、一切 OAuth の規格で義務付けられていない慣習を、他所OAuth に使っているのを見たまま開発者コピーした結果というものもあります

OAuth ベースサービス開発者もその利用者側の開発者も、OAuth ベースプラットフォーム実装したり利用したりするためには、ここでリンクした文書をすべて読んで理解する必要があります。挙げられている 50 クラス攻撃も、各クラスの深刻度も完全に把握する必要がありますし、そのうえで「実装仕様書セキュリティガイドラインには漏れがないとは限らない」ことにも留意すべきです。この記事は公式文書にない問題をいくつか取り上げているとはいえ、OAuth セキュリティ問題の表面をなでているに過ぎないことも覚えておくべきです。ここに混ざって、公式 OAuth 提案に加えられる変更点はどれもまったく新たなセキュリティ問題を引き起こすものですが、残念ながら変更はよくあることなのです。そこで各々が、乱数生成やセキュリティ調査技術といった OAuth 以外のセキュリティ関連分野も理解していなければ、OAuth でそれなりのレベルセキュリティを実現することはできません。

真のセキュリティをお探しの方には、よそを探すようお勧めします。最後の章で OAuth の代わりになる選択肢をいくつか取り上げます

ユーザビリティ関連

(略: ふつう実装では、サービス側がプラグを引き抜くようにして自由利用者出禁にできる。ビジネス的にもまずいし、悪意あるユーザが API 利用者を騙って出禁になるとアプリへの DoS になる。)

(略: サービスからは API 利用者という大きすぎる単位しか見えないので、たとえばビデオカメラアプリ単位で利用帯域などを制限せざるを得ないが、そうするとそのビデオカメラは、一部ヘビーユーザのせいで他のユーザが締め出される事態になる。OAuth 以外のサービスならふつうユーザ単位対策としてユーザ開発者アカウントを取得してもらうのも面倒すぎる。ていうか手動プロセスを挟んでたり。)

(略: ふつう実装SaaS モデルしか見ていないので、URI を持たない AFCP のような社内ソフトや、ビデオカメラのようなデスクトップアプリには使えない。アプリcURL 的なもので API を叩こうとしても、JavaScript必要だと言い張るサービスもある。グローバル企業が地域別にドメインを分けていたら URI が足りない。客ひとりひとりにサブドメインを与える製品だと URI が足りない。足りるとしても追加・更新メタ API で簡単にできない。ひとつの URI ですべてのリクエストをこなすのセキュリティ問題もあり、ロードバランス等の必要性も出るし、社内ソフトデスクトップアプリに余計なウェブサイトへの依存性を加えることになる。httpサーバlocalhostで立てるとかアホか。)

(略: オープンソースしづらい)

(略: トークンが定期的に期限切れになるので可用性が下がる。たとえばビデオカメラから複数の動画をアップロードしている途中で切れたらムキーってなる。再認証して途中からできるのもそれはそれで CSRF の温床。AFCP のような場合は期限切れがあってはならないので、パスワード等を預かる

OAuthのことを1ミリも知らない俺が

OAuth ディスの記事を酒の勢いで訳してみたゾ。前半はつまらないから、「章のまとめ」か、それ以降だけ読むといいゾ。なぜか後半が切れてた。こっちだけでいいゾ anond:20160426145507 anond:20160426150324

http://insanecoding.blogspot.com/2016/04/oauth-why-it-doesnt-work-and-how-to-zero-day-attack.html

OAuth がうまくいかない理由と、既存サービスゼロデイ攻撃方法

OAuth とは

認証 (authentication: 本人確認) と承認 (authorization: 権限付与) のシステムを設計し、API を規定し、複数の異なるシステムを統合するために用いられる提案をまとめたものです。

OAuth には色々な種類があり、version 1.1a や 2、その各部の上に他の規格を乗せたものなどが存在します。世の中に出回っている数々の実装によって、具体的な利用状況は大きく異なります。

おことわり

前にも OAuth について書いたことがあり、たくさんの反響をいただきました。前回の記事に対する批判の一部を避けるため、今回の記事について先に断っておきたいのですが、この記事は OAuth の使われる典型的な場面に焦点を当てており、論じられる点のほとんどは、何らかの方法OAuth を利用する大手サービスのほとんどすべてに当てはまるということです。

言いかえると、OAuth を用いているあらゆるプラットフォームが壊れているとは限りません。OAuth にはバリエーションが多いうえに、2.0 だけに限っても 76 ページに渡るパターンがありますので、OAuth に基づいた何かに適合していながらもセキュアであり、使っても問題ないものは存在しうると言えます。ですから、あなたお気に入りOAuth 実装や設計が、ここで論じられる問題の一部または全部を免れていることもありえます。確率は低いですが。

また、OAuth を使っているものの中には規格を誤用しているものがあるとか、OAuth はその使い方を強制しているわけではないとか言う人もいるかもしれません。どちらにせよ、ここでは特定の OAuth ベースの規格について述べるのではなく、現状で大手が OAuth をどう利用しているかについてを、それが規格に適っているかどうかに関わりなく論じるつもりです。こうすることで、多くの読者に影響を与えることになるでしょう。危険な方法OAuth を使っているサービス利用者であっても、また自ら OAuth ベースサービスを管理していて、他のみんなが作っているのを真似てプラットフォームを作ろうと思っている人だとしても関係があるのです。

記事の構成

この記事は長くなりますし、言ってみればほとんどの章はそれ自体でひとつの記事として十分なほどの話題を扱いますので、大まかな流れをご説明しておきましょう。

この記事は、現在 OAuth 業界でおこなわれていることを調査した結果のまとめです。OAuth を使う製品のすべてにこの記事のあらゆる点が当てはまるというのではなく、危険だったり無価値だったりするサービスの背後に見つかった慣例や根本原因を紹介する記事です。

この前書きのあとは、まず OAuthセキュリティ欠陥を分析することから始めるつもりです。こうした欠陥の中には、セキュリティコミュニティでよく知られていて、書籍などですでに分析されている一般原則が当てはまるものもあります。しかしこの記事では書籍化されていないケースも扱いますし、有名な欠陥についても、平均的な開発者および責任者に理解しやすく、対策の必要性がはっきりするように工夫するつもりです。

その後は、OAuth の主要素が一般的に言ってどのように実装されており、そうした普通の実装がどのようにサービスを使いものにならなくするのか、すなわちそのサービスで達成できることを極度に、不適切に、かつ意図に反して低下させてしまうのかを分析します。ごく一部のケースでは回避策の足がかりになるかもしれないテクニックについて論じますが、そういうのを実装する馬鹿らしさにも注目します。こうした記述の中では繰り返し何度も、OAuth を使う人たちがどれほど自分と自分のビジネスにとって損なことをしているのかが説明されます。

最後に、OAuth が適切に使われうる数少ない場面と、すでに利用されている OAuth の代替品を簡単に取り上げます。代替技術に関する調査の結果を提供するつもりですが、その中には Amazon のような大企業がセキュアで使いやすく信頼性の高い API を実現するために何をしているかの報告も含まれるでしょう。

責任ある情報公開

いま普通に使われているかたちにおける OAuth の欠陥の幾つかを悪用すれば、大手サービスに対して強力な攻撃を仕掛けることができます。OAuth に対する攻撃は何も新しいものではありません。IBM や Oracle を含め、懸念した IETF メンバーOAuth ベースサービスに対する攻撃を 50 クラスも記述した 71 ページもの文書を 3 年以上前に出したように、また筆者も前回の記事でこうした点のいくつかを議論したようにです。それにも関わらず、OAuth ベースシステムの主要なセキュリティ欠陥は非常に蔓延しています。

筆者は、いくつかの大手企業の役員や開発者に、そこの OAuth ベースシステムが抱えるセキュリティ欠陥を指摘したことがあります (そのうちのひとつは 4 年前のことです) が、全員、自社システムを修正するために一切何もしませんでした。まるで、OAuth の人気度からして、他の現実的な解決策をひとつも聞いたことがなく、それゆえに OAuth が最もセキュアな選択肢に違いないと決めてかかっているようです。どうも、OAuth のコア原則に対する攻撃のデモを文書化した情報も、聞いたことがないか、肩をすくめて無視するかしているようです。そこで、この情報をもっと広く拡散することによって、影響のある人たちの尻を蹴りとばしてあげたい、そしてサービスを設計あるいは管理している人たちにモーニングコールの役割を果たしてあげたいと願っています。

というわけで、OAuth ベースの何かを提供あるいは利用するご自分のサービスを調べて、こうした欠陥の一部あるいは全部が存在することに気づいたなら、どうぞ責任をもってこの情報を取り扱ってください。ご自分のサービスを適切にアップデートしたり、関係する問題に対応するようビジネスパートナーに適切な圧力をかけたりしてください。

ここで言及されている情報やリンクされている情報は今のところ既存のサービス悪用できるかもしれませんが、どうぞ責任ある行動をとり、他人のもの破壊するのではなく改善することを目指してください。この記事は、自社サービス不適切に実装している人たちへのモーニングコールのつもりで、その改善を促すために書いているのであり、悪用したがっているハッカーたちのハウツーもののつもりではないのです。

想定する利用形態

この記事では、ふたつのシナリオに注目して、その場面でどのように OAuth が組み合わされているのか、そしてなぜうまくいかないのかを検討します。記事を通して何度もこれらのシナリオに戻ってきますので、頭に入れておくことは大事です。

まず、Exciting Video Service (略して EVS) というサービスを思い描いてみましょう。ユーザが動画をアップロードしたり友人と共有したりできて、完全公開にしたりアクセス制限を設定したりできるようになっています。また EVS は動画のアップロードや削除、およびだれが視聴できるかの権限管理に OAuth ベースの API を提供しています。

ただ、例としてこの想像上のサービスに焦点をあてますが、論じられる問題はあらゆるサービスにも当てはまります。ファイルであろうと文書ストレージであろうと、カレンダー管理やオンライン会議、ディスカッショングループ、はたまたリソース管理であろうと OAuth ベース API を提供する他のいかなるものであろうとです。また、筆者は本当にどの特定の動画サービスのことも言っていないということを覚えておいてください。問題点の一部あるいは全部は、OAuth を使っている既存の動画サービスに当てはまるかもしれませんが、EVS がそのサービスのことを指すわけではありません。どれが当てはまるかは読者への練習問題ということにしてもいいですね。

ひとつめのシナリオとして、ビデオカメラの製造会社を想定しましょう。そのビデオカメラには、録画した内容を EVS にアップロードする機能のあるソフトウェアを付属させたいと思っています。つまり、ユーザビデオカメラを自分のコンピュータに接続して、その独自ソフトウェアを開き、ビデオカメラからアップロードしたい動画を選んでしばらくすると、それが EVS にアップロードされているというものです。

ふたつめのシナリオとしては、ある中小企業が職員用に EVS で 50 アカウントを購入し、全職員が動画をアップロードして同じ部門の職員と共有できるようにする、ということにしましょう。この会社は A Friendly Custom Platform (AFCP) というソフトウェアで職員と所属部門の管理をしており、この AFCP サービスを EVS に統合したいと考えています。望んでいるのは、管理者が AFCP を使ってだれかを営業部門に配置したら、その職員が自動的営業部門メンバー所有の動画すべてに対するアクセス権を取得するということです。営業部門からいなくなった人には逆のことが起こるようにもしてほしいと思うはずです。

問題点

セキュリティ関連
認証情報の盗難 / アクセス権の詐称

トークンベースの認証システム (OAuth のコア) が現在よく利用されている最大の理由のひとつには、「適切に実装されれば」サードパーティアプリサービスに各ユーザの認証情報 (パスワード等) を提供しなくて済むという点があります。サードパーティに個人ユーザの認証情報を渡すのは、以下の理由から望ましくありません:

上記の問題点は、OAuth だけでなくあらゆるトークンベースの認証システムでも回避できます。よく OAuth の強みとして挙げられていますが、独自というわけでは全然なくて、他にも同じ強みを実現しつつ OAuth の弱点のない選択肢はあるのです。

さて、確固とした土台に基づいてはいるものの、「普通の実装における」OAuth は、上記の問題を回避しようとして以下のような手順に沿ってシステムに情報を提供します:

  1. ユーザサードパーティアプリ/サービス (たとえば AFCP) を訪ねて、特定のサービスと統合したいことを知らせる。
  2. AFCP は、EVS でホスティングされた特別なログインページを出してユーザに EVS の認証情報を入力させる。
  3. EVS は、その指定したアクセスレベルユーザが本当にサードパーティ (AFCP) へ与えたいのか確認する。
  4. EVS は AFCP に一種のトークン (複数の場合もある) を提供し、各種 API コールに使えるようにする。

このトークンユーザの認証情報ではありませんから、そしてひとりのユーザひとつアプリの組み合わせだけに有効で、指定された権限しか持たず、あとから破棄されるようになっていますから、きちんと前述の問題点を回避しているように思えます。しかし実際には、ちゃんとした土台を核として持っているにも関わらず、OAuth の普通の実装で使われているこのフローは、上に挙げた問題すべてに対処しているとは言えません。

この設計はそもそも危険なスタート地点から始まっています。セキュアなプラットフォーム設計の第一原則は、危険な地点から始まったものは既にダメ、逆転不可能、ということです。手順 1 のせいで、EVS 自体ではなく EVS を利用するサービスから始まっているので、ユーザは最初の一歩からして中間者攻撃を受けたような状態にあります。これは、かかってきた電話に個人情報や口座番号などを教えるようなもので、自分の使っているサービスの者だと名乗っていますが、番号が本物かどうか分からなかったり非通知だったり、という場面のコンピュータ版だと言えます。最近はこういう詐欺がたくさんありますから具体例を挙げる必要はありませんね。要点は、接続を開始する相手が信用できなければ、その接続は一切信用できないということです。EVS 自体の側から手順を始めるのでない限り、上に挙げた目標をすべて実現する API 利用のためのセキュアな認証システムは設計不可能です。

(略: 手順 2 で、それっぽいページに誘導すれば認証情報を盗める)

(略: そうした詐欺を企業自体が後押ししているような風潮もある)

(略: スタンドアロンアプリなら、ログインを詐称する必要すらない)

この種の攻撃は前述のセキュリティ文書で「4.1.4. 脆弱性を突かれたブラウザ組み込みブラウザを使ったエンドユーザ認証情報のフィッシング脅威」として分類されています。提案されている解決策は?

クライアントアプリユーザに直接認証情報を求めることは避けるべきだ。加えて、エンドユーザフィッシングや良い習慣について教育を受けることもできる。良い習慣は、たとえば信用できるクライアントにしかアクセスしないことだ。OAuth は悪意あるアプリに対していかなる防御策も提供していないので、エンドユーザインストールするネイティブアプリすべての信頼性に自分で責任を負う。

さらに

クライアント開発者は、ユーザから直接に認証情報を集めるようなクライアントアプリを書くべきではなく、システムブラウザのような信用できるシステムコンポーネントにこの役目を移譲すべきだ。

基本的に言って、OAuthセキュリティガイドラインは、OAuth を利用する開発者ユーザを攻撃しようとすべきではないとか、悪いことをしてはならないと言っています。外部の開発者が悪いことをしないことに頼るというのは、正気のサービス設計者が依拠するセキュリティモデルではありません。

私の知る主要な OAuth ベースサービスはほぼすべて、ここに概説した手法で攻撃可能です。

OAuth こそセキュリティの新たな金字塔だとお考えの皆さん、目を覚ましてください! 「普通の実装における」OAuth は、始まる前から負けていますよ。OAuth が存在するよりずっと前に実装された数多くのシステムはセキュアで、この問題を効率的に回避しています。残念なことに、あまりに多くのサービスが、せっかくセキュアだったのにインセキュアな OAuth モデルに移行してきました。だれかが開発者管理者に「OAuthもっとセキュア」「先取り思考」「将来への投資」とか何とか素敵な (しかし具体性の皆無な) バズワードを並べたてたからでしょう。ほとんどの場合、こうした変更は本当に既存の問題に対応しているのか、あるいは以前のシステムより幾らかでも良くしてくれるのかどうかをレビューすることさえなく実装されています。

OAuth サービスに偽装

OAuth ベースサービス設計でよく見かける間違いは、ブラウザ用に、パラメータひとつとして client_secret (あるいは同様のもの) を受け取るエンドポイントを提供することです。OAuth の client_id と client_secret パラメータは、基本的に言ってサードパーティプラットフォーム固有の API ユーザ名とパスワードと等価ですから、EVS の API を利用する開発者だけにしか知られるべきではありません。パスワード同然のものなのですから、client_secret パラメータは「絶対に」ユーザブラウザを通して送信すべきではありません (ヒント: パラメータ名の中に secret という言葉が入っているよ)。アプリサービスユーザがその client_id と client_secret を見つけることができる場合、そのユーザはそのサービスのふりをすることができ、潜在的には何かイケナイことができてしまうということになります。さらに注意すべき点として、client_secret パラメータを別の名前にするサービスもありますから、ご自分の関係するサービスをよくチェックして、他のパラメータも秘密にする必要があるのかどうかを調べてください。残念ながら、重要な変数が自分の素性をいつも表に出しているとは限らないため、この問題は意外と多く存在しています。加えて、client_id だけ使う認証フローOAuth の上に乗せるサービスも出てくるでしょう。これには用心してください。特定の状況では、そういう client_id はまさしく client_secret 同然の働きをするのですから。

「普通の実装における」OAuth は、ウェブブラウザを使ってユーザを複数のウェブサイトに移動させるわけで、ひとつサイトから別のサイトに client_id と client_secret (あるいは同様のもの) を送ってもらう必要があります。そうやって、たとえば AFCP と EVS の間でこれらをやりとりするわけですから、ユーザブラウザの HTTP ログをモニタリングすれば、本当に見えてしまいます。これはアプリに組み込まれた独自ブラウザ各種でも、単に右クリックすれば何らかのネットワーク・ログ機能を持つ何らかの inspector にアクセスできてしまう場合などには可能です。

EVS と連携した AFCP にこの欠陥があると、AFCP に少しでもアクセス権限のある職員に本来の権限より多い権限を取得させてしまい、本来アクセスできないはずのところに許可が下りてしまう危険があります。別の例では、仮に FacebookGMail 用の OAuth エンドポイントを利用しているとして、client_id と client_secret の両方がブラウザを通して送信される場合、Facebookユーザは全員 GMail に対して Facebookのもののふりをすることができてしまうということです。

この問題は、OAuth エンドポイントユーザウェブブラウザから平文で client_secret を送ってくることを期待するときにはいつも存在します。あるいはそうする必要があると誤解した API 利用者が、埋め込むべきでないところに secret を埋め込むときもです。この脆弱性が存在している可能性が高いのは、エンドポイントが client_secret (または同等品) と redirect_uri の両方を期待する (あるいはオプションとしてでも受け付ける) 場合です。redirect_uri パラメータは、今回のケースで言うと EVS がユーザログインさせたあとでそのブラウザをどこに送るべきか指示するために使うよう設計されています。そうやって redirect_uri がエンドポイントへの転送に使われている場合、その処理はユーザブラウザで実行されることが期待されているわけです。主要な OAuth 文書はどちらも、client_secret と redirect_uri の両方をこうした用途に使うようなケースを指示したり求めたりはしていません。

ざっと検索してみたところ、残念なことに、潜在的に違反の可能性があるそういった OAuth ベース API がたくさん見つかります。GoogleOAuth の色々な利用方法を提案していますが、その中に、両方を一緒に使うことを広めるフローひとつあります:

client_secret: 開発者コンソールで取得したクライアントパスワード (Android, iOS, Chrome アプリとして登録した場合のオプション)

Citrix もこんな間違いをしています:

(略: 以下、実際に脆弱だと確認したわけではないが、secret と redirect を併記しているサイトが列挙されている。)

Google で 2 分検索しただけでこのリストができました。皆様がもうちょっと労力をかければ、ずっと多く見つかることでしょう。ただし、上記リストは、こうしたサービスのどれかが脆弱だとか、誤用しやすすぎるということを直接に示すものではありません。色々な要素があり、たとえば Zendesk は特にこのケースでは redirect_uri パラメータリダイレクトに使わないと明言していますし、アプリからエンドポイントを呼ぶときはフル機能版ブラウザではなく curl を使うべきだとさえ書いて、開発者が危険なことをするような誤解を極力避けようとしています。それでも、経験の浅い開発者はこうしたエンドポイントを独自ブラウザで読もうとするかもしれません。さらに、この組み合わせが世に出回っているというだけで開発者の警戒心が下がっていき、経験を積んだ OAuth ベースサービス開発者でさえも似たような状況で潜在的ヤバイ誤用を気にせず適用するようになってきています。特に client_secret が別の名前になって、「秘密を守る」という概念が失われている場合はそうです。

サービスがこの点に関して壊れている指標となるのは、人気のある複数の OAuth ライブラリがこのサービスでうまく動かないときです。そういうサービス一般的にいって独自の「SDK」を提供しており、サードパーティ開発者が選んだライブラリではこのフランケンシュタイン的な OAuth が使えないと苦情が来たときにはその SDK を使うよう指示します。こうしたカスタマイズは気付かれないまま進行することも多くあります。開発者の大多数は、SDK が提供されているなら、わざわざ手元のソフトで頑張らずに済ませたいと思うものですから。

この種の攻撃は前述のセキュリティ文書で「4.1.1. クライアント機密情報を取得する脅威」に分類されています。しかしサーバウェブブラウザを使用を要求し client_id と client_secret (または似た用途のもの) を同時に渡させるという具体的な攻撃パターンには一言も言及がありません。おそらく、その文書の執筆陣の予想では、こんな馬鹿げたサービスはだれも設計しないだろうし、その API を使う開発者もそれを独自のウェブブラウザや SDK で使ったりはしないだろうと思っていたのでしょう。こうした開発者OAuth の規格からバラバラに取り出した要素をグチャグチャに混ぜて接着しておいて、自分のプラットフォームOAuth 本来のセキュリティを保持していると思っています。そのツギハギのせいでどんな新しい問題が入り込むかもしれないのに、そこは一顧だにしません。残念ながら、これが近年の OAuth 業界によくあるやり方で、この既に猛威をふるっている問題は、パレード参加者がどんどん増えて、人が使っている手法や、使っている「と思う」手法をコピーしていくことで、とどまるところを知らない連鎖になっています。

おそらく、上記のサービスを使っているシステムのうち、この問題のせいで悪用可能なものは多数あることと思います。特にデスクトップアプリでは、コンパイルされたアプリバイナリから秘密情報がそのまま取り出せることは、サービス側で何も危険なことを要求していなくてもよくあります。GoogleOAuth の使い方を多数提供しているうちで、client_secret と redirect_uri を両方受け取るエンドポイントのことが書いてあるのはたったひとつだけだというのは重要な点です。少なくとも Google の場合、redirect_uri があっても、このエンドポイントウェブブラウザベースアプリには推奨していません。しかし、だからといって実際に独自ブラウザでそれを使う人や、このフロー標準的ブラウザ用のエンドポイントコピーする人が一切いなくなるはずがありません。それに加え、Google は例外なのであって、世の中にはセキュアな OAuth フローを受け入れず client_secret (や同等品) を常に渡すよう要求する愚かなサービスが今も満ちあふれており、そのフローウェブブラウザを通るときでさえも要求しているのです。さらに悪いことに、こうしたサービスの多くはユーザウェブブラウザを通して「しか」利用できないのですが、これは後ほど詳述します。

前掲のセキュリティ文書は、 Permalink | 記事への反応(3) | 12:44

2016-04-24

http://anond.hatelabo.jp/20160424012448

ありがとうございます

あんまり詳しくは書けないのですが、世間一般的には軽度な方なのかなと思っています

暴力は無いので、いわゆるモラハラ(軽い)のようなものです。

今もすごく好きなのですが一方通行なのだなと痛感してしまうので辛いです

でも書き込んで優しい言葉をかけていただけて気持ちが軽くなりました。あんまり気にせず気楽に生きるようにしたいと思います

2016-04-16

ふと思ったこと

人知人の悩み、細々とした愚痴(時々悩みを装った自慢も)を聞くことは、たとえ些細な内容でも苦ではなく、むしろ少しでも楽になってくれれば有難いなあと思い、聞いているつもりである。それに聞いてくれて有難うなどと言われると、「社交辞令だよな」とは思いつつも嬉しい。

しかしそういう悩み、愚痴を細々と持ち掛けてくる人に限り、彼ら彼女らがいつも他人に持ち掛けてくる内容に類似しているような悩み、愚痴他人に持ち掛けられても、まるで興味を示さない、あるいは明らかに話半分で聞いて(ひどい場合は嫌な顔をする)、返答はそこそこ。挙句いつもの自分の話に持っていく事に、最近気付いた。

そういう対応をされたり、されているのを見たりしていたら、いくら聞く事が苦でなくても、興味深い内容でも、そういう輩の話は一切聞かず、シャットダウンしてしまおうと思う。

見返りを求める行為は卑しい事なのかも知れないけれど、やはり一方通行は解せないし、甘えるな馬鹿にするなと思ってしまうのだ。

随分上から目線文章になってしまい恥ずかしいが、ここ最近こんな出来事が続き、もやっとしてしまったので思わず投稿した(初投稿)。

2016-04-11

さっき遭遇した軽自動車乗りの爺さんには驚いた。

未だにカーナビ自家用車に取り付けてない爺さんが病院行くからと道を訪ねていて、しかも一度丁寧に人から聞いたのに忘れたらしく30分後にまた人に聞く。

あんたみたいな方向音痴が何で未だにカーナビを付けないのか?しかガラケー持ってるのに何でガラケーで調べずに人に聞くのか?更には何でメモを取らないのか?それにこの道は一方通行で道に迷ったからって何で逆走するのか?

こういう爺さんは都心部には住まず田舎の一本道のような所で死ぬまで住んでほしい。

2016-03-22

君のキスのお相手は。

クズの本懐

好きな人には、好きな人がいる。

好きな人の「好きな人」にはなれないから、互いに代わりを務める。

そんな物語を読むと、いつも心が荒んだ。

当時好きだった相手は、自分の事などこれっぽっちも興味が無かった。ように思う。

ただ、互いに必要だった時のみ連絡をとるという、慾望だけが繋がっていた。

そんな相手を思い出す。

きっと相手には、他に思う人も居て、自分はそれを埋めるだけなのだ

一緒にいるときにも、感じる。感じていた。

都合のいい関係。そんな有り難くもなんともない関係だった。

いつも、ただただ悔しかった。

行為のあとの虚しさの中で、消えない悔しさが腹の底に溜まっていた。

相手には、代わりである自分がいる。でも、自分には、代わりが居なかった。

本命と言うにはおこがましい関係だとしても

他の人間など思い浮かばなかった。

いたとしても、頭の端で、いつも思い出していた。

結局、自分ばかりが好いていた、一方通行の思い。

そんなものが、ダラダラと3年だか4年だか続いていた。

その間に何か好転たかなど、言うまでもなくひとつもない。

ただ酒を煽って、欲を求めることがあっただけで、何も変わることはなかった。


均衡を破ったのは、恐らく自分だ。

ほんの少しの興味と、強すぎた独占欲所為

SNSに上がっていた好きな人の「好きな人」。

俄に感じていた違和感。満たされない行為

確信が持てなかっただけで、予想をしてなかったわけではない。

から、心の何処かで多分、納得していた。ああ、やっぱりか。って。

それからはもう、ただただ崩れていくだけだった。

誰かの代わりかもしれない、と

誰かの代わり、でする行為は、雲泥の差だった。

連絡を取るのをやめて、些細な興味に突き動かされることもやめた。

でも時々無性に相手の熱に浮かされることがある。

今でもまだ、忘れられない自分の未練たらしさに呆れながら、慰めることも少なくない。

当時はただ、異常な思考のまま、朦朧とした頭で、何も考えられていなかったのだろう。

今になってみれば、ただ弄ばれて、利用されていただけだっただろうに。

いや、利用していたのは、こちらも同じだったのだが。

「都合のいい相手」という存在で居ることを利用していたのだ。

結局、意気地もなければ、甲斐性もなかっただけなのだ

情けないのは、自分自身しかない。

なぜこんなことを、こんな所にツラツラと書き連ねているかといえば

アニメ化新刊発売を控えた「クズの本懐」を読み返してしまったためだ。

どうしたってこの物語は、自分と、好きだった相手を思い出す。

誰を思って、何を思ってキスをしていたのか。

今更聞いたところで、何にも成れはしないけれど。


この話は、自分があまりに情けなくて、不甲斐なくて、

それでも止められなかった自分が浅ましくて

誰かに話したことは、あまりない。

それでも無性に、誰かに聞いてもらいたくなった。

長々と大変申し訳無い。

此処に記せば、当時好きだった相手の事を、少しでも昇華させられそうで

匿名の海に溺れてみたくなった深夜。

お読みいただきまして、大変光栄に思います

全てのクズに幸あれ。

ログイン ユーザー登録
ようこそ ゲスト さん