web-dev-qa-db-ja.com

Webセキュリティのチートシート/ ToDoリスト

だれでもWebサイトとアプリケーションのセキュリティのチートシートまたはToDoリストを提案できますか?

地元の中小企業のオーナーがWebセキュリティに関する質問をしました。基本的に、彼女の会社のWebサイトは先週XSSに攻撃されました。私は自由な時間を費やして、彼女が将来の修正に時間を費やす必要がある場所を強調しました。彼女が彼女のWebサイトを外部委託しているとすると、私が彼女と共有できるWebセキュリティに関するチートシートまたはToDoリストはありますか-つまり、スマート平均ジョーのTODOのリスト/ SMB owner?(Not XSSに限定)

18
Glorithm

常に存在します OWASPトップ10 Web脆弱性リスト

OWASPのレポートからのそれぞれの簡単な要約:

  1. Injection-SQL、OS、LDAPインジェクションなどのインジェクションの欠陥は、信頼できないデータがコマンドまたはクエリの一部としてインタープリターに送信されるときに発生します。攻撃者の敵対的なデータは、インタプリタを騙して意図しないコマンドを実行させたり、不正なデータにアクセスさせたりする可能性があります。

  2. クロスサイトスクリプティング-アプリケーションが信頼できないデータを取得し、適切な検証とエスケープなしにWebブラウザーに送信すると、XSSの欠陥が発生します。 XSSを使用すると、攻撃者は被害者のブラウザでスクリプトを実行し、ユーザーセッションを乗っ取りたり、Webサイトを改ざんしたり、ユーザーを悪意のあるサイトにリダイレクトしたりできます。

  3. 壊れた認証とセッション管理-多くの場合、認証とセッション管理に関連するアプリケーション機能が正しく実装されておらず、攻撃者がパスワード、キー、セッショントークン、または他の実装の欠陥を悪用して、他のユーザーのIDを引き継ぐ。

  4. 安全でない直接オブジェクト参照-直接オブジェクト参照は、開発者がファイル、ディレクトリ、データベースキーなどの内部実装オブジェクトへの参照を公開するときに発生します。アクセス制御チェックやその他の保護がなければ、攻撃者はこれらの参照を操作して不正なデータにアクセスできます。

  5. Cross-Site Request Forgery(CSRF)-CSRF攻撃は、ログオンしている被害者のブラウザに、被害者のセッションCookieおよびその他の自動的に含まれる認証情報は、脆弱なWebアプリケーションに送信されます。これにより、攻撃者は被害者のブラウザに、脆弱なアプリケーションが被害者からの正当なリクエストであると考えるリクエストを生成させることができます。

  6. セキュリティの誤った構成-優れたセキュリティには、アプリケーション、フレームワーク、アプリケーションサーバー、Webサーバー、データベースサーバー、およびプラットフォーム用に安全な構成を定義して展開する必要があります。これらの設定の多くは、安全なデフォルトで出荷されていないため、定義、実装、および保守する必要があります。これには、アプリケーションで使用されるすべてのコードライブラリを含め、すべてのソフトウェアを最新の状態に保つことが含まれます。

  7. 安全でない暗号化ストレージ-多くのWebアプリケーションは、適切な暗号化またはハッシュを使用して、クレジットカード、SSN、認証資格情報などの機密データを適切に保護しません。攻撃者は、そのような弱く保護されたデータを盗んだり変更したりして、個人情報の盗難、クレジットカード詐欺、またはその他の犯罪を行う可能性があります。

  8. URLアクセスの制限に失敗しました-多くのWebアプリケーションは、保護されたリンクとボタンをレンダリングする前にURLアクセス権をチェックします。ただし、アプリケーションはこれらのページにアクセスするたびに同様のアクセス制御チェックを実行する必要があります。そうしないと、攻撃者はURLを偽造してこれらの隠しページにアクセスできます。

  9. 不十分なトランスポート層保護-アプリケーションは、認証、暗号化、および機密ネットワークトラフィックの機密性と整合性の保護に失敗することがよくあります。その場合、弱いアルゴリズムをサポートしたり、期限切れまたは無効な証明書を使用したり、正しく使用しないことがあります。

  10. 未検証のリダイレクトと転送-Webアプリケーションは頻繁にユーザーを他のページやWebサイトにリダイレクトおよび転送し、信頼できないデータを使用して宛先ページを決定します。適切な検証を行わないと、攻撃者は被害者をフィッシングサイトやマルウェアサイトにリダイレクトしたり、転送を使用して不正なページにアクセスしたりできます。

22
Jeremy Powell

MITER CWEプロジェクトはソフトウェアの弱点をリストし、MITRE CAPECプロジェクトはアプリケーションに対する攻撃パスを列挙するための手段をリストします。

どちらも Making Security Measurable プロジェクトの一部です。このプロジェクトには、CVEのようなものが含まれています。そうでない場合は、コメントでお知らせください。より親しみやすい紹介をします。 CVE、CWE、およびCAPECは、このページのリンクにリストされている最初の3つのプロジェクトです。

5
atdre

OWASP Top 1 または WASC Threat Classification は、何をテストし、何に焦点を当てるべきかについて、かなり良い概要を提供します。さらに詳しく知りたい場合は、 OWASPテストガイド が優れたリソースです(Webアプリケーションのセキュリティ要件に適合する一種の「チェックリスト」の作成にも役立ちます)。

2
bretik

Open Web Application Security Project(OWASP)は、一般的なセキュリティの落とし穴のリストを定期的に公開しています: 20042007201

XSSのトピックについて: クロスサイトスクリプティング防止チートシート は、XSSの脆弱性を回避する方法に関する多くの情報を提供します。 XSSチートシート は、エスケープロジックで不足しているケースに起因する一般的なxss脆弱性をリストします。

1