이 영역을 누르면 첫 페이지로 이동
우당탕탕 보안이야기 블로그의 첫 페이지로 이동

우당탕탕 보안이야기

페이지 맨 위로 올라가기

우당탕탕 보안이야기

- 모의 해킹 - 취약점 분석/진단 - AWS

[역량강화] TLS 1.0, TLS 1.1 버전이 취약한 이유

  • 2024.03.21 01:01
  • Red Team/정보보안
반응형

- 2024.03.21 -

 

마찬가지로, 두번째 역량강화가 끝났다.

한.. 20일 새벽에 끝났는데 바로 올릴까 하다가 업무 끝나고 조금 쉬다보니 ㅋㅋㅋ

시간이 벌써 하루가 다 가버렸다.

각설하고 바로 시작해보자.


목차

1. TLSv1.0, TLSv1.1 버전이 왜 취약한가?

2. 아래의 사이트를 통해 target(도메인)을 진단후 결과값에서 TLSv1.0, v1.1 버전 접속이 가능여부 확인

    ssl 취약점 분석 사이트 : https://www.ssllabs.com/ssltest/

3. openssl.exe 가 무엇인지 조사하기 & 설치

4. openssl을 통해 target(도메인)이 사용중인 TLS 버전이 뭔지 알 수 있는 방법 조사하기

5. openssl을 통해 target(도메인)에 TLSv1.0, 1.1, 1.2, 1.3 연결이 가능한지 알아낼 수 있는 방법 조사하기

6. 4번 5번의 결과를 출력하는 배치파일 제작하기.


1. TLSv1.0, TLSv1.1 버전이 왜 취약한지 조사하기

     1.1 TLS란?

TLSv1.0과 1.1이 왜 취약한지 알기위해서는 TLS가 무엇인지 알아야한다.
TLS(Transport Layer Security)는 데이터 통신을 암호화하고 안전하게 전송하기 위해 고안된 프로토콜이다.

네트워크에서 데이터 통신을 함에 이를 보호하기 위한 고안되어 TLS는 안전한 통신 채널을 설정 및 인증을 위해 사용된다. 주로 웹 브라우저와 웹 서버간의 통신에 사용이 되며 HTTPS로도 알려져 있다. HTTPS는 SSL 프로토콜의 후속버전으로, TLS를 기반으로 작동한다. TLS는 아래와 같이 구분하고 구분에 따라 기능을 수행한다.

 

                1.     암호화 : 데이터를 안전하게 암호화하여 제3자가 데이터를 가로채어도 읽을 수 없도록 한다.

                2.     인증 : 클라이언트 및 서버 간의 상호 인증을 통해 통신하는 대상을 식별한다.

                3.     데이터 무결성 보호 : 데이터가 전송 중에 변경, 손상되지 않도록 무결성을 보장한다.

                4.     완전성 보호 : 데이터가 전송 중에 변조되거나 위조되지 않도록 보장한다.

 

     1.2 TLS1.0과 TLS1.1이 취약한 이유

           1. 암호화 알고리즘의 취약성 : TLS 1.0과 1.1은 DES및 3DES와 같은 암호화 알고리즘을 사용하고 있는데 이런 알 고리즘은 키가 짧고 암호분석기술이 발전함에 따라 표준기술에서 폐기되었다. 현재 NIST를 포함한 다른 기관에서 권장하지 않는 암호화 알고리즘이며 결정적으로 선형미분공격 및 생일공격과 같은 암호학적 공격기법들이 등장함에 따라 더 이상 안전하지 않는 암호화 알고리즘으로 평가되고 있다.

 

            2. 키 교환 알고리즘 취약성 : TLS1.0과 1.1은 RSA라고 부르는 키 교환방식을 사용하며 이는 공격자가 중간에 키를 가로 챌 수 있는 중간자공격에 취약하다. 지금 TLS1.2와 TLS1.3에서는 이러한 방법을 대비할 수 있게 안전한 매커니즘이 조치가 가능하나 1.0과 1.1에서는 방법이 부족한것으로 알고 있다.

 

            3. 암호화 오버헤드 : TLS1.0과 TLS1.1에는 취약한 기능과 알려진 보안결함이 있으며 이러한 결함을 이용해 공격자는 중요정보를 노출시킬 수 있고, 더 나아가서는 시스템 침투할 수 있는 가능성을 제공한다.

 

2. 아래의 사이트를 통해 target(도메인)을 진단후 결과값에서 TLSv1.0, v1.1 버전 접속이 가능여부 확인
ssl 취약점 분석 사이트 : https://www.ssllabs.com/ssltest/

Qualys에서 지원하고 있는 SSL취약점 분석 사이트

 

[사진1] Qualys Guard Labs SSL Report

NAVER를 넣어 조회해보니 B등급이 확인되었다.

[사진2] TLS Configuration

위 처럼 지원하는 TLS버전이 1.0과 1.1이렇게 두가지가 존재하는 것을 확인 할 수 있다.

 

3. Openssl.exe 가 무엇인지 조사하기 & 설치

      3.1 OpenSSL이란?

평균적으로 사용되고 있는 대부분의 대칭/비대칭 암호화 프로토콜을 구현한 오픈소스 라이브러리로, 가장 대표적으로 SSL/TLS와 관련된 기능들을 제공하며 폭 넓게 사용되는 암호화계의 사실상 표준이다.

 

      3.2 설치 과정

           링크로 접근하여 가장 최신 버전으로 다운로드 후 설치

           https://slproweb.com/products/Win32OpenSSL.html

OpenSSL 환경변수 설정
시스템 환경변수 설정 경로 “C:\Program Files\OpenSSL-Win64\bin” 추가

※ 경로는 설치된 환경과 이름마다 조금씩 상이함.

 

4. Openssl을 통해 target(도메인)이 사용중인 TLS 버전이 뭔지 알 수 있는 방법 조사하기

s_client명령어를 이용하여 특정 대상과 통신을 시도할 수 있다.

 

openssl s_client -connect naver.com:443

 

 

5. Openssl을 통해 target(도메인)에 TLSv1.0, 1.1, 1.2, 1.3 연결이 가능한지 알아낼 수 있는 방법 조사하기

4번과 동일하게 명령어를 이용하되 뒤에 옵션을 붙여 사용할 수 있다.

명령어 'tls1_@'는 각각 1.0~1.3까지를 일컺는다.

openssl s_client -connect naver.com:443 -tls1
openssl s_client -connect naver.com:443 -tls1_1
openssl s_client -connect naver.com:443 -tls1_2
openssl s_client -connect naver.com:443 -tls1_3

 

 

6. 4번 5번의 결과를 출력하는 배치파일 제작하기.

TLS Checker Ver1.0

 

@echo off
title TLS Checker
set /p domain=도메인 주소를 입력하세요: 

echo.
echo. 
echo   ######   ####      #####              ####   ##   ##  #######    ####   ###  ## 
echo   # ## #    ##      ##   ##            ##  ##  ##   ##   ##   #   ##  ##   ##  ## 
echo     ##      ##      #                 ##       ##   ##   ## #    ##        ## ## 
echo     ##      ##       #####            ##       #######   ####    ##        #### 
echo     ##      ##   #       ##           ##       ##   ##   ## #    ##        ## ## 
echo     ##      ##  ##  ##   ##            ##  ##  ##   ##   ##   #   ##  ##   ##  ## 
echo    ####    #######   #####              ####   ##   ##  #######    ####   ###  ## 
echo                             ########
echo.
echo.

echo TLS Checker Target: %domain%
echo.

echo TLS 1.0 지원 여부:
openssl s_client -connect %domain%:443 -tls1 2>nul | findstr /C:"Protocol" | findstr /C:"TLSv1.0" >nul && (
    echo TLS 1.0 지원 중
    openssl s_client -connect %domain%:443 -tls1 2>nul | findstr /C:"Protocol"
) || (
    echo TLS 1.0 미지원
)
echo.

echo TLS 1.1 지원 여부:
openssl s_client -connect %domain%:443 -tls1_1 2>nul | findstr /C:"Protocol" | findstr /C:"TLSv1.1" >nul && (
    echo TLS 1.1 지원 중
    openssl s_client -connect %domain%:443 -tls1_1 2>nul | findstr /C:"Protocol"
) || (
    echo TLS 1.1 미지원
)
echo.

echo TLS 1.2 지원 여부:
openssl s_client -connect %domain%:443 -tls1_2 2>nul | findstr /C:"Protocol" | findstr /C:"TLSv1.2" >nul && (
    echo TLS 1.2 지원 중
    openssl s_client -connect %domain%:443 -tls1_2 2>nul | findstr /C:"Protocol"
) || (
    echo TLS 1.2 미지원
)
echo.

echo TLS 1.3 지원 여부:
openssl s_client -connect %domain%:443 -tls1_3 2>nul | findstr /C:"Protocol" | findstr /C:"TLSv1.3" >nul && (
    echo TLS 1.3 지원 중
    openssl s_client -connect %domain%:443 -tls1_3 2>nul | findstr /C:"Protocol"
) || (
    echo TLS 1.3 미지원
)
echo.

echo 완료되었습니다.
pause

 

 

나중에 조금 더 고도화해서 다시 한번 더 올려봐야겠다.

 

 

 

- 2024.03.21 -

 

고도화 ver1.5

변경사항

txt파일에 도메인을 저장해두면 여러개의 도메인을 앞으로 확인할 수 있습니다.
도출된 결과값은 앞으로 cmd 창에 나타나지 않으며 csv파일로 저장되어 bat파일과 같은 위치에 저장됩니다.

↓ 다운로드 링크 ↓

https://gofile.me/7hBhx/qAyNYzso0

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Red Team > 정보보안' 카테고리의 다른 글

CVSS 3.1 Calculate 및 각 명칭 별 설명  (2) 2024.12.23
[SMTP] SMTP 상태코드(에러코드)별 종류와 이유  (1) 2024.06.04
[역량강화] 서브도메인 스캔과 nmap 사용법 및 OSINT  (1) 2024.06.03
[역량강화] Curl 이란?  (0) 2024.05.17

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • CVSS 3.1 Calculate 및 각 명칭 별 설명

    CVSS 3.1 Calculate 및 각 명칭 별 설명

    2024.12.23
  • [SMTP] SMTP 상태코드(에러코드)별 종류와 이유

    [SMTP] SMTP 상태코드(에러코드)별 종류와 이유

    2024.06.04
  • [역량강화] 서브도메인 스캔과 nmap 사용법 및 OSINT

    [역량강화] 서브도메인 스캔과 nmap 사용법 및 OSINT

    2024.06.03
  • [역량강화] Curl 이란?

    [역량강화] Curl 이란?

    2024.05.17
다른 글 더 둘러보기

정보

우당탕탕 보안이야기 블로그의 첫 페이지로 이동

우당탕탕 보안이야기

  • 우당탕탕 보안이야기의 첫 페이지로 이동

검색

메뉴

  • 홈

카테고리

  • 분류 전체보기 (66)
    • Whoami (1)
    • Malicious Code (9)
      • Analysis (5)
      • Review (4)
      • Recent Trend (0)
    • Digital Forensic (1)
    • Red Team (28)
      • Penetration Testing & CTF (13)
      • Tools (6)
      • 정보보안 (5)
      • Script (0)
      • AOS (4)
      • IOS (0)
    • Data Base (0)
    • Cloud System (3)
      • AWS (3)
    • OS (9)
      • Linux X (3)
      • Windows X (6)
    • Develope (14)
      • Dev Tools (3)
      • HTML (5)
      • CSS (4)
      • Python (1)
      • Source Code 분석 (1)
    • Synology (1)
      • NAS 서버 운영 (0)
      • NAS 서버 구축 (1)

정보

Wolfcall의 우당탕탕 보안이야기

우당탕탕 보안이야기

Wolfcall

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © Wolfcall. Designed by Fraccino.

티스토리툴바