Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: bygdle en Noviembre 18, 2015, 05:53:13 PM

Título: [digamos que resuelto]Eliminar archivos de hosting?
Publicado por: bygdle en Noviembre 18, 2015, 05:53:13 PM
Hola, hace poco se resolvió el tema de Subir archivo a hosting, y gracias a él y a unas preguntás más que hice en ese tema, logré subir mis archivos a mi host. Pero se me vino a la cabeza... "Todo lo que sube, tiene que bajar" y capté que si quiero hacer un juego con soporte online, debo darle a los usuarios la posibilidad de eliminar SUS PROPIOS niveles. Así que mi pregunta es:

Cómo elimino archivos que ya he subido al hosting
es decir que, yo seguí exitosamente el tema de subir archivos, y quiero poder eliminar los archivos que se han subido con este método

Supongo que está muy claro lo que quiero, agradecería me ayudaran... :D :D
Título: Re:Eliminar archivos de hosting?
Publicado por: Guacusio en Noviembre 18, 2015, 07:54:56 PM
En GMS:

ruta_php="http://www.gamegeisha.net/gms_delete.php";//ruta de ejemplo
archivo="myini.ini";//nombre del archivo a borrar
http_post_string(ruta_php,"archivo="+archivo);//envía el nombre del archivo al servidor


En el servidor, el archivo php debe estar en la ruta indicada por ruta.php y contener algo así:

<?php
$fname 
$_POST['archivo']; //nombre del archivo que se borrará
unlink('uploads/'.$fname); //borrado del archivo (suponiendo que está en la carpeta uploads)
?>

Título: Re:Eliminar archivos de hosting?
Publicado por: bygdle en Noviembre 18, 2015, 08:05:59 PM
Voy a probarlo...pero una duda:
¿No podría usarse ese sistema para hackear servidores que tengan ese script? osea que yo uso eso en mi host y otro pilluelo hace ese código en su GMS y el podría hackearme ¿no?
Título: Re:Eliminar archivos de hosting?
Publicado por: penumbra en Noviembre 18, 2015, 08:20:35 PM
Sí, y ni siquiera necesitaría usar GMS.
Cita de: penumbra en Noviembre 09, 2015, 10:15:43 AM
NOTA: Existiría la posibilidad (quizás remota, quizás no tanto) de que alguien más podría aprovechar el script para subir archivos al servidor.

Buen momento para estudiar seguridad en PHP
Título: Re:Eliminar archivos de hosting?
Publicado por: bygdle en Noviembre 18, 2015, 11:15:34 PM
Y dónde me recomendarías que aprendiera eso de seguridad en PHP?   :D
Título: Re:Eliminar archivos de hosting?
Publicado por: Guacusio en Noviembre 19, 2015, 03:27:47 AM
Cita de: NiuWeb en Noviembre 18, 2015, 11:15:34 PM
Y dónde me recomendarías que aprendiera eso de seguridad en PHP?   :D

Puedes poner en google "seguridad de archivos php". Un ejemplo:

http://www.elwebmaster.com/articulos/%C2%BFtu-php-es-seguro-tips-y-herramientas-para-asegurar-tu-sitio (http://www.elwebmaster.com/articulos/%C2%BFtu-php-es-seguro-tips-y-herramientas-para-asegurar-tu-sitio)
Título: Re:Eliminar archivos de hosting?
Publicado por: kostra en Noviembre 19, 2015, 10:51:59 AM
adjunto el primer archivo oficial de hackeo a Niuweb, solo tienes que cambiar el enlace por tu web (véase código fuente) :P
PD: Tómese esto a broma porfavor =_= aunque la seguridad sea seria :B
PD2: INDETECTABLE POR NINGÚN ANTIVIRUS!!
(http://www.okcomputersolution.com/images/icons/service_icon_virusgurantee.png)
Título: Re:Eliminar archivos de hosting?
Publicado por: bygdle en Noviembre 19, 2015, 07:46:09 PM
Oh por Dios! Kostra eres un Juanker!
Buscaré en internet como dijo Guacusio y publicaré aquí si encuentro algo útil...si no, pues... seguiré buscando...xD
Título: Re:Eliminar archivos de hosting?
Publicado por: kostra en Noviembre 20, 2015, 04:17:33 PM
para hacerlo algo más segur se me ocurre usar sql, pero claro, yo ni idea, aunque ya tienes una inspiración para buscar jeje
Título: Re:Eliminar archivos de hosting?
Publicado por: Guacusio en Noviembre 20, 2015, 07:16:17 PM
Como primera medida de seguridad, hay que evitar hacer público el contenido del php. Si ya lo hiciste, entonces puedes modificarlo para exigir del cliente una variable adicional con un password en la información que viene en el post y sólo ejecutar el php si el password es correcto (y por supuesto, no publicar el contenido de ese php nuevo).
Título: Re:Eliminar archivos de hosting?
Publicado por: kostra en Noviembre 20, 2015, 07:30:59 PM
claro que tampoco es injuankeable xD
El caso es que te pasará como en mi proyecto... se empieza con algo mierdón... y si por algún milagroso caso se hace famoso, entonces es cuando se tendrá problemas de seguridad.. y a partir de ahí, problema, solución, problema, solución... ir mejorando en actualizaciones, como hacen todos, resolviendo problemas :B
Título: Re:Eliminar archivos de hosting?
Publicado por: bygdle en Noviembre 20, 2015, 07:43:10 PM
Supongo que será así...xD
PD: Guacusio, cómo puedo hacer eso que dices ¿algún tutorial o enlace para hacerlo?
Título: Re:Eliminar archivos de hosting?
Publicado por: jmbs19 en Noviembre 20, 2015, 09:16:53 PM
niuweb para poder hacer lo que dice guacusio simplemente tienes que saber como obtener las variables a partir de un link, te lo sintetiso:

hay dos maneras de pasar informacion a un php

las que usan la variable $_GET:

link: www.tu-pagina.com/tuphp.php?variable1=cadenadetexto&variable2entero=5
php

<?php
$variable1
$_GET['variable1'];
int $variable2entero=$_GET['variable2entero'];
?>



y las que usan la variable $_POST:

link: www.tu-pagina.com/tuphp.php
<?php
$variable1
$_POST['variable1'];
int $variable2entero=$_POST['variable2entero'];
?>


la principal diferencia entre ellas es que, como puedes ver, en una la variable esta en el link y en la otra se envia en forma de formulario y es invisible para un navegador. las variables get y post son array superglobales que no requieren que las declares antes de llamarlas. una cosa importante acerca de las variables en php es que siempre tienen que iniciar con $.

entonces a partir de aqui tu puedes hacer cosas increibles con un php, puedes hacer bucles, condicionales, llamadas de datos entre otras cosas.

lo que nos preocupa en tu caso es que quieres que introduscan una clave y si la clave es correcta se puede borrar el archivo, bueno eso es bastante interesante y se puede hacer de muchas maneras, te recomendaria usar sql, de esta manera seria algo asi

<?php
$nivel 
$_GET['nivel']
$pass $_GET['pass']
//despues de conectarte con la base de datos
mysql_query("DELETE FROM `tabla_de_niveles` WHERE `id_nivel` = $nivel and`id_nivel`= $pass")?>



si no quieres usar un sql puedes hacer esto


<?php
$pass 
=$_GET['pass'];
$_pass_global="tu pass";
$fname $_GET['archivo'];
if (
$pass == $pass_global)
{
unlink('uploads/'.$fname);}
else
echo 
"pass incorrecto";
?>



el problema con el segundo es que no podras tener una clave por archivo como seria el caso el sql. sino que sera una sola clave y todos los que la tengan podran borrar cualquier archivo.

ps: uso variables GET para los ejemplos pero perfectamente se podria usar variables post, para hacer uso de una u otra dentro de gml se usaria lo siguiente




http_post_string(url,variables en post): variables post
http_get(url?variables): variables get

aqui tienes el manual de php: http://php.net/manual/es/index.php
Título: Re:Eliminar archivos de hosting?
Publicado por: bygdle en Noviembre 20, 2015, 09:34:31 PM
Intentaré la segunda opción a ver qué tal me va, se tanto de SQL como de fabricación de camisetas... :-[