Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2020-1971 — CVE-2020-1971 자동 스캔 및 원격 익스플로잇 스크립트. 자동 로컬 스캔 및 패치 스크립트. | Kitploit
도구/GitHubGitHub/mbhudson/cve-2020-1971
Vulnerability AnalysisExploitationScripting & AutomationCryptographyLearning & Education
GitHubmbhudson/cve-2020-1971

CVE-2020-1971

CVE-2020-1971 자동 스캔 및 원격 익스플로잇 스크립트. 자동 로컬 스캔 및 패치 스크립트.

저장소 보기
725년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2020-1971

CVE-2020-1971 자동 스캔 및 원격 익스플로잇 스크립트. 자동 로컬 스캔 및 패치 스크립트.

현재 개발 중

  • OpenSSL 1.1.1i의 패치된 소스 코드
  • 소스에서 설치/업데이트 .deb 스크립트 현재 개발 중 5:38pm 완료 5:50pm
  • 소스에서 설치/업데이트 (Windows) 현재 개발 중 6:06pm 완료 6:40pm
  • 자동 압축 풀림 EXE 여기 다운로드: 32-bit/64-bit
  • 취약점 자동 스캔/원격 익스플로잇 스크립트 (로컬)
  • 취약점 자동 스캔/원격 익스플로잇 스크립트 (원격)

2020년 12월 9일

5:03pm

현재 스크립트를 개발 중이며 오늘 밤까지 모든 것을 내놓기를 바랍니다. 현재 이 저장소에는 패치된 OpenSSL 1.1.1i 소스만 포함되어 있습니다. 현재 설치/업데이트 패치 스크립트를 작업 중입니다.


5:50pm

Debian/Ubuntu Linux 설치 스크립트 업로드되었습니다. 설치 지침은 "Linux 설치"를 참조하십시오.


6:40pm

  1. Windows 소스 코드에서 설치 항목의 Windows 소스에서 설치 지침
  2. 자동 설치 프로그램 32/64비트 업로드됨 여기 다운로드: 32-bit/64-bit

취약점 설명

X.509 GeneralName 유형은 다양한 이름 유형을 표현하기 위한 일반 유형입니다. 이러한 이름 유형 중 하나를 EDIPartyName이라고 합니다. OpenSSL은 GENERAL_NAME의 서로 다른 인스턴스를 비교하여 동일한지 여부를 확인하는 함수 GENERAL_NAME_cmp를 제공합니다. 이 함수는 두 GENERAL_NAME에 모두 EDIPARTYNAME이 포함된 경우 올바르게 작동하지 않습니다. NULL 포인터 역참조 및 충돌이 발생할 수 있으며, 이는 서비스 거부 공격으로 이어질 수 있습니다.

OpenSSL 자체는 두 가지 목적으로 GENERAL_NAME_cmp 함수를 사용합니다.

  1. 사용 가능한 CRL과 X509 인증서에 내장된 CRL 배포 지점 간의 CRL 배포 지점 이름 비교

  2. 타임스탬프 응답 토큰 서명자가 타임스탬프 기관 이름과 일치하는지 확인 (API 함수 TS_RESP_verify_response 및 TS_RESP_verify_token을 통해 노출됨)

공격자가 비교되는 두 항목을 모두 제어할 수 있는 경우 충돌을 유발할 수 있습니다. 예를 들어, 공격자가 클라이언트나 서버를 속여 악성 인증서와 악성 CRL을 확인하게 할 수 있다면 이러한 상황이 발생할 수 있습니다.

일부 애플리케이션은 인증서에 포함된 URL을 기반으로 CRL을 자동으로 다운로드합니다. 이 확인은 인증서 및 CRL의 서명이 검증되기 전에 수행됩니다. OpenSSL의 s_server, s_client 및 verify 도구는 자동 CRL 다운로드를 구현하는 "-crl_download" 옵션을 지원하며, 이 공격이 해당 도구에 대해 작동하는 것으로 입증되었습니다.

관련 없는 버그로 인해 영향을 받는 OpenSSL 버전은 EDIPARTYNAME의 올바른 인코딩을 구문 분석하거나 구성할 수 없습니다. 그러나 OpenSSL의 파서가 허용할 수 있는 잘못된 형식의 EDIPARTYNAME을 구성하여 이 공격을 유발할 수 있습니다.

모든 OpenSSL 1.1.1 및 1.0.2 버전이 이 문제의 영향을 받습니다. 다른 OpenSSL 릴리스는 지원이 종료되었으며 확인되지 않았습니다. OpenSSL 1.1.1i에서 수정됨 (영향 1.1.1-1.1.1h). OpenSSL 1.0.2x에서 수정됨 (영향 1.0.2-1.0.2w).


Linux 설치

root@kitploit:~
sudo chmod +x Linux_Patched_Install_From_Source_Script

실행:

root@kitploit:~
sudo ./Linux_Patched_Install_From_Source_Script

Windows 소스 코드에서 설치

"네이티브" OpenSSL은 런타임에 Windows API를 직접 사용합니다. 네이티브 OpenSSL을 빌드하려면 다음 중 하나를 사용할 수 있습니다:

명령줄에서 Microsoft Visual C++ (MSVC) C 컴파일러

또는

MinGW 크로스 컴파일러 GNU 유사 개발 환경 MSYS2에서 실행 또는 Linux 또는 Cygwin에서 실행

"호스팅된" OpenSSL은 빌드(GNU/Unix 셸, 컴파일러 및 도구 사용) 및 런타임 시 외부 POSIX 호환성 계층에 의존합니다. 이 옵션을 위해 Cygwin을 사용할 수 있습니다.

Visual C++ 네이티브 빌드, 일명 VC-*

요구 사항 세부 정보

INSTALL.md에 나열된 요구 사항 및 지침 외에도 다음이 필요합니다:

  • Perl. Strawberry Perl, http://strawberryperl.com/에서 구할 수 있음 자세한 내용은 NOTES.PERL을 읽어 주세요. CPAN 사용도 포함됩니다. 대안으로 ActiveState Perl, https://www.activestate.com/ActivePerl이 있으며, Perl 모듈 Win32/Console.pm을 https://platform.activestate.com/ActiveState를 통해 명시적으로 빌드한 후 다운로드해야 할 수 있습니다.

  • Microsoft Visual C 컴파일러.

  • Netwide Assembler (NASM), https://www.nasm.us에서 구할 수 있음 NASM만 지원되는 어셈블러입니다.

빠른 시작

  1. Perl 설치

  2. NASM 설치

  3. Perl과 NASM이 모두 %PATH%에 있는지 확인

  4. 관리자 권한으로 Visual Studio 개발자 명령 프롬프트를 사용하고, 의도한 아키텍처에 따라 변형 중 하나를 선택합니다. 또는 "cmd"를 실행하고 "vcvarsall.bat"을 x86, x86_amd64, x86_arm, x86_arm64, amd64, amd64_x86, amd64_arm 또는 amd64_arm64 옵션 중 하나로 실행합니다. 이렇게 하면 nmake.exe, cl.exe 등에 필요한 환경 변수가 설정됩니다. 참조 https://docs.microsoft.com/cpp/build/building-on-the-command-line

  5. OpenSSL 소스 디렉터리의 루트에서 다음을 실행합니다. perl Configure VC-WIN32 (32비트 OpenSSL을 원하는 경우) 또는 perl Configure VC-WIN64A (64비트 OpenSSL을 원하는 경우) 또는 perl Configure (Configure가 플랫폼을 자동으로 파악하도록 함)

  6. nmake

  7. nmake test

  8. nmake install

전체 설치 지침 또는 어느 단계에서든 문제가 발생하는 경우 INSTALL.md 파일을 확인하세요.

설치 디렉터리

기본 설치 디렉터리는 환경 변수에서 파생됩니다.

VC-WIN32의 경우 다음 기본값이 사용됩니다:

root@kitploit:~
 PREFIX:      %ProgramFiles(86)%\OpenSSL
 OPENSSLDIR:  %CommonProgramFiles(86)%\SSL

VC-WIN64의 경우 다음 기본값이 사용됩니다:

root@kitploit:~
 PREFIX:      %ProgramW6432%\OpenSSL
 OPENSSLDIR:  %CommonProgramW6432%\SSL

이러한 환경 변수가 존재하지 않는 경우(예를 들어 순수 Win32 설치), 다음 대체 값이 사용됩니다:

root@kitploit:~
 PREFIX:      %ProgramFiles%\OpenSSL
 OPENSSLDIR:  %CommonProgramFiles%\SSL

또한 이러한 디렉터리는 일반적으로 계정이 관리자 그룹에 속해 있더라도 쓰기 보호되어 있습니다. 이 문제를 해결하려면 'nmake install'을 실행하기 전에 명령 프롬프트를 마우스 오른쪽 버튼으로 클릭하고 "관리자 권한으로 실행"을 선택하여 시작하십시오. 다른 해결책은 구성 시 --prefix 및 --openssldir를 사용하여 다른 디렉터리 집합을 선택하는 것입니다.

유니버셜 Windows 플랫폼 빌드, 일명 VC-*-UWP에 대한 특별 참고 사항

  • UWP 타겟은 정적 및 동적 라이브러리 빌드만 지원합니다.

  • 컴파일하기 전에 "vcvarsall.bat"을 통해 "uwp"로 플랫폼 유형을 정의하고 타겟 아키텍처를 정의해야 합니다. 예를 들어 "arm64" 빌드를 원하는 경우 "vcvarsall.bat x86_arm64 uwp"를 실행하십시오.


참고문헌

참고문헌은 해당 취약점을 구별하는 데 도움이 되도록 독자의 편의를 위해 제공됩니다.

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=2154ab83e14ede338d2ede9bbe5cdfce5d5a6c9eURL

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=2154ab83e14ede338d2ede9bbe5cdfce5d5a6c9eCONFIRM

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f960d81215ebf3f65e03d4d5d857fb9b666d6920URL

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f960d81215ebf3f65e03d4d5d857fb9b666d6920CONFIRM

https://www.openssl.org/news/secadv/20201208.txtURL:https://www.openssl.org/news/secadv/20201208.txtDEBIAN:DSA-4807URL

https://www.debian.org/security/2020/dsa-4807FREEBSD:FreeBSD-SA-20:33URL

https://security.FreeBSD.org/advisories/FreeBSD-SA-20:33.openssl.asc

도구 다운로드