Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
tlsx — TLS 기반 데이터 수집에 중점을 둔 빠르고 구성 가능한 TLS 그래버. | Kitploit
도구/GitHubGitHub/projectdiscovery/tlsx
ReconnaissanceDNS & Subdomain EnumerationInformation GatheringNetwork SecurityMisconfiguration
GitHubprojectdiscovery/tlsx

tlsx

TLS 기반 데이터 수집에 중점을 둔 빠르고 구성 가능한 TLS 그래버.

저장소 보기
1.1k156506일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
<h1 align="center">
<img src="https://assets.kitploit.com/production/public/readmes/41152/5378854a9ce1d6b8be992803fef258be9a652c389d699c22f4636b6db34acdf6.png" width="200px">
<br>
</h1>


<p align="center">
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/license-MIT-_red.svg"></a>
<a href="https://goreportcard.com/badge/github.com/projectdiscovery/tlsx"><img src="https://goreportcard.com/badge/github.com/projectdiscovery/tlsx"></a>
<a href="https://pkg.go.dev/github.com/projectdiscovery/tlsx/pkg/tlsx"><img src="https://img.shields.io/badge/go-reference-blue"></a>
<a href="https://github.com/projectdiscovery/tlsx/releases"><img src="https://img.shields.io/github/release/projectdiscovery/tlsx"></a>
<a href="https://twitter.com/pdiscoveryio"><img src="https://img.shields.io/twitter/follow/pdiscoveryio.svg?logo=twitter"></a>
<a href="https://discord.gg/projectdiscovery"><img src="https://img.shields.io/discord/695645237418131507.svg?logo=discord"></a>
</p>

<p align="center">
  <a href="#features">기능</a> •
  <a href="#installation">설치</a> •
  <a href="#usage">사용법</a> •
  <a href="#running-tlsx">tlsx 실행</a> •
  <a href="https://discord.gg/projectdiscovery">Discord 참여</a>
</p>


TLS 기반 **데이터 수집 및 분석**에 중점을 둔 빠르고 구성 가능한 TLS 그래버입니다.


# 기능

![image](https://assets.kitploit.com/production/public/readmes/41152/88f7e18778d1a4ca8377c8c4e53356c0032912729f5ddd0492ffedaaa3797e05.png)

 - 빠르고 완전히 구성 가능한 TLS 연결
 - 다양한 **TLS 연결 모드**
 - 여러 **TLS 프로브**
 - 이전 TLS 버전용 **자동 TLS 폴백**
 - **핸드셰이크 전** TLS 연결(조기 종료)
 - 사용자 정의 가능한 **Cipher / SNI / TLS** 선택
 - **JARM/JA3** TLS 핑거프린트
 - **TLS 잘못된 구성**
 - **ASN, CIDR, IP, HOST** 및 **URL** 입력
 - STD **IN/OUT** 및 **TXT/JSON** 출력


## 설치

tlsx를 설치하려면 **Go 1.24**가 필요합니다. 설치하려면 아래 명령을 실행하거나 [릴리스 페이지](https://github.com/projectdiscovery/tlsx/releases)에서 사전 컴파일된 바이너리를 다운로드하세요.```console
go install github.com/projectdiscovery/tlsx/cmd/tlsx@latest
```
## 사용법```console
tlsx -h
```
이 도구에 대한 도움말이 표시됩니다. 지원하는 모든 스위치는 다음과 같습니다.```console
TLSX is a tls data gathering and analysis toolkit.

Usage:
  tlsx [flags]

Flags:
INPUT:
   -u, -host string[]  target host to scan (-u INPUT1,INPUT2)
   -l, -list string    target list to scan (-l INPUT_FILE)
   -p, -port string[]  target port to connect (default 443)

SCAN-MODE:
   -sm, -scan-mode string     tls connection mode to use (ctls, ztls, openssl, auto) (default "auto")
   -ps, -pre-handshake        enable pre-handshake tls connection (early termination) using ztls
   -sa, -scan-all-ips         scan all ips for a host (default false)
   -iv, -ip-version string[]  ip version to use (4, 6) (default 4)

PROBES:
   -san                     display subject alternative names
   -cn                      display subject common names
   -so                      display subject organization name
   -tv, -tls-version        display used tls version
   -cipher                  display used cipher
   -hash string             display certificate fingerprint hashes (md5,sha1,sha256)
   -jarm                    display jarm fingerprint hash
   -ja3                     display ja3 fingerprint hash (using ztls)
   -wc, -wildcard-cert      display host with wildcard ssl certificate
   -tps, -probe-status      display tls probe status
   -ve, -version-enum       enumerate and display supported tls versions
   -ce, -cipher-enum        enumerate and display supported cipher
   -ct, -cipher-type value  ciphers types to enumerate. possible values: all/secure/insecure/weak (comma-separated) (default all)
   -ch, -client-hello       include client hello in json output (ztls mode only)
   -sh, -server-hello       include server hello in json output (ztls mode only)
   -se, -serial             display certificate serial number

MISCONFIGURATIONS:
   -ex, -expired      display host with host expired certificate
   -ss, -self-signed  display host with self-signed certificate
   -mm, -mismatched   display host with mismatched certificate
   -re, -revoked      display host with revoked certificate
   -un, -untrusted    display host with untrusted certificate

CONFIGURATIONS:
   -config string               path to the tlsx configuration file
   -r, -resolvers string[]      list of resolvers to use
   -cc, -cacert string          client certificate authority file
   -ci, -cipher-input string[]  ciphers to use with tls connection
   -sni string[]                tls sni hostname to use
   -rs, -random-sni             use random sni when empty
   -rps, -rev-ptr-sni           perform reverse PTR to retrieve SNI from IP
   -min-version string          minimum tls version to accept (ssl30,tls10,tls11,tls12,tls13)
   -max-version string          maximum tls version to accept (ssl30,tls10,tls11,tls12,tls13)
   -cert, -certificate          include certificates in json output (PEM format)
   -tc, -tls-chain              include certificates chain in json output
   -vc, -verify-cert            enable verification of server certificate
   -ob, -openssl-binary string  OpenSSL Binary Path
   -hf, -hardfail               strategy to use if encountered errors while checking revocation status
   -proxy string                socks5 proxy to use for tlsx

OPTIMIZATIONS:
   -c, -concurrency int  number of concurrent threads to process (default 300)
   -cec, -cipher-concurrency int  cipher enum concurrency for each target (default 10)
   -timeout int          tls connection timeout in seconds (default 5)
   -retry int            number of retries to perform for failures (default 3)
   -delay string         duration to wait between each connection per thread (eg: 200ms, 1s)

UPDATE:
   -up, -update                 update tlsx to latest version
   -duc, -disable-update-check  disable automatic tlsx update check

OUTPUT:
   -o, -output string  file to write output to
   -j, -json           display output in jsonline format
   -dns                display unique hostname from SSL certificate response
   -ro, -resp-only     display tls response only
   -silent             display silent output
   -nc, -no-color      disable colors in cli output
   -v, -verbose        display verbose output
   -version            display project version

PDCP:
   -pd, -dashboard              upload or view output in the PDCP UI dashboard
   -pdu, -dashboard-upload string  upload tlsx output file (JSONL format) to the PDCP UI dashboard
   -auth string                  PDCP API key for authentication
   -tid, -team-id string         upload asset results to a specified team ID
   -aid, -asset-id string        upload new assets to an existing asset ID
   -aname, -asset-name string    asset group name

DEBUG:
   -health-check, -hc  run diagnostic check up
```
## Using tlsx as library

tlsx를 라이브러리로 사용하는 예제는 [examples](https://github.com/projectdiscovery/tlsx/blob/main/examples) 폴더에서 제공됩니다.

## Running tlsx

### Input for tlsx

**tlsx**는 TLS 연결을 위해 **ip**가 필요하며, 아래 나열된 것처럼 여러 형식을 허용합니다:```bash
AS1449 # ASN input
173.0.84.0/24 # CIDR input
93.184.216.34 # IP input
example.com # DNS input
example.com:443 # DNS input with port
https://example.com:443 # URL input port
```
입력 호스트는 `-host / -u` 플래그를 사용하여 제공할 수 있으며, 여러 값을 쉼표로 구분된 입력으로 제공할 수 있습니다. 마찬가지로 **파일** 입력은 `-list / -l` 플래그를 사용하여 지원됩니다.

쉼표로 구분된 호스트 입력 예시:```console
$ tlsx -u 93.184.216.34,example.com,example.com:443,https://example.com:443 -silent
```
파일 기반 호스트 입력의 예:```console
$ tlsx -list host_list.txt
```
**포트 입력:**

**tlsx**는 기본적으로 **443** 포트에 연결되며, `-port / -p` 플래그를 사용하여 사용자 정의할 수 있습니다. 단일 또는 여러 포트는 쉼표로 구분된 입력 또는 연결할 포트 목록이 포함된 줄바꿈 구분 파일을 사용하여 지정할 수 있습니다.


쉼표로 구분된 포트 입력 예:```
$ tlsx -u hackerone.com -p 443,8443
```
파일 기반 포트 입력 예시:```
$ tlsx -u hackerone.com -p port_list.txt
```
**참고:**

> 입력 호스트에 포트가 포함된 경우(예: `8.8.8.8:443` 또는 `hackerone.com:8443`), 호스트와 함께 지정된 포트가 기본 포트 또는 `-port / -p` 플래그로 제공된 포트 대신 TLS 연결에 사용됩니다.

### TLS 프로브 (기본 실행)

이 도구는 주어진 CIDR 범위에 대해 실행되어 포트 443에서 TLS 연결을 허용하는 호스트를 반환합니다.```console
$ echo 173.0.84.0/24 | tlsx 
  

  _____ _    _____  __
 |_   _| |  / __\ \/ /
   | | | |__\__ \>  < 
   |_| |____|___/_/\_\  v0.0.1

    projectdiscovery.io

[WRN] Use with caution. You are responsible for your actions.
[WRN] Developers assume no liability and are not responsible for any misuse or damage.

173.0.84.69:443
173.0.84.67:443
173.0.84.68:443
173.0.84.66:443
173.0.84.76:443
173.0.84.70:443
173.0.84.72:443
```
### SAN/CN 프로브

TLS 인증서에는 **subject alternative name** 및 **common name** 필드 아래에 DNS 이름이 포함되어 있으며, `-san`, `-cn` 플래그를 사용하여 추출할 수 있습니다.```console
$ echo 173.0.84.0/24 | tlsx -san -cn -silent

173.0.84.104:443 [uptycspay.paypal.com]
173.0.84.104:443 [api-3t.paypal.com]
173.0.84.104:443 [api-m.paypal.com]
173.0.84.104:443 [payflowpro.paypal.com]
173.0.84.104:443 [pointofsale-s.paypal.com]
173.0.84.104:443 [svcs.paypal.com]
173.0.84.104:443 [uptycsven.paypal.com]
173.0.84.104:443 [api-aa.paypal.com]
173.0.84.104:443 [pilot-payflowpro.paypal.com]
173.0.84.104:443 [pointofsale.paypal.com]
173.0.84.104:443 [uptycshon.paypal.com]
173.0.84.104:443 [api.paypal.com]
173.0.84.104:443 [adjvendor.paypal.com]
173.0.84.104:443 [zootapi.paypal.com]
173.0.84.104:443 [api-aa-3t.paypal.com]
173.0.84.104:443 [uptycsize.paypal.com]
```
자동화의 편의를 위해, 선택적으로 `-resp-only` 플래그를 사용하여 CLI 출력에서 DNS 이름만 나열할 수 있습니다.```console
$ echo 173.0.84.0/24 | tlsx -san -cn -silent -resp-only

api-aa-3t.paypal.com
pilot-payflowpro.paypal.com
pointofsale-s.paypal.com
uptycshon.paypal.com
a.paypal.com
adjvendor.paypal.com
zootapi.paypal.com
api-aa.paypal.com
payflowpro.paypal.com
pointofsale.paypal.com
uptycspay.paypal.com
api-3t.paypal.com
uptycsize.paypal.com
api.paypal.com
api-m.paypal.com
svcs.paypal.com
uptycsven.paypal.com
uptycsven.paypal.com
a.paypal.com
api.paypal.com
pointofsale-s.paypal.com
pilot-payflowpro.paypal.com
```
**하위 도메인** TLS 인증서에서 얻은 **하위 도메인**은 추가 검사를 위해 다른 PD 도구로 파이프할 수 있습니다. 다음은 TLS 하위 도메인을 **[dnsx](https://github.com/projectdiscovery/dnsx)**로 파이프하여 패시브 하위 도메인을 필터링하고, 이를 **[httpx](https://github.com/projectdiscovery/httpx)**로 전달하여 활성 웹 서비스를 실행 중인 호스트를 나열하는 예입니다.```console
$ echo 173.0.84.0/24 | tlsx -san -cn -silent -resp-only | dnsx -silent | httpx

    __    __  __       _  __
   / /_  / /_/ /_____ | |/ /
  / __ \/ __/ __/ __ \|   /
 / / / / /_/ /_/ /_/ /   |
/_/ /_/\__/\__/ .___/_/|_|
             /_/              v1.2.2

    projectdiscovery.io

Use with caution. You are responsible for your actions.
Developers assume no liability and are not responsible for any misuse or damage.
https://api-m.paypal.com
https://uptycsize.paypal.com
https://api.paypal.com
https://uptycspay.paypal.com
https://svcs.paypal.com
https://adjvendor.paypal.com
https://uptycshap.paypal.com
https://uptycshon.paypal.com
https://pilot-payflowpro.paypal.com
https://slc-a-origin-pointofsale.paypal.com
https://uptycsven.paypal.com
https://api-aa.paypal.com
https://api-aa-3t.paypal.com
https://uptycsbrt.paypal.com
https://payflowpro.paypal.com
http://pointofsale-s.paypal.com
http://slc-b-origin-pointofsale.paypal.com
http://api-3t.paypal.com
http://zootapi.paypal.com
http://pointofsale.paypal.com
```
### TLS / Cipher 프로브```console
$ subfinder -d hackerone.com | tlsx -tls-version -cipher

mta-sts.hackerone.com:443 [TLS1.3] [TLS_AES_128_GCM_SHA256]
hackerone.com:443 [TLS1.3] [TLS_AES_128_GCM_SHA256]
api.hackerone.com:443 [TLS1.3] [TLS_AES_128_GCM_SHA256]
mta-sts.managed.hackerone.com:443 [TLS1.3] [TLS_AES_128_GCM_SHA256]
mta-sts.forwarding.hackerone.com:443 [TLS1.3] [TLS_AES_128_GCM_SHA256]
www.hackerone.com:443 [TLS1.3] [TLS_AES_128_GCM_SHA256]
support.hackerone.com:443 [TLS1.2] [TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256]
```
# TLS 구성 오류

### 만료 / 자체 서명 / 불일치 / 폐기 / 신뢰할 수 없는 인증서

호스트 목록을 tlsx에 제공하여 **만료 / 자체 서명 / 불일치 / 폐기 / 신뢰할 수 없는** 인증서를 탐지할 수 있습니다.```console
$ tlsx -l hosts.txt -expired -self-signed -mismatched -revoked -untrusted
  

  _____ _    _____  __
 |_   _| |  / __\ \/ /
   | | | |__\__ \>  < 
   |_| |____|___/_/\_\  v0.0.1

    projectdiscovery.io

[WRN] Use with caution. You are responsible for your actions.
[WRN] Developers assume no liability and are not responsible for any misuse or damage.

wrong.host.badssl.com:443 [mismatched]
self-signed.badssl.com:443 [self-signed]
expired.badssl.com:443 [expired]
revoked.badssl.com:443 [revoked]
untrusted-root.badssl.com:443 [untrusted]
```
### [JARM](https://engineering.salesforce.com/easily-identify-malicious-servers-on-the-internet-with-jarm-e095edac525a/) TLS 핑거프린트```console
$ echo hackerone.com | tlsx -jarm -silent

hackerone.com:443 [29d3dd00029d29d00042d43d00041d5de67cc9954cc85372523050f20b5007]
```
### [JA3](https://github.com/salesforce/ja3) TLS 지문```console
$ echo hackerone.com | tlsx -ja3 -silent

hackerone.com:443 [20c9baf81bfe96ff89722899e75d0190]
```
### JSON 출력

**tlsx**는 특정 데이터를 쿼리하기 위해 여러 프로브 플래그를 지원하지만, 모든 정보는 항상 JSON 형식으로 제공됩니다. 자동화 및 후처리를 위해서는 `-json` 출력을 사용하는 것이 가장 편리한 옵션입니다.```console
echo example.com | tlsx -json -silent | jq .
```
I don't see any content provided after "INPUT:" — the chunk text appears to be missing, so there is nothing to translate. Please provide the chunk content.```json
{
  "timestamp": "2022-08-22T21:22:59.799053+05:30",
  "host": "example.com",
  "ip": "93.184.216.34",
  "port": "443",
  "probe_status": true,
  "tls_version": "tls13",
  "cipher": "TLS_AES_256_GCM_SHA384",
  "not_before": "2022-03-14T00:00:00Z",
  "not_after": "2023-03-14T23:59:59Z",
  "subject_dn": "CN=www.example.org, O=Internet Corporation for Assigned Names and Numbers, L=Los Angeles, ST=California, C=US",
  "subject_cn": "www.example.org",
  "subject_org": [
    "Internet Corporation for Assigned Names and Numbers"
  ],
  "subject_an": [
    "www.example.org",
    "example.net",
    "example.edu",
    "example.com",
    "example.org",
    "www.example.com",
    "www.example.edu",
    "www.example.net"
  ],
  "issuer_dn": "CN=DigiCert TLS RSA SHA256 2020 CA1, O=DigiCert Inc, C=US",
  "issuer_cn": "DigiCert TLS RSA SHA256 2020 CA1",
  "issuer_org": [
    "DigiCert Inc"
  ],
  "fingerprint_hash": {
    "md5": "c5208a47259d540a6e3404dddb85af91",
    "sha1": "df81dfa6b61eafdffffe1a250240db5d2e6cee25",
    "sha256": "7f2fe8d6b18e9a47839256cd97938daa70e8515750298ddba2f3f4b8440113fc"
  },
  "tls_connection": "ctls",
  "sni": "example.com"
}
```
### PDCP 대시보드 통합

**tlsx**는 스캔 결과를 ProjectDiscovery Cloud Platform(PDCP) 대시보드에 업로드하여 시각화 및 분석을 지원합니다.

#### 실시간 결과 업로드

결과가 발견되는 즉시 자동으로 업로드되도록 대시보드 업로드를 활성화하세요:```console
$ tlsx -u example.com -pd -json
```
결과는 PDCP에 자동으로 업로드되며, 확인할 수 있는 대시보드 URL을 받게 됩니다.

#### 기존 파일 업로드

이전에 저장된 JSONL 출력 파일을 PDCP에 업로드하세요:```console
$ tlsx -pdu results.jsonl -tid your-team-id -aname "My Scan"
```
#### 구성 옵션

- `-pd, --dashboard`: PDCP 대시보드로 실시간 업로드 활성화
- `-pdu, --dashboard-upload <file>`: 특정 JSONL 파일을 PDCP에 업로드
- `-auth <key>`: PDCP API 키 (환경 변수 또는 자격 증명 처리기를 통해서도 설정 가능)
- `-tid, --team-id <id>`: 업로드용 팀 ID 지정
- `-aid, --asset-id <id>`: 기존 자산 ID에 업로드
- `-aname, --asset-name <name>`: 자산 그룹의 사용자 지정 이름 설정

모든 옵션 사용 예시:```console
$ tlsx -u example.com -pd -json -tid team123 -aname "Production Scan"
```
## 구성

### 스캔 모드

tlsx는 TLS 연결을 위해 여러 모드를 제공합니다 -

- `auto` (실패 시 다른 모드로 자동 폴백) - **기본값**
- `ctls` (**[crypto/tls](https://github.com/golang/go/blob/master/src/crypto/tls/tls.go)**)
- `ztls` (**[zcrypto/tls](https://github.com/zmap/zcrypto)**)
- `openssl` (**[openssl](https://github.com/openssl/openssl)**)

특정 모드/라이브러리에 대한 몇 가지 참고 사항은 [링크된 논의](https://github.com/projectdiscovery/tlsx/discussions/2)에서 강조되어 있습니다. `auto` 모드는 최대 적용 범위를 보장하고 이전 버전의 TLS를 실행하는 호스트를 스캔하기 위해 지원되며, 연결 오류 발생 시 `ztls` 및 `openssl` 모드를 사용하여 연결을 재시도합니다.

`ztls` 모드를 사용하여 오래된/구식 TLS 버전을 사용하는 웹사이트를 스캔하는 예시입니다.```console
$ echo tls-v1-0.badssl.com | tlsx -port 1010 -sm ztls
  

  _____ _    _____  __
 |_   _| |  / __\ \/ /
   | | | |__\__ \>  < 
   |_| |____|___/_/\_\  v0.0.1

    projectdiscovery.io

[WRN] Use with caution. You are responsible for your actions.
[WRN] Developers assume no liability and are not responsible for any misuse or damage.

tls-v1-0.badssl.com:1010
```
### OpenSSL

openssl 연결 모드를 사용하려면 시스템에 openssl이 설치되어 있어야 합니다. 대부분의 최신 시스템에는 openssl이 사전 설치되어 있지만, 시스템에 없는 경우 수동으로 설치할 수 있습니다. `openssl version` 명령을 실행하여 openssl이 설치되어 있는지 확인할 수 있습니다. openssl이 설치되어 있다면 이 명령은 버전 번호를 표시합니다.

<table>
<tr>
<td>

### Pre-Handshake (조기 종료)

**tlsx**는 SSL 연결을 조기에 종료하는 것을 지원하여 더 빠른 스캔과 더 적은 연결 요청(TLS `serverhello` 및 인증서 데이터가 수집된 후 연결 끊기)을 가능하게 합니다.

자세한 내용은 [@erbbysam](https://twitter.com/erbbysam)이 작성한 [Hunting-Certificates-And-Servers](https://github.com/erbbysam/Hunting-Certificates-And-Servers/blob/master/Hunting%20Certificates%20%26%20Servers.pdf)를 참조하십시오.

`-pre-handshake` 모드를 사용하는 예시:

</td>
</tr>
</table>```console
$ tlsx -u example.com -pre-handshake 
  

  _____ _    _____  __
 |_   _| |  / __\ \/ /
   | | | |__\__ \>  < 
   |_| |____|___/_/\_\  v0.0.1

    projectdiscovery.io

[WRN] Use with caution. You are responsible for your actions.
[WRN] Developers assume no liability and are not responsible for any misuse or damage.

example.com:443
```
> **참고**:

> **pre-handshake** 모드는 `ztls` (**zcrypto/tls**)를 활용하며, 이는 `ztls` 라이브러리가 `TLS v1.3`을 지원하지 않으므로 지원 범위가 `TLS v1.2`까지로 제한된다는 의미이기도 합니다.

</table>
</tr>
</td>

### TLS 버전

**최소** 및 **최대** TLS 버전은 `-min-version` 및 `-max-version` 플래그를 사용하여 지정할 수 있으며, 기본적으로 이 값은 사용 중인 기본 라이브러리에 의해 설정됩니다.

TLS 버전에 허용되는 값은 아래와 같습니다.

- `ssl30`
- `tls10`
- `tls11`
- `tls12`
- `tls13`

다음은 `max-version`을 사용하여 이전 버전의 TLS, 즉 **TLS v1.0**을 지원하는 호스트를 스캔하는 예입니다.```console
$ tlsx -u example.com -max-version tls10
  

  _____ _    _____  __
 |_   _| |  / __\ \/ /
   | | | |__\__ \>  < 
   |_| |____|___/_/\_\  v0.0.1

    projectdiscovery.io

[WRN] Use with caution. You are responsible for your actions.
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
example.com:443
```
### 사용자 지정 암호

지원되는 사용자 지정 암호는 `-cipher-input / -ci` 플래그를 사용하여 제공할 수 있으며, 각 모드에 대해 지원되는 암호 목록은 [위키 페이지](https://github.com/projectdiscovery/tlsx/wiki/Ciphers)에서 확인할 수 있습니다.```console
$ tlsx -u example.com -ci TLS_AES_256_GCM_SHA384 -cipher
```
Please provide the Markdown content to translate.```console
$ tlsx -u example.com -ci cipher_list.txt -cipher
```
## 감사의 글

이 프로그램은 선택적으로 다음을 사용합니다:

- zmap 팀의 [zcrypto](https://github.com/zmap/zcrypto) 라이브러리.
- cloudflare 팀의 [cfssl](https://github.com/cloudflare/cfssl) 라이브러리
- ciphersuite 분류를 위한 [ciphersuite.info](https://ciphersuite.info)의 암호화 데이터

--------

<div align="center">

tlsx는 [projectdiscovery](https://projectdiscovery.io) 팀이 ❤️로 만들었으며 [MIT License](https://github.com/projectdiscovery/tlsx/blob/main/LICENSE) 하에 배포됩니다.


<a href="https://discord.gg/projectdiscovery"><img src="https://assets.kitploit.com/production/public/readmes/41152/d0624f94cb9ea6401be5a089bb694bc963c47fa82aa3b758c893e3b0bbfdf663.png" width="300" alt="Join Discord"></a>

</div>

### 인증서 투명성(CT) 로그 스트리밍

`tlsx`는 공개 인증서 투명성 생태계에서 새로 발급된 TLS 인증서를 지속적으로 스트리밍하는 _fire-hose_ 모드로 작동하여 호스트 이름과 메타데이터를 거의 실시간으로 제공할 수 있습니다.

`-ctl` 스위치를 통해 CT 로그 모드를 활성화합니다(입력이 제공되지 않을 때 기본값):```bash
tlsx -ctl -silent | jq .subject_an
```
#### 시작 오프셋

이 도구는 다음 플래그로 제어되는 세 가지 상호 배타적인 시작 동작을 제공합니다:

| Flag | 동작 |
|------|-----------|
| _default_ | 지금 **시작** (시작 시 트리 크기) – 미래 인증서만 스트리밍됩니다 |
| `-cb, --ctl-beginning` | 모든 로그에 대해 인덱스 **0**부터 시작 (전체 기록 재생) |
| `-cti, --ctl-index <log>=<n>` | 사용자 지정 로그별 인덱스 (반복 가능). 지정된 로그 URL/ID에 대해 시작 인덱스를 _n_으로 설정합니다. 예: `--ctl-index https://ct.googleapis.com/logs/argon2023=123456` |```bash
# Replay the entire history
$ tlsx -ctl -cb -silent > all_certs.jsonl

# Resume at custom positions for two logs
$ tlsx -ctl -cti https://ct.googleapis.com/logs/argon2023=987654 -cti cloudflare-nimbus2024=543210 \
      -silent | jq -r .ct_source
```
기본적으로 중복 항목은 대규모 inverse bloom filter를 사용하여 필터링됩니다. `-v`를 전달하면 상세 통계를 확인할 수 있습니다.
도구 다운로드