今日もエメラルド気分

1990年生まれ文系プログラマーの軌跡(予定)

【徳丸浩氏 特別講演】若手エンジニアのためのセキュリティ講座 感想

サポーターズcolabで開催された【徳丸浩氏 特別講演】若手エンジニアのためのセキュリティ講座に参加しました。

自分用に要点まとめました。

【徳丸浩氏 特別講演】若手エンジニアのためのセキュリティ講座

侵入されるWebサイトとは

Webサイトへの侵入経路は大きく分けて2つ

  • 管理用ツールの認証を突破される
  • ソフトウェアの脆弱性を悪用される

脆弱性とは何か

一言でまとめるとバグ

悪用可能なバグの例

悪用可能な設定不備の例

  • デフォルトのパスワードのまま放置している
  • パスワードとして「password」を設定している
  • 任意のメールを中継する設定(オープンリレー)

徳丸先生が以下の事象について少し言及

IoT機器がマルウェアに感染する元凶は「Telnet」~横浜国大・吉岡克成准教授

Webサイトに対する侵入事件のトレンド

SQLインジェクションが対策されていると下記が台頭

セキュリティのイタチごっこにばかり目がいっていると、大きな脆弱性を見逃すことがあるとのこと。

脆弱性を防ぐためには

責任と契約について ~ウェプアプリケーションの脆弱性の責任は発注者か開発者か~

発注者に責任というのが主流のよう

ただし、判例があるわけではない

しかし、最近(2015年)判例が出ました!!とのこと

徳丸先生がいってた判例はこれの模様

2015年に徳丸先生が言及しています。

SQLインジェクション対策もれの責任を開発会社に問う判決

800万円の案件に対して、2262万円の損害賠償の支払いが確定しました。

経営者からしたら、これはつらいなぁ。。。

若い人は契約は興味は人がほとんどだが、契約の賠償額の限度額を設定して身を守るべき。(青天井契約にしない)

SQLインジェクションが"債務"である理由

経済産業省から注意喚起の文章が出ているので、それを遵守すべき

徳丸先生の当事件の感想

発注者も毎日「admin」「password」と入力してコンソールに入って、何も思わないのか

現在の風潮として「SQLインジェクション」対策は、最低限レベルとの見方もできる。

EC CUBEを用いたSQLインジェクションの実演

個人情報が表示されないページに対しても、SQLにはUNION、副問い合わせを用いれば、簡単にデータベースのスキーマがわかるので無対策の状態で放置しない。

セキュリティ対策

一番安価なセキュリティ対策は、セキュリティ専門家のtwitterアカウントをフォローすること

速報は、ここで検知できそうですね!!

Webアプリケーション脆弱性診断の方法

ツールにて脆弱性を検知すると、数が多いので、それを直すだけでも大変。

Webアプリケーションの脆弱性の手動検知の実演

EGセキュアソリューションズ株式会社の入社試験では、テストアプリケーションの脆弱性を発見するテストをやるそうです。

ここで繰り返し徳丸先生がおっしゃっていたのですが、セキュリティ未経験者でも、勘のいい人は脆弱性の兆候を読み取る。知識ではなく、そういう結論を出す人が欲しいとのことです。

脆弱性診断は仮説-検証の繰り返しだ

挙動は以下の3つに分類される

  • 正常:この診断文字列からは何も言えない
  • グレー:怪しいけど脆弱性とは言い切れない
  • 脆弱性の疑いが濃厚:脆弱性が検出された可能性が高い

キャリアについて

セキュリティエンジニアを将来の夢にしているのですが 現在高2なのですが現在大学…

この質問を例に、徳丸先生の見解をおっしゃっていました。

結論しては

  • 情報工学」「計算機工学」基礎が大事
  • そのためには専門より大学に行くべき
  • 高いところに行くには、とにかく基礎が大切
  • 母国語の「ロジカルシンキング」「言語コミュニケーション能力」が大切

ここのコミュニケーション能力定義は、相手の知識に合わせたコミュニケーションをする(専門外の人に対しては、専門用語を使わない。逆に、専門の人達には、専門知識のラインを設定する)

ネットには速読を勧める記事が多いが、徳丸としては精読を勧める

ここは僕も、ここには賛成です。

ということで、情報工学の基礎本を読み漁ります。

正直なところ、大学にいって基礎から情報工学を学びたいです。

徳丸先生自身について

徳丸先生は20代前半はニートだったそうです。

ちょっと親近感が湧きます。

縁故採用で京セラに入社して、コンパイルの実装に興味を持地、コンパイルの作り方の本を10冊ほど読んでコンパイラを作ったそうです。

なぜ独立・起業したか?

2007年(当時47歳)に独立を真剣に考える

京セラはハードワークで、執筆がしんどい

独立の課題と解決策

受注の価格獲得と、家族(家内)の説得

飛び込み営業とか無理。。。

解決策

前職(KCCS)に技術顧問として残ることを上司から提案され、収入の6~7割を確保

家で仕事するから、子育てもできるので家事の負担を減らせる。

とにかく運がよかった

独立・起業するには

営業力

若手エンジニアに向けて

コンパイラを作ってよかったこと

  • コンピューターサイエンスの基礎をしっかり学べた
  • 「本に書いてないこと」については、自分の頭で考え抜くことで、問題解決能力が身についた
  • 勉強は「車輪の再発明」をどんどんしよう

なぜ多くのプログラマFizzBuzzが書けないか?

コピペプログラマーを脱しよう

プログラマ35歳定年説を超えて

  • 馬力にものを言わせている開発者は、その馬力が衰えてくる
  • 新技術習得についていけない
  • プログラマのままだと給与が上がらない

解決策

  • 馬力に頼らなくても済む技術力を若いうちから身につけておく
  • 新技術も、基礎が入ればだいぶ楽になる
  • 給与は、転職か独立で
  • 40代になると、厄年とか更年期とかいろいろ出てきますが、いつまでもは続かないので一時的なスランプだと思ってやり過ごしましょう

Q&A

Q.情報学部出ていない人はどう勉強すればいいですか?

A.学問に王道なし

東京には図書館に技術書がいっぱいある。

本は、合う合わないのフィット感が大分違う。

なので図書館の本で試すことが大事!!

ネットの記事はちょっと。。。。

Q.仕事の中で、これが大変だったかとかありますか?

A.そういうことも過去にあったが、苦にしないように考えている。

心配してもしょうがないこと(自分でどうにかできる範囲を超えていること)は、考えない。

Q.パスワードの脆弱性の対策としては何がありますか?

パスワードは、これが悪いとかはない

根本的な対策は難しい

脆弱性を前提にビジネスを組み立てる。

Q.ユーザーの立場でパスワードを管理する方法

「Last Pass」というパスワード管理ツールを使っています。

情報漏洩が過去に発生しましたが、パスワード悪用が一度もされていないからです。

LastPass

パスワードの使い回しをするぐらいなら、ブラウザに覚えさせるのもありです。

徳丸先生から20代エンジニアに向けて

プログラムが大好きだったけど仕事にするかは迷いました。

好きな仕事とセットで嫌い仕事も考える。

どんな仕事も嫌いな仕事は一部ある。

好きな仕事と嫌いな仕事の配分が大切

感想

僕も一生この業界にいたいので、当面は基礎技術の習得に費やしていこうと思います。

図書館も活用します!!

サポーターズさんのオフイスが綺麗でした。

10月から務める予定の会社の目の前なので、ここで勉強会があったら、また行きたいです。