Java


JAVA.INSEC.DTP : Deprecated Transfer Protocol (Java)

要旨

An unsafe or deprecated transfer protocol is used inside a transfer method.

プロパティ

クラス名 Deprecated Transfer Protocol (Java)
日本語クラス名 Deprecated Transfer Protocol (Java)
クラス分類 セキュリティ (security)
ニーモニック JAVA.INSEC.DTP
カテゴリー
CWE CWE:757 Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade')
OWASP-2017 OWASP-2017:A9 Using components with known vulnerabilities
OWASP-2021 OWASP-2021:A6 Vulnerable and outdated components
対応言語 Java で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで無効になっています。チェックを有効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += allow class="Deprecated Transfer Protocol (Java)"

import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.Provider;

public class UnsafeTransferProtocol{

  public void transferProtocol(Provider p) throws NoSuchAlgorithmException, NoSuchProviderException {
      javax.net.ssl.SSLContext.getInstance("TLSv1.1");           // "Deprecated Transfer Protocol (Java)" warning issued here
      javax.net.ssl.SSLContext.getInstance("SSL","my_provider"); // "Deprecated Transfer Protocol (Java)" warning issued here
      javax.net.ssl.SSLContext.getInstance("SSL3",p);            // "Deprecated Transfer Protocol (Java)" warning issued here
      javax.net.ssl.SSLContext.getInstance("TLSv1.3",p);
  }
}

解決法

Parameterize it in a configuration file.

Use safer protocols.

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。