ガイドラインの観点別マッピング
================================================================================
ガイドラインの4章以降は機能別に説明されているが、機能面とは別の観点で、どの節にどの内容が含まれているかのマッピングを示す。

セキュリティ対策に関するマッピング
--------------------------------------------------------------------------------

OWASP(Open Web Application Security Project)による観点
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\ `OWASP Top 10 for 2017 <https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project>`_\ を軸として、
セキュリティに関連するガイドライン内の説明へのリンクを記載する。


.. tabularcolumns:: |p{0.10\linewidth}|p{0.40\linewidth}|p{0.50\linewidth}|
.. list-table::
   :header-rows: 1
   :widths: 10 40 50
   :class: longtable

   * - 項番
     - 項目名
     - ガイドライン内の関連箇所
   * - A1:2017
     - `Injection <https://www.owasp.org/index.php/Top_10-2017_A1-Injection>`_ SQL Injection
     - * \ :ref:`DataAccessMyBatis3HowToUseSqlInjectionCountermeasure`\ 
   * - A1:2017
     - `Injection <https://www.owasp.org/index.php/Top_10-2017_A1-Injection>`_ OS Command Injection
     - * \ :ref:`Validation_os_command_injection`\ 
   * - A1:2017
     - `Injection <https://www.owasp.org/index.php/Top_10-2017_A1-Injection>`_ Email Header Injection
     - * \ :ref:`email-header-injection`\ 
   * - A1:2017
     - `Injection <https://www.owasp.org/index.php/Top_10-2017_A1-Injection>`_
     - * \ :ref:`secure-input-validation`\ 
   * - A2:2017
     - `Broken Authentication <https://www.owasp.org/index.php/Top_10-2017_A2-Broken_Authentication>`_
     - * \ :ref:`SessionManagementSessionHijackingAttacksProtection`\ 
       * \ :ref:`SessionManagementSessionFixationAttacksProtection`\ 
       * \ :ref:`SpringSecurityAuthenticationPasswordHashing`\ 
   * - A3:2017
     - `Sensitive Data Exposure <https://www.owasp.org/index.php/Top_10-2017_A3-Sensitive_Data_Exposure>`_
     - * \ :ref:`PropertyManagementDecryptAndUseTheEncryptedPropertyValue`\ 
       * \ :doc:`../Security/Encryption`\ 
       * \ :ref:`SpringSecurityAuthenticationPasswordHashing`\ 
   * - A4:2017
     - `XML External Entities (XXE) <https://www.owasp.org/index.php/Top_10-2017_A4-XML_External_Entities_(XXE)>`_
     - * \ :ref:`XXE(XML External Entity) 対策について<AjaxWarningXXEProtection>`\ 
       * \ :ref:`RESTAppendixEnabledXXEProtection`\ 
   * - A5:2017
     - `Broken Access Control <https://www.owasp.org/index.php/Top_10-2017_A5-Broken_Access_Control>`_
     - * \ :ref:`file-upload_security_related_warning_points_directory_traversal`\ 
   * - A6:2017
     - `Security Misconfiguration <https://www.owasp.org/index.php/Top_10-2017_A6-Security_Misconfiguration>`_
     - * \ :ref:`LoggingLogOutputContents`\ 
       * \ :ref:`exception-handling-how-to-use-codingpoint-view-exceptioncode-label`\ 
       * \ :ref:`SpringSecurityAuthorizationOnError`\ 
   * - A7:2017
     - `Cross-Site Scripting (XSS) <https://www.owasp.org/index.php/Top_10-2017_A7-Cross-Site_Scripting_(XSS)>`_
     - * \ :doc:`../Security/XSS`\ 
       * \ :ref:`LinkageWithBrowserXXSSProtection`\ 
   * - A8:2017
     - `Insecure Deserialization <https://www.owasp.org/index.php/Top_10-2017_A8-Insecure_Deserialization>`_
     - * \ :ref:`デシリアライズ時の注意点<JMSWarningDeserialization>`\ 
       * \ :ref:`ajax_post_formdata`\ 
       * \ :ref:`RESTHowToUseResourceClass`\ 
   * - A9:2017
     - `Using Components with Known Vulnerabilities <https://www.owasp.org/index.php/Top_10-2017_A9-Using_Components_with_Known_Vulnerabilities>`_
     - * 特に言及なし
   * - A10:2017
     - `Insufficient Logging & Monitoring <https://www.owasp.org/index.php/Top_10-2017_A10-Insufficient_Logging%26Monitoring>`_
     - * \ :ref:`SpringSecurityAuthenticationEventListener`\ 
       * \ :ref:`audit-logging`\ 

CVE(Common Vulnerabilities and Exposures)による観点
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ガイドラインで言及しているCVEごとにその説明とガイドラインへのリンクを記載する。
ガイドラインで言及していないCVEについては、\ `Pivotal Product Vulnerability Reports <https://pivotal.io/security>`_\を参照されたい。

.. tabularcolumns:: |p{0.10\linewidth}|p{0.40\linewidth}|p{0.50\linewidth}|
.. list-table::
   :header-rows: 1
   :widths: 10 40 50

   * - CVE
     - 概要
     - ガイドラインでの言及箇所
   * - \ `CVE-2014-0050 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0050>`_\

       \ `CVE-2016-3092 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-3092>`_\
     - Apache Commons FileUploadを使用するとファイルをアップロードする処理で細工されたリクエストによるDoS攻撃を受ける可能性がある

     - * :ref:`FileUploadOverview`

       * :ref:`file-upload_usage_commons_fileupload`
   * - \ `CVE-2014-1904 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-1904>`_\
     - \ ``<form:form>``\タグの \ ``action``\属性を省略するとXSS攻撃を受ける可能性がある
     - * :ref:`ApplicationLayerImplementOfJsp`
   * - \ `CVE-2015-3192 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3192>`_\
     - DTDを使用したDoS攻撃が可能となる
     - * :ref:`ajax_how_to_use`

       * :ref:`RESTHowToUseApplicationSettings`
   * - \ `CVE-2016-5007 <https://pivotal.io/jp/security/cve-2016-5007>`_\
     - Spring SecurityとSpring MVCのパス比較方法の差異を利用して認可のすり抜けが可能となる
     - * :ref:`access_policy_designate_web_resource`
   * - \ `CVE-2019-3778 <https://pivotal.io/security/cve-2019-3778>`_\
     - 認可コードグラントを利用した認可サーバにおけるオープンリダイレクト脆弱性
     - * :ref:`OAuthSetup`
   * - \ `CVE-2019-12415 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12415>`_\
     - Apache POI 4.1.0以前を利用したEXCELファイルからXMLへの変換において、細工されたEXCELファイルによるXXE攻撃を受ける可能性がある
     - * :ref:`ImplementsOfTestByLayerTestingRepositoryWithSpringTestDBUnit`
   * - \ `CVE-2020-5408 <https://tanzu.vmware.com/security/cve-2020-5408>`_\
     - 暗号化の結果が毎回同一となることを利用した辞書攻撃により、暗号化前の平文を取得されてしまう可能性がある
     - * :ref:`EncryptionEncryptText`

.. raw:: latex

   \newpage