반응형

이 문서는 기록 보관 및 자료 공유입니다. 백퍼센트 신뢰하지는 말아주세요.

 

KISA 권고

https://knvd.krcert.or.kr/detailSecNo.do?IDX=5866 

 

보안 취약점 정보 포털

닫기 검색

knvd.krcert.or.kr

 

영향을 받는 제품 및 해결 버전

제품명 취약점 (CVE-ID) 영향받는 버전 해결 버전
OpenSSL CVE-2023-0286
CVE-2022-4304
CVE-2023-0215
3.0 3.0.8
1.1.1 1.1.1t
1.0.2 1.0.2zg
CVE-2022-4203
CVE-2023-0216
CVE-2023-0217
CVE-2023-0401
3.0.0 ~ 3.0.7 3.0.8
CVE-2022-4450 3.0 3.0.8
1.1.1 1.1.1t

출처 : KISA

 

기본적으로 설치되어있는 OpenSSL 패키지 버전은 1.0.2k-fips 입니다.

 

https://www.openssl.org/source

 

/source/index.html

Downloads The master sources are maintained in our git repository, which is accessible over the network and cloned on GitHub, at https://github.com/openssl/openssl. Bugs and pull patches (issues and pull requests) should be filed on the GitHub repo. Please

www.openssl.org

 

사전에 필요한 패키지를 설치합시다.

yum install -y gcc gcc-c++ perl pcre-devel zlib-devel perl-core make

 

포스팅 기준 최신 버전으로 설치를 진행하려고 합니다. 이후 버전이 필요하신 분은 상단 openssl URL을 참고하세요.

wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz

 

컴파일에 필요한 추가 옵션은 하단의 문서 혹은 압축을 푼 디렉토리 내부의 INSTALL 파일을 확인 하시면 됩니다.

https://wiki.openssl.org/index.php/Compilation_and_Installation

 

Compilation and Installation - OpenSSLWiki

The following page is a combination of the INSTALL file provided with the OpenSSL library and notes from the field. If you have questions about what you are doing or seeing, then you should consult INSTALL since it contains the commands and specifies the b

wiki.openssl.org

 

OpenSSL 1.1.0 and above

OpenSSL 1.1.0 changed the behavior of install rules. You should specify both --prefix and --openssldir to ensure make install works as expected.
The takeaway is /usr/local/ssl is used by default, and it can be overridden with both --prefix and --openssldir. The rule of thumb applies for path overrides: specify both --prefix and --openssldir.

해당 문서를 참고하였을 때, 1.1.0 이상 버전을 설치 할 때는 prefix와 openssldir을 지정하여야 작동 확인이 가능하다고 명시되어 있습니다. 따라서 되도록이면 경로 지정을 하는게 좋습니다.

prefix :
OpenSSL을 설치 할 디렉토리
openssldir : 
OpenSSL에 구성될 기본 인증서 및 키 저장소

zlib의 경우 데이터 압축으로 인해 네트워크의 전송 데이터를 줄일 수 있고, SSL/TLS 이전 버전의 호환성을 유지 할 수 있지만, CRIM 공격에 취약하므로 zlib는 사용하지 않겠습니다.

따라서 컨픽값은 다음과 같습니다.

./config --prefix=/opt/openssl --openssldir=/usr/local/ssl no-ssl2 no-ssl3

 


컨픽 설정 후 make && make test를 통해 빌드와 테스트를 진행합니다.

[root@test123 openssl-1.1.1w]# ./config --prefix=/usr/local/openssl --openssldir=/usr/local/ssl no-ssl2 no-ssl3

Operating system: x86_64-whatever-linux2
Configuring OpenSSL version 1.1.1w (0x1010117fL) for linux-x86_64
Using os-specific seed configuration
Creating configdata.pm
Creating Makefile

**********************************************************************
***                                                                ***
***   OpenSSL has been successfully configured                     ***
***                                                                ***
***   If you encounter a problem while building, please open an    ***
***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
***   and include the output from the following command:           ***
***                                                                ***
***       perl configdata.pm --dump                                ***
***                                                                ***
***   (If you are new to OpenSSL, you might want to consult the    ***
***   'Troubleshooting' section in the INSTALL file first)         ***
***                                                                ***
**********************************************************************

[root@test123 openssl-1.1.1w]# make && make test

 

테스트가 정상적으로 끝나게 되면 다음과 같이 마지막에 표시가 됩니다.

 

빌드와 테스트가 끝났으니 설치를 하도록 합니다.

make install

 

정상적으로 설치가 되었다면, 위에서 설정한 경로 값으로 이동하여 확인해봅니다.

 

올바르게 설치가 된 것을 확인 할 수 있습니다.

 

그리고 설치된 openssl의 라이브러리와 바이너리 파일의 심볼릭 링크를 생성합니다.

ln -s /opt/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /opt/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
ln -s /opt/openssl/bin/openssl /bin/openssl

 

혹은 ldconfig을 이용하여 라이브러리 연동을 하셔도 됩니다.

echo "/opt/openssl/lib" >> /etc/ld.so.conf.d/openssl-1.1.1w.conf
ldconfig -v

 

마지막으로 정상적으로 설치되었는지 실행합시다.

 

반응형

'Linux' 카테고리의 다른 글

[Linux] Squid 프록시 설치  (0) 2023.09.21
[Linux] IPTables 개념  (0) 2023.09.21
CentOS 6 repolist  (0) 2023.09.20
CentOS 7 repolist  (0) 2023.09.20
[CVE-2023-38408] OpenSSH 업그레이드  (0) 2023.09.19