2 poin oleh GN⁺ 2024-01-27 | 1 komentar | Bagikan ke WhatsApp

Menemukan XSS di Chess.com

  • Sambil menikmati catur sebagai hobi dan bereksperimen dengan keterampilan teknis, penulis menemukan kerentanan XSS di Chess.com.
  • Chess.com adalah situs catur terbesar di internet dengan lebih dari 100 juta anggota.

Gambaran umum

  • Pada awal 2023, penulis mulai sering bermain di Chess.com.
  • Penulis mengajak seorang teman mendaftar ke situs tersebut dan langsung menjadi teman melalui fitur pertemanan.
  • Lalu muncul rasa penasaran apakah penambahan teman otomatis bisa dilakukan dengan cara serupa worm MySpace.
  • Penulis membuat akun baru dan memeriksa tab Network di developer tools untuk menemukan URL penambahan teman otomatis.

Middlegame

  • Penulis mencoba XSS menggunakan editor teks kaya TinyMCE.
  • Dengan proxy Burp, penulis menyisipkan kode HTML secara langsung ke deskripsi 'About'.
  • Setelah memeriksa konfigurasi TinyMCE, penulis membuat payload XSS menggunakan properti gaya background-image.
  • Berbagai simbol diuji untuk menemukan cara menjalankan XSS.
  • Pada akhirnya, penulis mengembangkan metode untuk mengekstrak cookie dan objek JavaScript.

Endgame

  • Penulis berupaya menjalankan XSS secara penuh.
  • Penulis menemukan cara baru menggunakan atribut srcset untuk memakai sintaks JS yang lebih luas.
  • Dengan encoding Base64, payload XSS dapat dijalankan secara langsung.
  • Dampaknya besar karena editor TinyMCE digunakan di seluruh situs.

Analisis

  • Akar penyebab kerentanan ini adalah fitur unggah ulang gambar.
  • Pemeriksaan hosting gambar dapat dilewati dengan menyertakan nama domain Chess.com.
  • Editor teks kaya cocok untuk mencapai XSS karena mengizinkan beragam elemen HTML.
  • TinyMCE sudah versi terbaru, tetapi sanitasi terhadap HTML akhir tidak dilakukan.
  • Chess.com perlu melakukan sanitasi pada HTML akhir yang ditampilkan kepada pengguna.

Pendapat GN⁺:

  1. Postingan blog ini menjelaskan dengan menarik proses menemukan dan melaporkan kerentanan keamanan yang dapat terjadi pada platform online berskala besar seperti Chess.com.
  2. Kerentanan XSS dapat menjadi ancaman serius bagi keamanan situs web, dan menemukan serta memperbaiki kerentanan seperti ini sangat penting untuk melindungi privasi pengguna.
  3. Tulisan ini menekankan kepada pengembang perangkat lunak dan profesional keamanan pentingnya menyadari kerentanan pada komponen aplikasi web seperti editor teks kaya dan mencegahnya.

1 komentar

 
GN⁺ 2024-01-27
Opini Hacker News
  • Perkenalan penulis asli (OP) dan informasi latar belakang

    • Seorang pelajar Inggris berusia 17 tahun yang sedang menempuh A-Levels dan mempertimbangkan opsi universitas serta program apprenticeship bergelar.
    • Dari profil GitHub-nya dapat diketahui bahwa ia adalah anggota inti HashPals, pencipta Search-That-Hash, dan pemelihara repositori open source perangkat lunak gratis untuk tablet ReMarkable.
    • Ada penyebutan tentang penilaian positif terhadap lichess.org dan berbagi minat teknis.
  • Komentar tentang fitur yang terkait dengan worm MySpace

    • Menyebut worm MySpace sekitar tahun 2005, dan penulis menyatakan bahwa saat itu ia belum lahir.
    • Ditunjukkan bahwa pengguna lain menyaksikan dan merekam fenomena ketika gerakan dalam permainan catur mereka dikendalikan, serta telah melaporkan masalah ini ke chess.com namun belum diselesaikan.
  • Pertanyaan teknis terkait kerentanan XSS

    • Mengajukan pertanyaan mengapa cookie PHPSESSID tidak menggunakan HttpOnly dan mengapa kerentanan XSS yang diketahui belum diperbaiki.
    • Menyatakan ketertarikan pada laporan bug bounty XSS dan pemahaman bahwa prosesnya sulit.
  • Opini tentang editor rich text milik chess.com

    • Reaksi lucu terhadap penyebutan editor rich text sebagai "cawan suci", serta kekhawatiran bahwa meskipun ini adalah situs web besar, fitur seperti itu tetap bisa memiliki kerentanan.
  • Pertanyaan tentang singkatan teknis

    • Bertanya tentang arti "OSRF" dan menduga apakah itu berarti "Own-Site Request Forgery" yang mirip dengan CSRF.
  • Pertanyaan teknis terkait pengalihan subdomain

    • Meminta penjelasan tentang bagaimana pengalihan pada subdomain (chess.com.foo.bar) dapat melewati same-origin policy.