はじめに:
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 の標準化製品です。TLS には現在 1.0、1.1、1.2 の 3 つのバージョンがあります、デフォルトでは 1.0 が使用されます。この時点で、SSL と TLS の基本を理解しました。
Web サーバーが TLS1.2 をサポートするために必要なサーバー動作環境:
Apache对应版本应>=2.2.23; OpenSSL对应版本应>= 1.0.1
現在のサーバーの Apache バージョンを表示します
[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 modules/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
設定を保存した後、設定を有効にするために Apache を再起動するためにサービス httpd の再起動が必要です
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 ブラウザ F12 を使用して開発モードに入り、ブラウジングを確認できます。 現在のドメイン名にアクセスするためにサーバーが使用する SSL プロトコルは TLS1.2 です。
この時点で、脆弱性の修正は完了したので、とても簡単です。
関連する推奨事項: apache チュートリアル
以上がApacheでsslv3を無効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。