タグ

ブックマーク / blog.ohgaki.net (7)

  • 今すぐできる、Webサイトへの2要素認証導入

    (Last Updated On: 2018年8月14日)Google、Facebook、Amazon(AWS)、Githubなど、大手Webサービス会社が2要素認証を取り入れてしばらく経っています。自分のWebサイトでも2要素認証を導入したい!と思ったことは無いですか? 簡単に可能です! パスワード認証だけではもう安全とは言えません。ぜひ2要素認証を自分のサービス/プロダクトに導入してください。 2要素認証とは? 2要素認証(2 Factor Authentication)とはパスワードとは別の認証コードを利用してユーザーを認証する方式です。2段階認証(2 Step Authentication)と呼ばれることもあります。複数の認証要素を利用して認証するので多要素認証(Multi Factor Authentication) とも呼ばれています。AWSでは2要素認証をMFAと呼んでいます

    今すぐできる、Webサイトへの2要素認証導入
    hiroomi
    hiroomi 2020/08/30
  • IPAの「安全なウェブサイトの作り方」は安全な作り方のガイドではない

    (Last Updated On: 2019年2月1日) IPAは「安全なウェブサイトの作り方」とする資料を長年公開しています。しかし、これが、重大な誤りにより、全く安全ではないWebサイトの作り方なっています。 重大な誤りとは以下です。 CWE-20 – 出鱈目なデータを排除する検証(入力バリデーション)について一切記載がない コンピューターサイエンス/システムエンジニアリングの観点から考える情報セキュリティはISO 27000で標準としてまとめられています。GDPRなどの法制度やNIST SP800-171の義務化などISO 27000の重要性は高まるばかりです。ISO 27000は2000年から、入力バリデーションだけは具体的な対策を記述し、セキュアコーディング/セキュアプログラミングの導入を要求しています。 ISO 27000の基礎的要求事項を無視したセキュリティ対策で情報漏洩問題

    IPAの「安全なウェブサイトの作り方」は安全な作り方のガイドではない
    hiroomi
    hiroomi 2019/01/09
  • 2017年版OWASP TOP 10

    (Last Updated On: 2018年8月13日)追記: 8月現在では、OWASP TOP 10 2017はWAFのプロモーションになっている、OWASP Proactive Controlsの”全ての入力をバリデーションする”と重複している、などの点が議論になりRCはリジェクトされ11月にリリースを目指して調整中になっています。 追記2:正式版が2017年12月にリリースされました。ここで紹介している脆弱性はA10(10番目の脆弱性)「不十分なログとモニタリング」として登録されました。WAFが必要であるかのような記載が削減されましたが、脆弱性の質(入力検証しない&対応しないアプリは脆弱なアプリ)は変わりありません。 このテーマついては既にブログは書いています。このエントリでは追加でQ&Aを記載しています。 2017年度版 OWASP TOP 10 で変るWebセキュリティのルー

    2017年版OWASP TOP 10
    hiroomi
    hiroomi 2018/10/29
    ”誰に責任を負わせるのか?誰が負うべきなのか? 基本的な入力バリデーションさえ実装してない場合、対応工数はそれなりの工数が必要になります。”この括りは素敵。
  • 不整合が起きてはならない場合、トランザクションはシリアライザブル

    リードコミッテドの場合、 ファントム・リード に加え、非再現リード(Non-Repeatable Read)と呼ばれる、同じトランザクション中でも同じデータを読み込むたびに値が変わってしまう現象が発生する可能性がある。 とWikipediaに書いてある通り不整合が発生します。簡単に言うと ファントム・リード – タイミング次第で見えなかったデータが見えるよう、見えないようになること 非再現リード(ノンリピータブル・リード) – 同じデータの読み込みができなくなること ファントム・リードやノンリピータブル・リードは複雑なクエリでないと起きない、と思っている方も居るかも知れません。 不整合が起きる例 トランザクションの不整合は単一レコードへのアクセスでも起きてしまいます。例えば、セッションIDのデータベースにデフォルトのリードコミッテド分離レベルを利用した場合、ブラウザから複数の接続、複数のブ

    不整合が起きてはならない場合、トランザクションはシリアライザブル
    hiroomi
    hiroomi 2016/01/15
  • セキュアプログラミング(防御的プログラミング)の歴史をざっと振り返る

    (Last Updated On: 2019年2月12日)キュアプログラミング(防御的プログラミング)の歴史をざっと振り返ってみたいと思います。セキュアプログラミングは防御的プログラミングとも言われるプログラミングの原則の1つ※です。古くからある概念ですが、誤解または理解されていない概念の1つではないでしょうか? ※ Defensive Programmingとして記載されています。 何故、一般に広く常識として理解されていないのか?その理由は防御的プログラミングの歴史にあるのかも知れません。 参考: セキュアプログラミングの7つ習慣 「出力対策だけのセキュリティ設計」が誤りである理由 セキュアプログラミングの必要性が認識された事件 コンピュータセキュリティの基礎的概念は60年代から研究されていました。その成果も踏まえ、インターネットの前身であるARPANETは1969年から稼働を開始しまし

    セキュアプログラミング(防御的プログラミング)の歴史をざっと振り返る
    hiroomi
    hiroomi 2015/12/26
    “何か問題が起きるたび、パッチワーク的に問題を解決するのではより高いセキュリティレベルの達成は不可能です。”
  • 正規表現を使ったDoS – ReDoS

    (Last Updated On: 2018年8月8日)いつかは忘れるくらい前に正規表現のアルゴリズム自体を利用してDoS攻撃を行うReDoSが発表されていました。今まであまり気にしていなかったのですが、検索しても日語のページが出てこないようでした。詳しく知るためのリンクなどを紹介します。 少し検索して出て来た日語ページはHPのページでしたが、たまたまインデックスされていたページがヒットしたようでした。また記載されている情報は不十分でした。(ページ下のコピーライトからFortifyの情報のようです) 日語のページで良いものは無いようなので、ReDoSの英語ページ/PDFを紹介します。 Wikipedia OWASP CHECKMARX  2015 (PDF) CHECKMARX 2009 (PDF) 3つ目のCHECKMARXのPDFは解りやすいと思います。OWASPのページはCHE

    正規表現を使ったDoS – ReDoS
    hiroomi
    hiroomi 2015/09/10
  • 間違いだらけのHTTPセッション管理とその対策

    (Last Updated On: 2018年10月12日)HTTPセッション管理はWebセキュリティの中核と言える機能です。Webセキュリティの中核であるHTTPセッション管理に設計上のバグがある事は少なくありません。今回のエントリはPHP Webアプリ開発者ではなく、主にWebフレームワーク側の開発者、つまりPHP体の方に間違いがあるという話しです。Webアプリ開発者の回避策も紹介します。 まずセキュリティの基として「入力のバリデーションを行い、正当な入力のみを受け入れる」があります。しかし、PHPに限らず多くのセッション管理機構は当たり前の「入力のバリデーションを行い、正当な入力のみを受け入れる」を行っていません。セッションIDの再生成(リセット)も不完全な物が多いと思います。 参考: 知らないと勘違いする「合成の誤謬」の罠 開発者は必修、SANS TOP 25の怪物的なセキュリ

    間違いだらけのHTTPセッション管理とその対策
    hiroomi
    hiroomi 2014/02/20
  • 1