知識マップ: ホームページの発注側も知っておきたい ── IPA「安全なウェブサイトの作り方」をチェックリストとして使う
記事「ホームページの発注側も知っておきたい ── IPA「安全なウェブサイトの作り方」をチェックリストとして使う」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。
IPA「安全なウェブサイトの作り方」は、IPAに届出のあった脆弱性をもとに、SQLインジェクションやクロスサイト・スクリプティング(XSS)、CSRFなど11種類のウェブサイトの脆弱性と対策をまとめた資料である。対策は原因そのものを取り除く根本的解決を基本とし、それでも残るリスクを下げる保険的対策を上乗せするという順序で示され、SQLインジェクションにはプレースホルダ、XSSには出力時エスケープが根本的解決として挙げられる。付属のセキュリティ実装チェックリストは対策の実装状況を確認する基準に、別冊ウェブ健康診断仕様は稼働中サイトの脆弱性診断の目安に使える。更新の止まったCMSは、既知の脆弱性を突かれて改ざんされる典型的なリスクとして挙げられている。
flowchart LR
accTitle: 「安全なウェブサイトの作り方」の知識マップ
accDescr: IPA「安全なウェブサイトの作り方」が11種類のウェブサイトの脆弱性を取り上げ、根本的解決と保険的対策という考え方、付属のセキュリティ実装チェックリストやウェブ健康診断仕様との関係を示す図
secure_website_guide["安全なウェブサイトの作り方"]
ipa["IPA(独立行政法人情報処理推進機構)"]
sql_injection["SQLインジェクション"]
os_command_injection["OSコマンド・インジェクション"]
directory_traversal["パス名パラメータの未チェック(ディレクトリ・トラバーサル)"]
session_management_flaw["セッション管理の不備"]
cross_site_scripting["クロスサイト・スクリプティング(XSS)"]
csrf["クロスサイトリクエストフォージェリ(CSRF)"]
http_header_injection["HTTPヘッダ・インジェクション"]
mail_header_injection["メールヘッダ・インジェクション"]
clickjacking["クリックジャッキング"]
buffer_overflow["バッファオーバーフロー"]
access_control_flaw["アクセス制御や認可制御の欠落"]
security_implementation_checklist["セキュリティ実装チェックリスト"]
web_health_checkup_spec["ウェブ健康診断仕様"]
fundamental_solution["根本的解決"]
insurance_measure["保険的対策"]
prepared_statement["プレースホルダ(プリペアドステートメント)"]
output_escaping["出力時エスケープ"]
vulnerability_assessment["脆弱性診断"]
cms["CMS(Content Management System)"]
website_defacement["ウェブサイトの改ざん"]
waf["WAF(Web Application Firewall)"]
ipa -->|"実装を担う"| secure_website_guide
secure_website_guide -->|"利用する"| sql_injection
secure_website_guide -->|"利用する"| os_command_injection
secure_website_guide -->|"利用する"| directory_traversal
secure_website_guide -->|"利用する"| session_management_flaw
secure_website_guide -->|"利用する"| cross_site_scripting
secure_website_guide -->|"利用する"| csrf
secure_website_guide -->|"利用する"| http_header_injection
secure_website_guide -->|"利用する"| mail_header_injection
secure_website_guide -->|"利用する"| clickjacking
secure_website_guide -->|"利用する"| buffer_overflow
secure_website_guide -->|"利用する"| access_control_flaw
secure_website_guide -->|"利用する"| security_implementation_checklist
secure_website_guide -->|"利用する"| web_health_checkup_spec
fundamental_solution -->|"より先に行うべき"| insurance_measure
prepared_statement -->|"防止する"| sql_injection
output_escaping -->|"防止する"| cross_site_scripting
fundamental_solution -->|"で確認できる"| security_implementation_checklist
insurance_measure -->|"で確認できる"| security_implementation_checklist
vulnerability_assessment -->|"利用する"| web_health_checkup_spec
cms -.->|"原因になり得る"| website_defacement
cms -.->|"で確認できる"| vulnerability_assessment
waf -->|"用いるのは非推奨"| fundamental_solution
概念間の関係(全23件)
図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。
- IPA(独立行政法人情報処理推進機構)は安全なウェブサイトの作り方の実装を担います。
- 安全なウェブサイトの作り方はSQLインジェクションを利用します。
- 安全なウェブサイトの作り方はOSコマンド・インジェクションを利用します。
- 安全なウェブサイトの作り方はパス名パラメータの未チェック(ディレクトリ・トラバーサル)を利用します。
- 安全なウェブサイトの作り方はセッション管理の不備を利用します。
- 安全なウェブサイトの作り方はクロスサイト・スクリプティング(XSS)を利用します。
- 安全なウェブサイトの作り方はクロスサイトリクエストフォージェリ(CSRF)を利用します。
- 安全なウェブサイトの作り方はHTTPヘッダ・インジェクションを利用します。
- 安全なウェブサイトの作り方はメールヘッダ・インジェクションを利用します。
- 安全なウェブサイトの作り方はクリックジャッキングを利用します。
- 安全なウェブサイトの作り方はバッファオーバーフローを利用します。
- 安全なウェブサイトの作り方はアクセス制御や認可制御の欠落を利用します。
- 安全なウェブサイトの作り方はセキュリティ実装チェックリストを利用します。
- 安全なウェブサイトの作り方はウェブ健康診断仕様を利用します。
- 根本的解決は保険的対策より先に行うべきです。
- プレースホルダ(プリペアドステートメント)はSQLインジェクションを防ぎます。
- 出力時エスケープはクロスサイト・スクリプティング(XSS)を防ぎます。
- 根本的解決はセキュリティ実装チェックリストで確認できます。
- 保険的対策はセキュリティ実装チェックリストで確認できます。
- 脆弱性診断はウェブ健康診断仕様を利用します。
- CMS(Content Management System)はウェブサイトの改ざんの原因になることがあります。
- CMS(Content Management System)は脆弱性診断で確認できます。
- WAF(Web Application Firewall)を根本的解決に用いることは推奨されません。
主要概念の定義
機械可読データ
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。