¿Es un problema de seguridad tener archivos de cambio de php?

2

Escribí un código que usa información de la base de datos para cambiar el contenido de varios archivos y luego escribir algo en la base de datos.

Este código está completamente escrito en php y se ejecuta cuando llamo a una URL específica (htaccess protected).

¿Hay algún problema de seguridad que esto pueda traer consigo?

Probablemente las funciones php relevantes que utilizo:

mysqli_connect($servername, $username, $password, $dbname);
file_get_contents($url);
file_put_contents($url);

Esas son las funciones que podría imaginar como "inseguras".

¡Todos los archivos están en un servidor!

¿Algún consejo para hacerlo más seguro?

EDITAR: intentar dar información importante: tengo un servidor virtual con varios dominios. En uno de los dominios hay carpetas con varios archivos, que son creados por un software. Esos son diferentes archivos xml y un archivo html. Necesito agregar codenippets a todos los archivos html.

Por alguna otra razón, tengo la ruta de archivo almacenada en una base de datos. Mi archivo (php completo) tiene una función a la que se llama cuando abro la URL donde se encuentra mi archivo y utiliza las funciones mencionadas anteriormente para cambiar los archivos html. No hay nada que los usuarios puedan agregar ni nada. Mi archivo solo se activa - > ejecuta - > cambia los archivos / db y me devuelve cierta información como html, independientemente de si los cambios tuvieron éxito o no.

Así que mi "procedimiento de trabajo" completo es así: crear el html + xml con mi software subir esos en ftp poner algo de información en la base de datos llame a la url al archivo php para editar mi (s) archivo (s) html de la forma que desee.

Como se mencionó, debo ingresar htacces antes de que pueda activar el archivo php y solo yo y mis colegas conocemos la ruta al archivo php.

    
pregunta Marcel Schmid 03.02.2017 - 10:30
fuente

1 respuesta

2

Confiar en la ruta para la seguridad me suena débil (pueden ser almacenados por servidores proxy), ya que confía en .htaccess (pueden ignorarse si el administrador falla la configuración al reiniciar el servidor).

Si la ruta & el contenido escrito en archivos HTML está utilizando la base de datos, y PHP no puede alterarlo, entonces suena menos atacable, pero aún podría ser:

• Si el archivo HTML escrito es el mismo que el de lectura (los cambios en el archivo local), las llamadas en cascada pueden tener resultados inesperados (es decir, reemplazo / decodificación de varias cadenas)

• Si se accede al FTP, pueden escribir cualquier cosa en archivos HTML. Eso es normal. Pero aquí, cuando uno accede a la base de datos, también pueden escribir cualquier cosa en archivos HTML (y tal vez en cualquier archivo). Así que creaste un nuevo punto de entrada, así que nuevos desafíos de seguridad.

¿Por qué hacerlo en línea? Allí, debes hacer tu truco en una red local, recuperar los archivos resultantes y enviarlos al servidor de productos real. No tendrá ningún riesgo de que alguien llame a su script de compilación desde Internet. De lo contrario, confíe en soluciones no hechas en casa. Tome los de código abierto, que seguirán teniendo el mismo tipo de fallas, pero ya analizados & arreglado por cientos de personas.

    
respondido por el Xenos 03.02.2017 - 15:39
fuente

Lea otras preguntas en las etiquetas