跳到内容

ssl-with-bad-defaults (S503)

源自 flake8-bandit linter。

作用

检查函数定义中默认参数设置为不安全的 SSL 和 TLS 协议版本的情况。

为什么这不好?

所有版本的 SSL 和早期版本的 TLS 中都发现了几种广为人知的可利用漏洞。以下版本被认为是不安全的,应该避免:

  • SSL v2
  • SSL v3
  • TLS v1
  • TLS v1.1

示例

import ssl


def func(version=ssl.PROTOCOL_TLSv1): ...

建议改为

import ssl


def func(version=ssl.PROTOCOL_TLSv1_2): ...