岐阜県三大アンタッチャブルプロブレム

青い珊瑚礁[松田聖子][EP盤]
岐阜県においてお土産を選ぶときに、お店の人には訊いてはいけないことを理解した上で、身内においてはネタにすべきトークテーマがある。よく似た概念としては、麺界の永遠のプロブレムである、名古屋における山本屋の味噌煮込みうどんや、福岡における長浜ラーメン的な位置付けといえる。

いずれも老舗だからこその悩みであり、なんともすばらしい。

すや v.s. 川上屋

中津川といえば栗きんとん。栗きんとんといえば中津川。岐阜県民に限らず、愛知県民や三重県民も含め、東海の人間は秋になると栗きんとんの禁断症状がおきる。さらに「恵那寿や」と「恵那川上屋」を加えると問題がより複雑化する。

金蝶堂 v.s. 金蝶園

大垣名物の金蝶饅頭を売る店が、駅にほど近い狭い範囲に複数存在する。店の名前もよく似ている。しかも金蝶園の方は、名前が同じ別会社が2つ存在する。さらにややこしいことに、そしてそれぞれが暖簾分けをしており、大垣以外の地にも金蝶饅頭を扱う店がある。

松浦軒本店 v.s. 松浦軒本舗 v.s. かめや

東海道中山道から外れた岩村という狭い地域にカステラ屋が3軒集中している。日本100名城の城下町くらいしか売りがなかったが、2018年のNHK連続テレビ小説『半分、青い』でロケ地となり、ほんの少しだけ盛り返した。

monlist以降のUDPリフレクション攻撃についての備忘録

下ネタという概念が存在しない退屈な世界2 ガガガ文庫 下ネタという概念が存在しない退屈な世界 本当の詳細は、ISPにおけるネットワークオペレーションセンタに勤務する人に書いてもらうべきです。この記事は、そうでない人間にはこのように見えているという一例になります。まだ書きかけです。

monlist以前

monlist以降

参考

サイバーセキュリティのニュースにはパターンがある

はじめに

あさえがお 心のハンドルをぎゅっとにぎる33の言葉 2014年以降、脆弱性やインシデントについて追っております。

そのうちに、サイバーセキュリティ関連ニュースが人口に膾炙するのには、おおよそ一定の法則があると思うようになりました。残念なことですが、一部には過度に心配を煽るようなフェイクニュースに近いものも存在しています。考察します。

動機

ニュースに躍らされて、エンジニアが消耗するのを避けたい。

想定する利用シーン

ニュースに躍らされた上司から、

「〇〇君、この脆弱性について調べている?」

と聞かれたときに、

「これはニュースパターンのAですね。」

と答えて、即刻で鎮火させる。

ニュースを評価するためのポイント

サイバーセキュリティのニュースのパターン化する上での軸は、次の2点に限定して良いと考えます。

  • 情報源の意図:ニュースの一次ソースの意図
  • 拡散した理由:ニュースがバズった理由

ニュースのパターンは、どちらかと言えば拡散した理由による影響が強いです。

情報源の意図

サイバーセキュリティニュースの作り手の意図としては、以下のものが考えられます。これらが、ときに誤りや過剰さを伴うことで、複雑化します。二次ソース以降では、これらが複数絡み合います。

愛称 代表的な発信元 意図の概要 信頼性
Accountability メーカー、サイバー攻撃の被害組織 脆弱性の修正や、インシデントの発生を告知する。 High
Evangelical 公的機関、公益法人、セキュリティ団体 関心を引いて、対策を促進させる。不安を煽り、ニーズを掘り起こす。 Middle
PR 研究者、セキュリティベンダ、イベント開催者 成果を公表し、信頼度や知名度の向上を図る。イベントへの注目を集める。 Middle~Low
Commercial ニュースサイト 大量のトラフィックを誘導し、広告収入等を得る。 Low
Maneuvering ハクティビズム活動家、国家 競争相手や特定の集団を貶めようとする。 Low
Other 一般人 単純なリアクション、社会貢献的な意図のあるものなど様々。 Low

拡散した理由

実際の深刻度に比べて、過度にニュースが拡散してしまう理由として、次のようなものが考えられます。

まだ表にかけていない理由が、他にもあると思います。今後さらに増やしていきたいです。

愛称 理由の概要
Giant 政府、独立行政法人GoogleIntelのような大企業、等の影響力が大きい組織や個人が公表した、もしくは関係している。
Misunderstanding 公開情報が少ない時期に、限られた情報をもとになされた推測に行き過ぎがあり、それがそのまま波及してしまう。蓋を開けたら大したことはなかったが、もう止められなかった。
Periodical 他に報道すべきニュースがなかった。
Seaborne 欧米を中心とした海外においてニュースが流行った。
Propaganda セキュリティベンダ等による広告戦略が成功した。

パターンの実例への適用

実際にメディアに騒がれた例について、パターンを適用します。

情報源の信頼性が低く、且つ拡散した理由が上記の表に含まれているものであれば、静観して良い理由になりうると考えます。

情報源の意図 拡散した理由 実例
PR Propaganda Ghost, Badlock
PR Misunderstanding KRACKs
PR Giant Spectre/Meltdown
Commercial Seaborne WannaCry, Petya
Maneuvering Giant サイバー攻撃による米大統領選への関与

考察

発想としては、重要インフラ専門調査会で議論されている「深刻度」に近いものです。

2017年3月16日 重要インフラ専門調査会第10回会合 資料9 重要インフラサービス障害に係る深刻度判断基準の例について

しかしすべてのセキュリティのニュースを、Level 1〜5のように数字で評価することには、関係者の総意を得るのが困難な印象です。また、昨今のサイバー攻撃の手法や脆弱性の詳細は、技術的な難易度が高いものが多く、しっかりとした説明をするためには相当な準備が必要となります。簡単ではありません。

このため、上司になぜそのニュースに対応しなくてよいのかを説明するのには、脆弱性やインシデントそのものの深刻度よりも、なぜニュースが拡散したのかという理由に対して、ソフトウェア開発におけるデザインパターンのようなものを適用して説明するほうが、理解が手軽に得られるのではないでしょうか。

平昌オリンピックのサイバーセキュリティニュース列挙するだけ

オリンピック・パラリンピックが、セキュリティベンダーの食い物にされるのは、看過できません。これらの記事を見て、特に政治をお仕事にされている方が、過剰な反応をしないことを強く望みます。

とはいえ、平昌大会でサイバー攻撃による実影響が生じた以上、東京大会に向けてサイバーセキュリティ関連予算の増額が生じるのは確実でしょう。

網羅性はまったくありません。

オリンピック開会前

2017-12-05

2017-12-12

2017-12-29

2018-01-06

2018-01-08

2018-01-10

2018-01-11

2018-01-12

2018-02-01

THE COURT OF ARBITRATION FOR SPORT (CAS) DELIVERS ITS DECISIONS IN THE MATTER OF 39 RUSSIAN ATHLETES V/ THE IOC: 28 APPEALS UPHELD, 11 PARTIALLY UPHELD
http://www.tas-cas.org/fileadmin/user_upload/Media_Release__decision_RUS_IOC_.pdf

Both CAS panels unanimously found that the evidence put forward by the IOC in relation to this matter did not have the same weight in each individual case. In 28 cases, the evidence collected was found to be insufficient to establish that an anti-doping rule violation (ADRV) was committed by the athletes concerned. With respect to these 28 athletes, the appeals are upheld, the sanctions annulled and their individual results achieved in Sochi 2014 are reinstated.
In 11 cases, the evidence collected was found to be sufficient to establish an individual ADRV. The IOC decisions in these matters are confirmed, with one exception: the athletes are declared ineligible for the next edition of the Olympic Winter Games (i.e. Pyeongchang 2018) instead of a life ban from all Olympic Games.

2018-02-02

2018-02-06

* セキュリティベンダによる英語のブログ。よくまとまっているので推薦。 Cyber Threats to the 2018 Winter Olympics | Digital Shadows

2018-02-07

2018-02-08

2018-02-09 平昌オリンピック開会式

オリンピック期間中

2018-02-10

公式Webサイトは当然のようにAkamaiで守られていますので、Akamaiを信頼すれば落ちるとは考えづらい。となると、VerisignDNSサーバがおかしくなったのでしょうか。公式レポート待ちです。

2018-02-11

2018-02-12

2018-02-13

2018-02-14

2018-02-15

2018-02-17

2018-02-20

2018-02-21

2018-02-22

2018-02-24

2018-02-25

オリンピック閉会後

2018-02-26

* 開会式翌日、脱北者ら宛に「北朝鮮分析資料(三池淵楽団)」という名のマルウェアを含む添付ファイル付きメールが送信されてきたという情報 “融和五輪”の裏でサイバー攻撃 | オピニオンの「ビューポイント」

2018-02-27

2018-03-03

2018-06-07

2019-06-08

東京オリンピック・パラリンピックまで1年余り。去年、韓国で開かれたピョンチャン大会のサイバー攻撃対応の責任者が初めてメディアの取材に応じ、激しい攻防の状況を証言。「サイバーテロ」ともいうべき深刻化した攻撃の実態を明らかにしました。取材に応じたのは、ピョンチャン大会のサイバー攻撃対応チームで総括責任者を務めたセキュリティ企業「イグルーセキュリティ」のチョ・チャンソブ副社長です。
最初に異変が起きたのは去年2月9日午後7時ごろ、開会式の1時間前でした。ITサービス会社が運用する大会のシステムの一部に不具合が起きたとの報告に続き、開会式が始まった午後8時、会場の無線LANが使えなくなったりチケットの印刷ができなくなったりするなど、トラブルが相次いだのです。チョさんは「多数のシステムが同時多発的に問題を起こし、大会のサーバーの画面が青一色になって再起動もできなくなった。ウイルスによるサイバー攻撃と判断した」と言います。
当時、会場への入退場から交通、選手村の管理に至るまで、オリンピックに関わるデータの多くはピョンチャンではなく、ソウルのデータセンターで管理されていました。攻撃を受けたのは、その中でも観客の入退場から大会関係者のインターネット接続まで、あらゆる認証作業に必要な大会の根幹を担うサーバーでした。開会式が終わるのは夜10時。混乱を防ぐため、無線LANや入退場システムなど最低限の応急処置したうえで、バックアップのサーバーを使って全体の復旧作業を急ぎました。
ところが、さらに深刻な事態が起きます。サーバーを1台復旧すると、ウイルスの変種が現れて別のサーバーに感染していったのです。チョさんは「攻撃は認証システムを通じて、IDとパスワードを乗っ取った状態で始まった。乗っ取ったアカウントから認証システムを破壊し、その認証システムがウイルスを連鎖的に伝ぱする攻撃となった」と当時の緊迫した状況を証言しました。
「拡散型」と呼ばれる極めて悪質なウイルス。被害は、認証用のサーバーを発信源に50のサーバーにおよび、大会に関わる52のサービスが影響を受けました。このままでは大会そのものに影響が出かねない。午前0時、これ以上の拡散を防ぐため、大会のインターネットを遮断しました。チョさんは「これは時間との闘いだから、人員を追加投入して、変種のウイルスを一つずつ見つけて治療する作業を繰り返した。最終的に検出されたウイルスはおよそ40種に上った」と話しています。ようやく復旧作業が終わったのは、競技開始が1時間後に迫った翌日の午前8時。数百人が対応にあたった結果、競技の運営に支障が出る最悪の事態は避けられました。
東京大会への教訓はチョさんは東京大会に向けた教訓として、訓練の重要性を指摘しています。ピョンチャン大会を狙った攻撃は特定の標的を執ように狙う極めて高度なものでした。しかし、組織委員会を中心に、民間、政府、軍が連携し、10回以上の模擬訓練と3回の現場対応訓練を行っていたため、今回のような攻撃にも対処できたといいます。そしてもう一つの教訓が、「サプライチェーン攻撃」と呼ばれるシステムの供給網を狙った攻撃への対策です。今回の攻撃を分析した結果、ウイルスはオリンピックの組織委員会の内部からではなく、大会に関連する海外のITサービス会社から感染が始まっていました。組織委員会そのものだけでなく、関係する組織のセキュリティ対策と緊急時の情報共有の重要性を訴えています。チョさんは「リオ、ロンドンとは全く違うオリンピックを妨害する目的でシステムを破壊しようとする明確なねらいを持った攻撃だった。いくら準備しても攻撃は必ずある。これに対処するには訓練と情報共有しかない」と話しています。

サイバー攻撃 ネット世界の裏側で起きていること (ブルーバックス)

いまなら半額なので買います。

(後日追記)読みました。感想です。

中島さんが、紅茶派であると知ることができる一冊です。

タイトルはサイバー攻撃になっていますが、内容は"脆弱性"にフォーカスされています。 ブルーバックスで、いきなりバッファオーバーフローを教えようとしている暴挙がこのましいです。私は「C言語がわからないひとにはバッファオーバーフローはわからない」説を支持していますので、ブルーバックスでがんばらなくてもとは思いつつ、私が10代のとき同級生がブルーバックスでプログラミングの勉強していたのを思い出しました。彼はその後、情報系のドクターをとって、さらには研究職についていますので、あながちおかしくはないのでしょう。努力を買います。

敢えて批判的な感想をすると、この本において「敵を知り、己を知れば、百戦危うからず」ということばを2度引用している点が気になりました。孫子は私が繰り返して読んでいる唯一の本ですが、この節をサイバーセキュリティに適用するのは適切ではないと考えています。2,500年前に書かれた孫子は、Whenever, Wherever, Whoeverであるサイバーセキュリティの領域はカバーできていません。(ちなみにある著名なセキュリティ技術者も「スライドの最後にこの言葉を引用する理由は、中国系の聴衆を満足させるため以上の理由はない」とおっしゃっているようです。)

孫子の原文に立ち戻ると、

故知勝有五、知可以戰、與不可以戰者勝、識衆寡之用者勝、上下同欲者勝、以虞待不虞者勝、將能而君不御者勝、此五者知勝之道也、故曰、知彼知己、百戰不殆、不知彼而知己、一勝一負、不知彼不知己、每戰必殆、

とあります。さらにこの前の文を読めば、"彼"と"己"とはどちらも国家を指し、"戦"とは軍と軍とが物理的に激突する行為を指しているとわかります。すなわちここでは、用兵における原則が顕されています。一方で、この本の2-3節で紹介されているゼロデイ攻撃に代表されるように、敵を知り己を知れども殆ういのがサイバー攻撃です。このため、サイバーセキュリティの領域においては、孫子を超える概念を描いた原則が必要であると信じます。それこそを中島さんに作ってもらえたらと期待するものです。

以下は私事で恐縮ですが、コラムその2の表2-5は、おそらく私の記事をコピペしてくれたものでしょうか。もし本当にそうならなんて光栄な事でしょう。このブログも捨てたものではありません。 さらには記事にない"goto fail"と"BadIRET"の2つが表に載っていましたので、さっそくコピペ返ししました。私の記事ではこれまで、CVE-2014-9322の名前を"Grinch"としていたのですが、"BadIRET"と修正されていました。「それは"Grinch"じゃなくて"BadIRET"の間違いでしょ!」と今をときめく女性セキュリティ研究者に言われた気がしました。ドキドキしました。

未購入のKindle無料コミック探しを時間短縮したい

無料本は何冊購入したとしても、0円×∞=0円です。お財布が痛まないため、読む読まないに関係なくとりあえずポチッとするようにしています。しかしながら、Amazonの商品検索をすると購入済みと未購入のものが混ざって表示されますので、1000冊以上ある無料本を全部見て、そのなかから未購入のもののみをポチッとするのは時間のムダだなとずっと思っていました。スクリプトを書いて、自動化するところまでできたっぽいので記事を書きます。

Rubyスクリプトを書くとこうなる。

以下のコードで、"ASIN", "本のページへのリンク", "サムネイル画像", "タイトル"が取得できます。Nokogiriをつかうのに、10年以上ぶりにXPathをつかいました。便利ですねこれ。

require 'open-uri'
require 'nokogiri'

def find_items(url)
  items = []
  
  opt = {}
  charset = nil
  html = open(url, opt) do |f|
    charset = f.charset
    f.read
  end
  
  doc = Nokogiri::HTML.parse(html, nil, charset)
  result = doc.xpath('//li[contains(@id, "result_")]')
  unless result.length == 0
    result.each do |r|
      a = r.xpath('descendant::a[@class="a-link-normal s-access-detail-page  s-color-twister-title-link a-text-normal"]')
      img = r.xpath('descendant::img')
      items.push([r.attribute('data-asin').value, a.attribute('href').value, img.attribute('src').value, a.inner_text])
    end
  end
  
  return items
end

def find_free_comics(page)
  STDERR.puts page.to_s
  url = 'https://www.amazon.co.jp/%E3%82%B3%E3%83%9F%E3%83%83%E3%82%AF-0-Kindle%E6%9C%AC/s?ie=UTF8&rh=n%3A2293143051%2Cp_36%3A-0&page='+page.to_s
  return find_items(url)
end

find_free_comics(1).each do |c|
  puts c.join(",")
end

こちらのサンプルコードでは無料のKindleコミックを取得していますが、URLを変えれば無料本ではなくても同じことができます。

あとはこれをページの数だけ繰り返し、さらに保存しておいた過去の検索結果と照らして、もし新しいASINの本があれば、それを表示すればよいです。ただし、Amazon利用規約において、製品リストの取得を許可していませんので、ここから先は自己責任になると存じます。

ちなみに、Amazon Product APIではうまくいかない。

当初はAmazon Product APIで同じことを試したのですが、うまくいかないようです。 APIのひとつであるItemSearchは、一度に10件までしか出力できません。item_pageを1〜10の間で指定することで、最大100件までは取得できますが、それでもたかだか100件しか取得できないのは厳しいです。無料コミックは1000冊以上あります。またAPIを何度も連続で叩くと、Amazonからエラー応答が返ってくるので、一覧の取得は困難です。

ItemSearch - Product Advertising API

あくまで参考としてですが、以下のコードは、キーさえ書き換えれば100件まで取得できます。次のサイトのコードをほぼそのままコピーしていますが、1箇所だけ修正しており、marketplaceではなくcountryにするとよいです。

atton.blog: amazon-ecs を使って Kindle マンガの情報を取得する #okinawarb

なお2293143051はAmazonのブラウズノードであり、次のページのURIのものを利用しています。この値を用いると、Kindleのコミックスすべてから検索することになります。

Kindleマンガストア コミック | Amazon | アマゾン

require 'amazon/ecs'

Amazon::Ecs.configure do |options|
  options[:associate_tag] = 'xxx'
  options[:AWS_access_key_id] = 'xxx'
  options[:AWS_secret_key] = 'xxx'
end

page = 1

loop do
  res = Amazon::Ecs.send_request({response_group: 'Medium', operation: 'ItemSearch', search_index: 'Books', browse_node: '2293143051', minimum_price: 0, maximum_price: 0, item_page: page, country: 'jp'})
  
  res.items.each do |item|
    puts item
  end
  
  if page >= res.total_pages
    break 
  else
    STDERR.puts page.to_s + "/" + ((res.total_results-1)/10 +1).to_s
    page += 1
    sleep 2
  end
end

セキュリティな雑誌 まとめ

iNTERNET magazine Reboot NextPublishing いずれも購入したことはないので単なるメモです。 1回分の投稿ぐらいの分量になってきましたので、公開します。

サイバーセキュリティ

2600
https://www.2600.com/
海外雑誌

HackerJapan
http://www.byakuya-shobo.co.jp/hj/
2013年11月休刊

iNTERNET magazine
インプレス発行のインターネット情報誌。1994年9月創刊、2006年3月休刊。2017年10月に「iNTERNET magazine Reboot」として1号かぎりの復刊。

PenTest
https://pentestmag.com/
海外雑誌

A security Magazine
https://www.securitymagazine.com/
海外雑誌

物理セキュリティ

A&S JAPAN
http://www.asj-corp.jp/
2007年10月創刊

リスク管理

デロイトトーマツ 季刊誌『企業リスク』
https://www2.deloitte.com/jp/ja/pages/get-connected/pub/risk/enterprise-risk.html