This product is not supported for your selected Datadog site. ().
이 페이지는 아직 영어로 제공되지 않습니다. 번역 작업 중입니다. 현재 번역 프로젝트에 대한 질문이나 피드백이 있으신 경우 언제든지 연락주시기 바랍니다.
Metadata
ID:python-security/insecure-ssl-protocols
Language: Python
Severity: Notice
Category: Security
Description
The following security protocols should never be used in Python: SSLv3, SSLv2, TLSv1. For more details, read the SSL module page of the official documentation.
The issue addresses the CWE-757 - selection of less-secure algorithm during negotiation.
Non-Compliant Code Examples
importssldefnewconnect(self):try:s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)remote=ssl.wrap_socket(s,ca_certs=CA,cert_reqs=ssl.CERT_REQUIRED,ssl_version=ssl.PROTOCOL_SSLv3)remote.connect(self.server.seradd)ifnotself.server.seradd[0]==remote.getpeercert()['subjectAltName'][0][1]:logging.error('Server crt error !! Server Name don\'t mach !!')logging.error(remote.getpeercert()['subjectAltName'][0][1])returnifnotself.send_PW(remote):logging.warn('PW error !')returnexceptsocket.error,e:logging.warn(e)return
Compliant Code Examples
importssldefnewconnect(self):try:s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)remote=ssl.wrap_socket(s,ca_certs=CA,cert_reqs=ssl.CERT_REQUIRED,ssl_version=ssl.PROTOCOL_TLS)remote.connect(self.server.seradd)ifnotself.server.seradd[0]==remote.getpeercert()['subjectAltName'][0][1]:logging.error('Server crt error !! Server Name don\'t mach !!')logging.error(remote.getpeercert()['subjectAltName'][0][1])returnifnotself.send_PW(remote):logging.warn('PW error !')returnexceptsocket.error,e:logging.warn(e)return
원활한 통합. Datadog Code Security를 경험해 보세요
Datadog Code Security
이 규칙을 사용해 Datadog Code Security로 코드를 분석하세요
규칙 사용 방법
1
2
rulesets:- python-security # Rules to enforce Python security.
리포지토리 루트에 위의 내용을 포함하는 static-analysis.datadog.yml을 만듭니다
무료 IDE 플러그인을 사용하거나 CI 파이프라인에 Code Security 검사를 추가합니다