소개:
ssl 3.0은 RC4 암호화 또는 CBC 모드 암호화를 사용하기 때문에 안전하지 않은 것으로 간주되며, 전자는 바이어스 공격에 취약하고 후자는 POODLE 공격으로 이어질 수 있습니다.
프로덕션 환경에서는 이 취약점이 자주 검색됩니다. 해결 방법은 Apache 서버에서 프로토콜을 비활성화하는 것입니다.
(동영상 공유 학습: 프로그래밍 동영상)
1. 환경 준비
SSL 및 TLS 이해: http는 데이터 전송 시 일반 텍스트를 사용합니다. 이러한 문제를 해결하기 위해 https가 탄생했고, SSL은 https를 기반으로 합니다. 규약. SSL이 버전 3.0으로 업데이트되면서 IETF(Internet Engineering Task Force)에서 SSL3.0을 표준화했습니다. 표준화된 프로토콜은 TLS1.0이므로 TLS는 현재 SSL의 표준화된 제품인 1.0, 1.1, 1.2의 세 가지 버전이 있습니다. , 1.0이 기본적으로 사용됩니다. 이 시점에서 SSL 및 TLS에 대한 기본적인 이해가 이루어졌습니다.
웹 서버가 TLS1.2를 지원하기 위해 필요한 서버 운영 환경:
Apache对应版本应>=2.2.23; OpenSSL对应版本应>= 1.0.1
현재 서버 아파치 버전 확인
[root@host-192-168-149-10 conf.d]# httpd -v Server version: Apache/2.4.29 (Unix) Server built: Jan 22 2018 16:51:25
openssl 버전
[root@host-192-168-149-10 conf.d]# openssl version OpenSSL 1.0.1e-fips 11 Feb 2013
2. 환경 수정
보안 취약점이 있는 도메인 이름 테스트 sslv3를 통해 접속합니다. 다음과 같은 정보가 정상적으로 반환될 수 있으므로 공격자는 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
[root@host-192-168-149-10 conf.d]# curl --sslv3 https://cs.df230.xyz/test/api/configs/fedch/all { "overdue" : false, "success" : true, "errorCode" : null, "message" : "请求成功", "data" : { "global" : { "copyright" : "功能清单", }
apache는 기본적으로 SSLv3, TLSv1, TLSv1.1, TLSv1.2 프로토콜을 지원합니다
(참고: ssl 기능은 http.conf에서 LoadModule ssl_module 모듈/mod_ssl.so를 활성화해야 합니다)
apache 기본 구성은 다음과 같습니다.
SSLProtocol All -SSLv2
디렉터리/usr/local/apache/conf/extra
vi ssl.conf를 다음과 같이 수정하여 sslv3 프로토콜을 닫습니다.
SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLProtocol TLSv1.2
구성을 저장한 후 아파치를 다시 시작하려면 서비스 httpd를 다시 시작해야 구성이 완료됩니다. effect
sslv3 액세스를 다시 테스트해 보세요.
[root@host-192-168-149-10 conf.d]# curl --sslv3 https://cs.df230.xyz/test/api/configs/fedch/al curl: (35) SSL connect error
Google Chrome F12를 통해 개발 모드로 진입하면 현재 도메인 이름에 액세스하기 위해 브라우저에서 사용하는 SSL 프로토콜이 TLS1.2임을 알 수 있습니다.
이쯤 되면 취약점 수정이 완료되었으니 참 쉽죠!
관련 권장 사항: apache 튜토리얼
위 내용은 아파치에서 sslv3을 비활성화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!