Security+ Academy · Pelajaran

Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna

Konfigurasikan TLS 1.2/1.3, pilih suite sifir yang kukuh dan dayakan kerahsiaan hadapan sempurna supaya trafik yang ditangkap tidak boleh dinyahsulit secara retrospektif.

Pelajaran 2 daripada 413 langkah

Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna ialah pelajaran Security+ Academy percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Security+ Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Security+ Academy merangkumi sejumlah 4 pelajaran.

Gambaran Keseluruhan Protokol TLS

TLS (Keselamatan Lapisan Pengangkutan) ialah protokol kriptografi yang melindungi sebahagian besar komunikasi internet — HTTPS, SMTPS, IMAPS, LDAPS dan VPN semuanya bergantung pada TLS. TLS menyediakan tiga sifat keselamatan: kerahsiaan (penyulitan menghalang penyadapan), integriti (MAC menghalang pengubahan) dan pengesahan (sijil mengesahkan identiti Server). TLS berkembang daripada SSL (Lapisan Soket Selamat), yang kini telah tidak digunakan lagi. Versi semasa ialah TLS 1.2 (digunakan secara meluas) dan TLS 1.3 (lebih pantas dan selamat, serta disyorkan untuk semua penggunaan baharu).

Sejarah Versi TLS dan Penamatan Sokongan

TLS telah melalui beberapa versi, dan versi lama mengandungi kerentanan kritikal. SSL 2.0/3.0: tidak digunakan lagi dan terdedah kepada serangan POODLE serta DROWN. TLS 1.0: tidak digunakan lagi oleh NIST dan PCI-DSS pada tahun 2020 (terdedah kepada BEAST dan POODLE pada sifir blok). TLS 1.1: tidak digunakan lagi bersama TLS 1.0. TLS 1.2: piawaian minimum semasa; selamat apabila dikonfigurasikan dengan betul menggunakan suite sifir yang kukuh. TLS 1.3: dikeluarkan pada tahun 2018; menghapuskan semua algoritma lemah, mewajibkan kerahsiaan hadapan, mempercepatkan handshake dengan ketara (1-RTT berbanding 2-RTT), dan mencegah serangan penurunan versi. PCI-DSS 4.0 memerlukan TLS 1.2 sebagai minimum dan mengesyorkan 1.3.

# TLS version timeline
SSL 2.0   1995  DEPRECATED (DROWN)
SSL 3.0   1996  DEPRECATED (POODLE)
TLS 1.0   1999  DEPRECATED 2020 (BEAST, POODLE)
TLS 1.1   2006  DEPRECATED 2020 (no improvements over 1.0)
TLS 1.2   2008  MINIMUM STANDARD (strong ciphers required)
TLS 1.3   2018  RECOMMENDED (mandatory PFS, faster, secure)

# Check which TLS versions a server supports
nmap --script ssl-enum-ciphers -p 443 example.com
# Or:
openssl s_client -connect example.com:443 -tls1_2
openssl s_client -connect example.com:443 -tls1_3

Suite Sifir

Suite sifir ialah satu set algoritma kriptografi yang digunakan bersama dalam sesi TLS. Setiap suite sifir menentukan: algoritma pertukaran Key (cara Key sesi diwujudkan), algoritma pengesahan (cara Server disahkan), algoritma penyulitan pukal (perkara yang menyulitkan data), dan algoritma kod pengesahan mesej (MAC) (cara integriti disahkan). Client dan Server berunding untuk memilih suite sifir yang akan digunakan semasa handshake TLS — Server memilih suite terkuat yang disokong oleh kedua-dua pihak.

# TLS cipher suite naming format (TLS 1.2)
# TLS_[KeyExchange]_WITH_[Cipher]_[MAC]
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  ECDHE     = Elliptic Curve Diffie-Hellman Ephemeral
  RSA       = Server certificate authentication
  AES_256_GCM = 256-bit AES in Galois/Counter Mode
  SHA384    = HMAC with SHA-384 for integrity

# TLS 1.3 simplified format (fewer components)
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256

Algoritma Pertukaran Key

Fasa pertukaran Key mewujudkan Key sesi tanpa menghantarnya. Pertukaran Key RSA (TLS 1.2): Client menyulitkan rahsia prarrentas dengan Key awam Server — jika Key persendirian kemudiannya terjejas, semua sesi lalu boleh dinyahsulitkan. DHE (Diffie-Hellman Ephemeral): menjana pasangan Key baharu untuk setiap sesi; menyediakan kerahsiaan hadapan tetapi perlahan. ECDHE (Elliptic Curve DHE): mencapai kerahsiaan hadapan yang sama seperti DHE tetapi dengan saiz Key yang lebih kecil dan prestasi yang lebih baik — ini ialah pertukaran Key pilihan dalam TLS 1.2 dan TLS 1.3. TLS 1.3 mewajibkan ECDHE atau DHE dan menghapuskan pertukaran Key RSA sepenuhnya.

Kerahsiaan Hadapan Sempurna (PFS)

Kerahsiaan Hadapan Sempurna (PFS) memastikan bahawa walaupun Key persendirian jangka panjang Server kemudiannya terjejas, sesi lalu yang dirakam tidak boleh dinyahsulitkan. PFS dicapai dengan menggunakan pertukaran Key Ephemeral (ECDHE atau DHE), iaitu pasangan Key sementara yang baharu dijana untuk setiap sesi dan dibuang selepas digunakan. Tanpa PFS (pertukaran Key RSA), Attacker boleh merakam semua sesi TLS yang disulitkan hari ini, kemudian menyahsulitkannya secara retrospektif apabila mereka akhirnya memperoleh Key persendirian. Strategi pengawasan NSA “kumpul sekarang, nyahsulit kemudian” mengandaikan sasaran akhirnya akan menaik taraf kepada Key yang lebih kukuh atau komputer kuantum akan memecahkan Key semasa.

# Cipher suites WITH perfect forward secrecy
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384     # Good
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256   # Good
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256        # OK (slower)

# Cipher suites WITHOUT perfect forward secrecy
TLS_RSA_WITH_AES_256_CBC_SHA256  # NO PFS - avoid
TLS_RSA_WITH_3DES_EDE_CBC_SHA    # NO PFS + weak

# Key: look for ECDHE or DHE prefix
# RSA alone as key exchange = no forward secrecy

Algoritma Sifir Lemah yang Perlu Dielakkan

Beberapa komponen sifir lama telah rosak dari segi kriptografi dan mesti dinyahdayakan. Sifir NULL: langsung tiada penyulitan. Sifir gred eksport (serangan FREAK): sengaja dilemahkan untuk mematuhi peraturan eksport US pada tahun 1990-an. RC4: sifir strim dengan kecenderungan statistik yang dieksploitasi dalam serangan. DES dan 3DES: sifir blok dengan saiz blok yang terlalu kecil (serangan SWEET32) atau panjang Key yang tidak mencukupi. MD5 dan SHA-1 untuk MAC: kerentanan perlanggaran. Sifir tanpa nama (aNULL): tiada pengesahan Server. Konfigurasi TLS moden hanya patut membenarkan AES-GCM, ChaCha20-Poly1305, AES-CCM sebagai sifir pukal.

# nginx: disable weak ciphers, enforce strong only
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:
             ECDHE-RSA-AES256-GCM-SHA384:
             ECDHE-ECDSA-CHACHA20-POLY1305:
             ECDHE-RSA-CHACHA20-POLY1305:
             ECDHE-ECDSA-AES128-GCM-SHA256:
             ECDHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;

# Explicitly disable weak ciphers in Apache
SSLCipherSuite 'HIGH:!aNULL:!MD5:!3DES:!RC4:!EXPORT'

Penambahbaikan TLS 1.3

TLS 1.3 membawa beberapa penambahbaikan keselamatan yang ketara berbanding 1.2. PFS wajib: pertukaran Key RSA dihapuskan — semua sesi menggunakan ECDHE atau DHE. Suite sifir yang lebih sedikit: hanya 5 suite sifir AEAD dibenarkan; rundingan sifir lemah tidak mungkin berlaku. Handshake yang lebih pantas: 1 perjalanan pergi balik (1-RTT) berbanding 2-RTT dalam TLS 1.2, dan 0-RTT untuk penyambungan semula sesi (walaupun 0-RTT mempunyai pertimbangan berkaitan serangan ulang tayang). Handshake disulitkan: sijil Server disulitkan dalam handshake, lalu menghalang pemerhati pasif daripada mengenal pasti sijil yang digunakan (dan oleh itu laman web yang hendak disambungkan oleh Client).

# TLS 1.3 handshake (simplified)
Client -> Server: ClientHello (supported ciphers, key shares)
Server -> Client: ServerHello (chosen cipher, key share)
                  {EncryptedExtensions}
                  {Certificate}
                  {CertificateVerify}
                  {Finished}
Client -> Server: {Finished}

# Both sides now have session keys
# Total: 1 round-trip before application data
# (TLS 1.2 required 2 round trips)

# Note: {} = encrypted (cert is hidden from observers)

Serangan Penurunan Versi dan POODLE

Serangan penurunan versi memperdaya Server TLS dan Client supaya menggunakan versi TLS atau suite sifir yang lebih lama dan lemah daripada yang disokong oleh kedua-duanya. POODLE (Padding Oracle On Downgraded Legacy Encryption) mengeksploitasi hakikat bahawa pelaksanaan TLS akan beralih kepada SSL 3.0 apabila berlaku ralat sambungan. Langkah perlindungannya ialah menyahdayakan SSL 3.0. FREAK dan Logjam mengeksploitasi sifir gred eksport. TLS_FALLBACK_SCSV ialah suite sifir pseudo yang disertakan oleh Client untuk menandakan “ini bukan versi pilihan saya” — jika Server melihatnya dan menyokong versi yang lebih tinggi, Server membatalkan percubaan penurunan versi.

Pengesahan dan Pemautan Sijil

Pengesahan Server TLS bergantung pada Client yang mengesahkan rantaian sijil Server sehingga kepada CA akar yang dipercayai. Pemeriksaan penting: tempoh luput (sijil mesti berada dalam tempoh sah), pembatalan (pemeriksaan CRL atau OCSP mengesahkan sijil tidak dibatalkan), nama hos (SAN atau CN mesti sepadan dengan domain yang disambungkan), dan rantaian tandatangan (tandatangan CA perantara dan CA akar adalah sah). Ketelusan Sijil (CT) memerlukan semua sijil yang dipercayai secara umum dilogkan dalam log CT yang hanya boleh ditambah, membolehkan pengesanan sijil yang dikeluarkan secara salah dalam beberapa minit selepas dikeluarkan.

# Check TLS certificate details
openssl s_client -connect example.com:443 \
  -showcerts 2>/dev/null | openssl x509 -noout \
  -text | grep -E 'Subject:|Issuer:|Not After:|SAN'

# Verify certificate chain
openssl verify -CAfile /etc/ssl/certs/ca-certificates.crt \
  server.crt

# Check OCSP status
openssl ocsp -issuer intermediate.crt \
  -cert server.crt \
  -url http://ocsp.ca.example.com \
  -text -noverify

SSL Labs dan Pengujian Konfigurasi

Qualys SSL Labs (ssllabs.com/ssltest) ialah alat penanda aras utama untuk menilai konfigurasi TLS Server web. Alat ini memberikan gred daripada A+ (cemerlang) hingga F (isu kritikal) berdasarkan: versi TLS yang disokong, kekuatan suite sifir, kesahan sijil, konfigurasi HSTS, sokongan kerahsiaan hadapan dan ketahanan terhadap serangan yang diketahui. Penarafan A+ memerlukan: TLS 1.2+ sahaja, semua sifir ECDHE, sijil yang sah dan HSTS dengan pramuat. Organisasi patut menjalankan ujian SSL Labs selepas konfigurasi awal dan sekali lagi selepas sebarang perubahan pada tindanan TLS. Banyak rangka kerja pematuhan (PCI-DSS) memerlukan penilaian konfigurasi TLS secara berkala.

Amalan Terbaik Pengurusan Sijil TLS

Sijil TLS yang telah luput menyebabkan gangguan perkhidmatan dan amaran kepercayaan pengguna yang boleh dieksploitasi oleh Attacker. Pengurusan kitar hayat sijil melibatkan: menjejaki semua sijil dalam inventori sijil, mengkonfigurasikan makluman luput sekurang-kurangnya 30 hari sebelum tarikh luput, mengautomatikkan pembaharuan dengan protokol ACME (Let's Encrypt, Certbot), menggunakan tempoh sah sijil yang pendek (90 hari untuk sijil awam) bagi mengurangkan tempoh risiko akibat pencerobohan, dan menggunakan sijil wildcard dengan berhati-hati (*.example.com) kerana sijil wildcard yang terjejas menjejaskan semua subdomain. Platform pengurusan sijil (Venafi, DigiCert CertCentral) mengautomatikkan penemuan dan kitar hayat merentas inventori sijil yang besar.

# Auto-renew Let's Encrypt cert with Certbot
# Install Certbot
apt install certbot python3-certbot-nginx

# Issue certificate
certbot --nginx -d example.com -d www.example.com

# Certbot auto-renewal (runs twice daily via systemd timer)
systemctl status certbot.timer

# Test renewal without actually renewing
certbot renew --dry-run

# Verify cert expiry date
openssl x509 -enddate -noout -in /etc/ssl/certs/example.crt
# Output: notAfter=Feb 20 12:00:00 2025 GMT

Pemeriksaan Quick

Uji pemahaman Anda tentang konsep CompTIA Security+ (SY0-701) daripada pelajaran ini.

Ringkasan Pelajaran

Dalam pelajaran ini, Anda telah mempelajari bahawa: TLS 1.0/1.1 telah tidak digunakan lagi dan TLS 1.2 ialah piawaian minimum, manakala TLS 1.3 lebih diutamakan dengan PFS wajib serta handshake yang disulitkan, suite sifir menentukan pertukaran Key (utamakan ECDHE), penyulitan pukal (AES-GCM, ChaCha20) dan algoritma MAC, dan Kerahsiaan Hadapan Sempurna memerlukan pertukaran Key Ephemeral (DHE/ECDHE) supaya sesi lalu tidak boleh dinyahsulitkan walaupun selepas Key terjejas. Seterusnya, kita akan meneroka DNS selamat: DNSSEC dan DNS melalui HTTPS.

Percuma untuk bermula

Pelajari Security+ Academy dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
30
Pelajaran
120

Soalan Lazim

Adakah pelajaran “Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Security+ Academy, termasuk “Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Security+ Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna”?

Konfigurasikan TLS 1.2/1.3, pilih suite sifir yang kukuh dan dayakan kerahsiaan hadapan sempurna supaya trafik yang ditangkap tidak boleh dinyahsulit secara retrospektif. Anda berlatih Security+ Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Security+ Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Security+ Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Security+ Academy ini?

Ya. Setiap pelajaran Security+ Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Menggantikan Protokol Tidak Selamat: Telnet berbanding SSH, FTP berbanding SFTP
  2. Versi TLS, Suite Sifir dan Kerahsiaan Hadapan Sempurna
  3. DNS Selamat: DNSSEC dan DNS melalui HTTPS (DoH)
  4. IPsec, Protokol VPN dan Keselamatan Akses Jauh
← Kembali ke Security+ Academy