SHARE
TWEET

Untitled

a guest Jan 14th, 2020 141 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. /**********************/
  3. /*  Desenvolvido por  */
  4. /** DADALTO e KACINO **/
  5. /**********************/
  6.  
  7. error_reporting(false);
  8.  
  9. //Configurações do site
  10. session_start();
  11. $url = "#";// Não se esqueça dos Diretorios
  12. $title = "Portal SOG";
  13. $description = "Venha para o melhor Servidor!";
  14. $diretorio = "C:/Users/PC-GAMER/Desktop/Servidor SOG/Server SOG/DBSRV/run/account";// Diretorio do seu server
  15.  
  16. //comandos de navegador
  17. @ob_start();
  18. @header("Pragma: no-cache");
  19. @header("Cache: no-cahce");
  20. @header("Cache-Control: no-cache, must-revalidate");
  21. @header("Expires: Mon, 26 Jul 1997 03:00:00 GMT");
  22. @header("Content-type: text/html; charset=iso-8859-1");
  23.  
  24. include("sql.php");
  25. //conexao
  26. $mysql=mysql_connect($db['host'].":".$db['porta'],$db['usuario'],$db['senha']) or die("Erro de conexao com o banco de dados.");
  27. mysql_select_db($db['database'],$mysql);
  28.  
  29.  
  30. //atualização
  31. if(file_exists("n.php"))
  32. {
  33.     include("n.php");
  34.     unlink("n.php");
  35.     $alert="Houve uma atualizacao nesse momento.";
  36. }
  37.  
  38. //MYSQL ENGINES
  39. //Anti-SQLINJECTION
  40. $sqlinject=array("'","`","\\");
  41. foreach($_GET       as $teste)
  42. {
  43.     foreach($sqlinject as $inject)
  44.     {
  45.         strtr($teste, $inject, "\"");
  46.     }
  47. }
  48. foreach($_POST      as $teste)
  49. {
  50.     foreach($sqlinject as $inject)
  51.     {
  52.         strtr($teste, $inject, "\"");
  53.     }
  54. }
  55. foreach($_COOKIE    as $teste)
  56. {
  57.     foreach($sqlinject as $inject)
  58.     {
  59.         strtr($teste, $inject, "\"");
  60.     }
  61. }
  62.  
  63. foreach($_GET   as $teste)
  64. {
  65.     foreach($sqlinject as $inject)
  66.     {
  67.         if(strrchr(strtolower($teste),strtolower($inject)))
  68.         {
  69.             die("Sistema protegido: nao use <strong>".$teste."</strong> no LINK");
  70.         }
  71.     }
  72. }
  73. foreach($_POST  as $teste)
  74. {
  75.     foreach($sqlinject as $inject)
  76.     {
  77.         if(strrchr(strtolower($teste),strtolower($inject)))
  78.         {
  79.             die("Sistema protegido: nao use <strong>".$teste."</strong> no FORMULARIO");
  80.         }
  81.     }
  82. }
  83. foreach($_COOKIE    as $teste)
  84. {
  85.     foreach($sqlinject as $inject)
  86.     {
  87.         if(strrchr(strtolower($teste),strtolower($inject)))
  88.         {
  89.             die("Sistema protegido: nao use <strong>".$teste."</strong> no COOKIE");
  90.         }
  91.     }
  92. }
  93.  
  94. //configuração de collations
  95.  
  96. mysql_query("SET NAMES 'utf8'");
  97. mysql_query('SET character_set_connection=utf8');
  98. mysql_query('SET character_set_client=utf8');
  99. mysql_query('SET character_set_results=utf8');
  100.  
  101. //PHP ENGINES
  102.  
  103. //acessos
  104. @mysql_query("UPDATE `configs` SET `valor`=`valor`+1 WHERE `config`='acessos'");
  105.  
  106. //pasta accounts->mudar
  107. if(isset($_POST['mpath']))
  108. {
  109.     if(is_dir($_POST['mpath']))
  110.     {
  111.         @mysql_query("UPDATE `configs` SET `valor`='".$_POST['mpath']."' WHERE `config`='path'");
  112.         $alert="OK";
  113.     }
  114.     else
  115.     {
  116.         $alert="Esse diretorio esta incoreto. Sempre use barra comum envez de contra-barra.";
  117.     }
  118. }
  119. //client->link mudar
  120. if(isset($_POST['mclient']))
  121. {
  122.     @mysql_query("UPDATE `configs` SET `valor`='".$_POST['mclient']."' WHERE `config`='client'");
  123.     $alert="OK";
  124. }
  125. //guild->mudar valor
  126. if(isset($_POST['mguild']))
  127. {
  128.     @mysql_query("UPDATE `configs` SET `valor`='".$_POST['mguild']."' WHERE `config`='guild'");
  129.     $alert="OK";
  130. }
  131. //rank-> resetar
  132. if(isset($_POST['rrank']))
  133. {
  134.     @mysql_query("DELETE FROM `rank` WHERE `data`='".@date("dmy")."'");
  135.     $alert="OK";
  136. }
  137. //Verifica tipo de conta
  138. $query = mysql_query("SELECT * FROM `accounts`");
  139. $conta = mysql_fetch_array($query);
  140. //login->novo
  141. $logado=false;
  142. if(isset($_POST['rlogin']) or isset($_POST['rsenha']) or isset($_POST['remail']) or isset($_POST['rps']) or isset($_POST['rrs'])){
  143.     $user=$_POST['rlogin'];
  144.     $pass=$_POST['rsenha'];
  145.     $initial=substr($user,0,1);
  146.     if(is_numeric($initial)){$initial="etc";}
  147.     $path=@mysql_fetch_array(mysql_query("SELECT `valor` FROM `configs` WHERE `config`='path'"));
  148.    
  149.     if(empty($user) or strlen($user)<4){$alert="Login muito curto.";}
  150.     elseif(file_exists($path['valor']."/".$initial."/".$user)){$alert="Login ja existe.";}
  151.     elseif(@mysql_num_rows(mysql_query("SELECT * FROM `accounts` WHERE `login`='".$user."'"))>0){$alert="Login ja existe 2.";}
  152.     //elseif(!eregi("^[0-9a-zA-Z]{0,10}$",$user)){$alert="Login com caracteres ilegais.";}
  153.     //elseif(!eregi("^[0-9a-zA-Z]{0,10}$",$pass)){$alert="Senha com caracteres ilegais.";}
  154.     //elseif(!eregi("^[0-9a-zA-Z]{0,20}$",$_POST['nick'])){$alert="Nick com caracteres ilegais.";}
  155.     elseif(empty($pass) or strlen($pass)<4){$alert="Senha muito curta.";}
  156.     elseif(empty($_POST['remail']) or strlen($_POST['remail'])<5){$alert="Email muito curto.";}
  157.     elseif(empty($_POST['rnick']) or strlen($_POST['rnick'])<4){$alert="Nick muito curto.";}
  158.     elseif(@mysql_num_rows(mysql_query("SELECT * FROM `accounts` WHERE `email`='".$_POST['remail']."'"))>0){$alert="Email ja existe.";}
  159.     elseif(empty($_POST['rps']) or strlen($_POST['rps'])<5){$alert="Pergunta muito curta.";}
  160.     elseif(empty($_POST['rrs'])){$alert="Resposta muito curta.";}
  161.     elseif(@mysql_result(mysql_query("SELECT * FROM `accounts` WHERE `nick`='".$_POST['rnick']."'"),0)){$alert="Nick ja existe.";}
  162.     else{
  163.       $userlenght=strlen($user);
  164.       $passlenght=strlen($pass);
  165.       $f=@fopen("accs","r");
  166.       $acc =fread($f,filesize("accs")) or $alert="Contate administracao sobre arquivo base";
  167.       $acc=substr_replace($acc,$user,0,$userlenght);
  168.       $acc=substr_replace($acc,$pass,16,$passlenght);
  169.       $f2=@fopen($path['valor']."/".$initial."/".$user,"w");
  170.       if(strlen($acc)=="4292"){
  171.       @fwrite($f2,$acc);
  172.       @fclose($f);
  173.       @fclose($f2);
  174.       @mysql_query("INSERT INTO `accounts` (`login`, `email`, `pergunta`, `resposta`, `vip`, `cash`, `tipo`, `nick`, `data`) VALUES ('".$_POST['rlogin']."', '".$_POST['remail']."', '".$_POST['rps']."', '".$_POST['rrs']."', '0', '1', '1', '".$_POST['rnick']."', '".time()."')");
  175.       @fclose($f);
  176.       $alert="Login criado com sucesso.";
  177.       $_POST['login']=$user;
  178.       $_POST['senha']=$pass;
  179.       }
  180.       else{$alert="Tente novamente. ouve uma pequena falha";}
  181.         }
  182.     }
  183.    
  184.    
  185.     //login->sair
  186.     if(@$_GET['acao']=="logout"){setcookie("login","",0);setcookie("senha","",0);}
  187.     elseif(isset($_COOKIE['login']) and isset($_COOKIE['senha'])){
  188.         $_POST['login']=hex2bin($_COOKIE['login']);
  189.         $_POST['senha']=hex2bin($_COOKIE['senha']);}       
  190.        
  191.     //login->logando       
  192.         if(isset($_POST['login']) and isset($_POST['senha'])){
  193.             $login=$_POST['login'];
  194.             $senha=$_POST['senha'];
  195.         $bh2=abrirconta($login);
  196.  if($bh2!=0 && !empty($login)){
  197.         if($senha==trim(hex2bin(substr($bh2,32,28)))){
  198.         $logado=true;  
  199.       setcookie("login",bin2hex($login),time()+60*15);
  200.       setcookie("senha",bin2hex($senha),time()+60*15);
  201.       $player=@mysql_fetch_array(mysql_query("SELECT * FROM `accounts` WHERE `login`='".$login."'"));
  202.         }
  203.         else{setcookie("login","",0);setcookie("senha","",0);$alert="Senha incorreta.";}
  204.         }
  205.         else{setcookie("login","",0);setcookie("senha","",0);$alert="Essa conta nao existe.";}
  206.         }
  207.        
  208.        
  209. //senha->trocar
  210. if(isset($_POST['asenha']) or isset($_POST['nsenha1']) or isset($_POST['nsenha2']))
  211. {
  212.     if($senha!=$_POST['asenha'])
  213.     {
  214.         $alert="Senha atual incorreta.";
  215.     }
  216.     elseif($_POST['nsenha1']!=$_POST['nsenha2'])
  217.     {
  218.         $alert="Nova senha diferente de sua repeticao.";
  219.     }
  220.     elseif($_POST['nsenha1']==$_POST['asenha'])
  221.     {
  222.         $alert="Senha nova igual senha antiga.";
  223.     }
  224.     elseif(!preg_match("/^[0-9a-zA-Z]{0,10}$/",$_POST['nsenha1']))
  225.     {
  226.         $alert="Senha nova com caracteres ilegais.";
  227.     }
  228.     else
  229.     {
  230.         $no="00000000000000000000";
  231.         $nova=substr_replace($no,bin2hex($_POST['nsenha1']),0,strlen(bin2hex($_POST['nsenha1'])));
  232.         $nsenha=substr_replace($bh2,$nova,32,20);
  233.         if((strlen($nsenha)/2)==4292)
  234.         {
  235.             salvarconta($login,$nsenha);
  236.             $alert="Tentativa de troca efetuada.";
  237.             setcookie("senha",bin2hex($_POST['nsenha1']),time()+60*15);
  238.         }
  239.         else
  240.         {
  241.             $alert="Ocourreu um erro na tentativa";
  242.         }
  243.     }
  244. }
  245. //Envia item para conta
  246. if(isset($_POST['loja']) or isset($_POST['admitem']))
  247. {
  248.  
  249.  
  250.  
  251. }
  252.  
  253. //Ranking
  254. rank();
  255. function rank(){
  256.     $data=@date("dmy");
  257. $rank=@mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM `rank` WHERE `data`='".$data."'"));
  258. $guild=@mysql_fetch_array(mysql_query("SELECT `valor` FROM `configs` WHERE `config`='guild'"));
  259. $path=@mysql_fetch_array(mysql_query("SELECT `valor` FROM `configs` WHERE `config`='path'"));
  260. if($rank[0]==0){
  261. $qtt=100;// quantidade de tops na lista
  262. $diretorio=$path[0];
  263. $rep=opendir($diretorio."/");
  264. $re=0;// nao mecher
  265. while ($dire = readdir($rep))   {
  266.     if($dire != '..' && $dire !='.'){
  267.         if (is_dir($diretorio."/".$dire))   {
  268.             $dir = $diretorio."/".$dire."/";
  269.             if ($dh = opendir($dir))    {
  270.                 while (($file = readdir($dh)) !== false)    {
  271.                     if($file != '..' && $file !='.'){        
  272.          $bh2=abrirconta($file);
  273.  
  274.  $nome1=explode("00",substr($bh2, 416, 24));
  275.  $nome2=explode("00",substr($bh2, 1928, 24));
  276.  $nome3=explode("00",substr($bh2, 3440, 24));
  277.  $nome4=explode("00",substr($bh2, 4952, 24));
  278.  $nome[1]=trim(hex2bin($nome1[0]));
  279.  $nome[2]=trim(hex2bin($nome2[0]));
  280.  $nome[3]=trim(hex2bin($nome3[0]));
  281.  $nome[4]=trim(hex2bin($nome4[0]));
  282.             $level[1]=substr($bh2, 488,4);
  283.             $level[2]=substr($bh2, 2000,4);
  284.             $level[3]=substr($bh2, 3512,4);
  285.             $level[4]=substr($bh2, 5024,4);
  286.             $lvl[1]=hexdec(substr($level[1], 2,2).substr($level[1], 0,2))+1;
  287.             $lvl[2]=hexdec(substr($level[2], 2,2).substr($level[2], 0,2))+1;
  288.             $lvl[3]=hexdec(substr($level[3], 2,2).substr($level[3], 0,2))+1;
  289.             $lvl[4]=hexdec(substr($level[4], 2,2).substr($level[4], 0,2))+1;
  290.      $lvl[1]=substr_replace("000",$lvl[1],3-strlen($lvl[1]),strlen($lvl[1]));
  291.      $lvl[2]=substr_replace("000",$lvl[2],3-strlen($lvl[2]),strlen($lvl[2]));
  292.      $lvl[3]=substr_replace("000",$lvl[3],3-strlen($lvl[3]),strlen($lvl[3]));
  293.      $lvl[4]=substr_replace("000",$lvl[4],3-strlen($lvl[4]),strlen($lvl[4]));
  294. $add1=substr($bh2, 610,2);
  295. $add2=substr($bh2, 2122,2);
  296. $add3=substr($bh2, 3634,2);
  297. $add4=substr($bh2, 5146,2);
  298.  
  299.         $add=$add1;
  300.         if($add=="01"){$typ="1";}
  301.         elseif($add=="02"){$typ="2";}
  302.         elseif($add=="03"){$typ="3";}
  303.         elseif($add=="04"){$typ="4";}
  304.         elseif($add=="05"){$typ="5";}
  305.         elseif($add=="06"){$typ="6";}
  306.         elseif($add=="07"){$typ="7";}
  307.         elseif($add=="08"){$typ="8";}
  308.         elseif($add=="09"){$typ="9";}
  309.         elseif($add=="0A"){$typ="A";}
  310.         elseif($add=="0B"){$typ="B";}
  311.         elseif($add=="0C"){$typ="C";}
  312.         elseif($add=="0D"){$typ="D";}
  313.         else{$typ="0";}
  314.         $typ1=$typ;
  315.        
  316.         $add=$add2;
  317.         if($add=="01"){$typ="1";}
  318.         elseif($add=="02"){$typ="2";}
  319.         elseif($add=="03"){$typ="3";}
  320.         elseif($add=="04"){$typ="4";}
  321.         elseif($add=="05"){$typ="5";}
  322.         elseif($add=="06"){$typ="6";}
  323.         elseif($add=="07"){$typ="7";}
  324.         elseif($add=="08"){$typ="8";}
  325.         elseif($add=="09"){$typ="9";}
  326.         elseif($add=="0A"){$typ="A";}
  327.         elseif($add=="0B"){$typ="B";}
  328.         elseif($add=="0C"){$typ="C";}
  329.         elseif($add=="0D"){$typ="D";}
  330.         else{$typ="0";}
  331.         $typ2=$typ;
  332.        
  333.         $add=$add3;
  334.         if($add=="01"){$typ="1";}
  335.         elseif($add=="02"){$typ="2";}
  336.         elseif($add=="03"){$typ="3";}
  337.         elseif($add=="04"){$typ="4";}
  338.         elseif($add=="05"){$typ="5";}
  339.         elseif($add=="06"){$typ="6";}
  340.         elseif($add=="07"){$typ="7";}
  341.         elseif($add=="08"){$typ="8";}
  342.         elseif($add=="09"){$typ="9";}
  343.         elseif($add=="0A"){$typ="A";}
  344.         elseif($add=="0B"){$typ="B";}
  345.         elseif($add=="0C"){$typ="C";}
  346.         elseif($add=="0D"){$typ="D";}
  347.         else{$typ="0";}
  348.         $typ3=$typ;
  349.        
  350.         $add=$add4;
  351.         if($add=="01"){$typ="1";}
  352.         elseif($add=="02"){$typ="2";}
  353.         elseif($add=="03"){$typ="3";}
  354.         elseif($add=="04"){$typ="4";}
  355.         elseif($add=="05"){$typ="5";}
  356.         elseif($add=="06"){$typ="6";}
  357.         elseif($add=="07"){$typ="7";}
  358.         elseif($add=="08"){$typ="8";}
  359.         elseif($add=="09"){$typ="9";}
  360.         elseif($add=="0A"){$typ="A";}
  361.         elseif($add=="0B"){$typ="B";}
  362.         elseif($add=="0C"){$typ="C";}
  363.         elseif($add=="0D"){$typ="D";}
  364.         else{$typ="0";}
  365.         $typ4=$typ;
  366.  
  367.            
  368.             $ra[0]=$typ1."/".$lvl[1]."/".$nome[1];
  369.             $ra[1]=$typ2."/".$lvl[2]."/".$nome[2];
  370.             $ra[2]=$typ3."/".$lvl[3]."/".$nome[3];
  371.             $ra[3]=$typ4."/".$lvl[4]."/".$nome[4];
  372.             rsort($ra);
  373.             $edf=explode("/",$ra[0]);
  374.         /* $guildn[1]=$guild[hexdec(substr($bh2, 802,2))];
  375.         $guildn[2]=$guild[hexdec(substr($bh2, 2314,2))];
  376.         $guildn[3]=$guild[hexdec(substr($bh2, 3826,2))];
  377.         $guildn[4]=$guild[hexdec(substr($bh2, 5338,2))];
  378.         */
  379.         $guildn[1]="";
  380.         $guildn[2]="";
  381.         $guildn[3]="";
  382.         $guildn[4]="";
  383.            
  384.                     $ran['geral'][$re]=$typ1."/".$lvl[1]."/".$nome[1]."/".$guildn[1];
  385.                     $re++;
  386.                     $ran['geral'][$re]=$typ2."/".$lvl[2]."/".$nome[2]."/".$guildn[2];
  387.                     $re++;
  388.                     $ran['geral'][$re]=$typ3."/".$lvl[3]."/".$nome[3]."/".$guildn[3];
  389.                     $re++;
  390.                     $ran['geral'][$re]=$typ4."/".$lvl[4]."/".$nome[4]."/".$guildn[4];
  391.                     $re++;
  392.                     }}}}}}             
  393.                                
  394.                                
  395. if(strlen(trim($ran['geral'][0]))>0){
  396. sort($ran['geral']);
  397.     for($i=count($ran['geral']);$i>count($ran['geral'])-$qtt;$i--){
  398.         $exmy=explode("/",$ran['geral'][$i-1]);
  399.         if(!empty($exmy[2])){
  400.                                 if($exmy[1] < 1000) { // bloqueia level 1000+ de ir para o ranking
  401.                                         @mysql_query("INSERT INTO `rank` (`nome` ,`level` ,`guild` ,`reset` ,`data` )VALUES ('".$exmy[2]."', '".$exmy[1]."', '".$exmy[3]."', '".$exmy[0]."', '".$data."')");
  402.                                 }
  403.                         }
  404. }} 
  405. clearstatcache();
  406. }
  407. }
  408.  
  409. //funcoes internas
  410. function hex2bin_($data)
  411. {
  412.     return pack("H".strlen($data),$data);
  413. }
  414. function inverterhex($data)
  415. {
  416.     $tamanho=strlen($data);
  417.     if(($tamanho % 2)!=0)
  418.     {
  419.         $data="0".$data;
  420.     }
  421.     $data=wordwrap($data, 2, "/", true);
  422.     $explode=explode("/", $data);
  423.     $a=0;
  424.     for($i=(count($explode)-1); $i>=0; $i--)
  425.     {
  426.         $join[$a]=$explode[$i];
  427.         $a++;
  428.     }
  429.     $data=implode("", $join);
  430.     return $data;
  431. }
  432. function hex2num($data)
  433. {
  434.     return hexdec(inverterhex($data));
  435. }
  436. function num2hex($data)
  437. {
  438.     return inverterhex(dechex($data));
  439. }
  440. function abrirconta($login)
  441. {
  442.     $ini=substr($login,0,1);
  443.     $path=@mysql_fetch_array(mysql_query("SELECT `valor` FROM `configs` WHERE `config`='path'"));
  444.     if(is_numeric($ini))
  445.     {
  446.         $ini="etc";
  447.     }
  448.     $conta=$path['valor']."/".$ini."/".$login;
  449.     if(file_exists($conta))
  450.     {
  451.         $open=@fopen($conta,"r");
  452.         $leitura=@fread($open, filesize($conta));
  453.         return trim(strtoupper(bin2hex($leitura)));
  454.     }
  455.     else
  456.     {
  457.         return 0;
  458.     }
  459. }
  460. function salvarconta($login, $data)
  461. {
  462.     $ini=substr($login,0,1);
  463.     $path=@mysql_fetch_array(mysql_query("SELECT `valor` FROM `configs` WHERE `config`='path'"));
  464.     if(is_numeric($ini))
  465.     {
  466.         $ini="etc";
  467.     }
  468.     $conta=$path['valor']."/".$ini."/".$login;
  469.     if(strlen(hex2bin($data))==4292)
  470.     {
  471.         $open=@fopen($conta,"w");
  472.         fwrite($open, hex2bin($data));
  473.         fclose($open);
  474.         return 1;
  475.     }
  476.     else
  477.     {
  478.         return 0;
  479.         echo "Erro de gravacao, contate a administracao. Falha ao gravar a conta.";
  480.     }
  481. }
  482.  
  483. if(!empty($alert))
  484. {
  485.     echo "<script type='text/javascript'>alert('".$alert."');</script>";
  486. }
  487.  
  488. ?>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top