New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Código de rastreo oculto #119

Closed
jorgesumle opened this Issue May 23, 2018 · 8 comments

Comments

Projects
None yet
2 participants
@jorgesumle

jorgesumle commented May 23, 2018

He visto que la página principal de Meneame contiene funciones para el rastreo, concretamente Google Analytics. Sin embargo, no las encuentro en el código fuente. He encontrado algo que me da una pista, pero me hace temer que el código esté oculto.

del archivo www/templates/header.html

        {% try_include 'private/stats.html' %}
        {% try_include 'private/header.html' %}

Ocultar el código de un programa licenciado con AGPLv3 supone un incumplimiento de la licencia. Peor aún es el hecho de que la gente está ejecutando software privativo de Google que compromete la privacidad y ni siquiera puede verlo.

@eusonlito

This comment has been minimized.

Collaborator

eusonlito commented May 23, 2018

Ese "código de rastreo oculto" sirve para que en cada fork de menáme puedan usar su configuración propia de google analytics o el sistema que cada desarrollador decida usar. Dado que es HTML lo puedes ver directamente en el código fuente resultante.

Existen bastantes plantillas "private" que sirven para que cada instalación pueda personalizar a su gusto ciertas partes de la web sin necesidad de generar conflictos con el repositorio principal. Los tienes aquí https://github.com/gallir/Meneame/search?utf8=%E2%9C%93&q=try_include+private&type=

Son precisamente try_include, para que cada entorno pueda incluirlos o no según necesite.

Lo que hay exactamente en menéame (y que puedes ver en el código fuente resultante HTML) es:

<script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-229718-1', 'www.meneame.net', {allowLinker: true}); ga('set', 'dimension1', 'www.meneame.net');  ga('set', 'dimension3', 'Yes');  ga('require', 'displayfeatures'); ga('send', 'pageview'); setTimeout(function() {ga('send', 'event', 'NoBounce', 'Over 20 seconds')}, 20000); </script>

Para poder ver el código fuente de la web puedes entrar en menéame, haces click con el botón derecho en el fondo y buscas la opción de "Ver código fuente". También puedes hacerlo directamente desde el siguiente link view-source:https://www.meneame.net/

@jorgesumle

This comment has been minimized.

jorgesumle commented May 23, 2018

@eusonlito, gracias por la aclaración, era más o menos lo que me suponía.

Lo que hay exactamente en menéame (y que puedes ver en el código fuente resultante HTML) es:

Ese código está ofuscado en el caso de Google Analytics (que es privativo, por lo tanto incompatible con la AGPLv3) y todo en una sola línea, con lo cual no creo que ni siquiera cumple la definición de la licencia sobre código fuente:

The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work.

Además, "Ver código fuente" no me deja ver los archivos stats.html ni headers.html, lo cual también es un requerimiento de la licencia, en este caso para la administradora de Meneame.net

The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version.

@eusonlito

This comment has been minimized.

Collaborator

eusonlito commented May 23, 2018

Creo que te estás confundiendo. Esos ficheros no existen en el repositorio, con lo cual no forman parte del proyecto, con lo cual pueden llevar lo que quieras. No se ha realizado ninguna modificación en el código fuente.

Tampoco Google Analytics está "ofuscado", es su código propio, se copia y se pega. Independientemente de que para ti sea legible o no.

@jorgesumle

This comment has been minimized.

jorgesumle commented May 23, 2018

Creo que te estás confundiendo. Esos ficheros no existen en el repositorio, con lo cual no forman parte del proyecto, con lo cual pueden llevar lo que quieras. No se ha realizado ninguna modificación en el código fuente.

Sé que no existen en el repositorio (precisamente ese es uno de los problemas que he explicado anteriormente), la instancia Meneame.net ha realizado una modificación y no ha proporcionado el código fuente de la versión modificada, eso es un incumplimiento clarísimo de la licencia, y lo estoy notificando aquí porque Meneame indica en la página web que este es el código fuente (según el pie de página) y me gustaría que se corrigiera. Otro problema también es la falta de documentación en el repositorio sobre cómo instalar una instancia en un servidor, ya que no hay documentación que explique el uso de las plantillas privadas (private).

Tampoco Google Analytics está "ofuscado", es su código propio, se copia y se pega. Independientemente de que para ti sea legible o no.

No sé por qué pones la palabra ofuscado entre comillas, el código ofuscado es código fuente que está escrito intencionadamente para dificultar su lectura y comprensión, está claramente ofuscado. No hay más que ver los parámetros de la función (i,s,o,g,r,a,m) para darse cuenta.

es su código propio, se copia y se pega.

Tampoco sé qué quieres decir con «código propio». Que se copie y se pegue código sin saber lo que hace es todavía más preocupante.

@eusonlito

This comment has been minimized.

Collaborator

eusonlito commented May 23, 2018

meneame.net no ha realizado ninguna modificación en el código fuente dado que esos ficheros no existen en el repositorio, al igual que no está en el repositio el fichero de configuración con la conexión a base de datos, SMTP, etc...

Creo que, o bien estoy hablando con un troll, o bien con alguien que no tiene ni idea de como funciona un proyecto web, así que voy a dejar aquí la conversación :)

Saludos.

@jorgesumle

This comment has been minimized.

jorgesumle commented May 23, 2018

meneame.net no ha realizado ninguna modificación en el código fuente dado que esos ficheros no existen en el repositorio, al igual que no está en el repositio el fichero de configuración a base de datos, SMTP, etc...

El simple hecho de que esos ficheros existan en la web y no en el repositorio es una modificación del código fuente (recordemos que además contienen código JavaScript) de la aplicación web.

Creo que, o bien estoy hablando con un troll, o bien con alguien que no tiene ni idea de como funciona un proyecto web, así que voy a dejar aquí la conversación

Por la falta de educación y los desvíos de las respuestas me da la impresión de que no hay voluntad de solucionar el problema ni reconocerlo. Soy una desarrolladora web certificada y con amplia experiencia profesional. Lo de troll sobra, porque la incidencia es relevante, real y la he abierto con intenciones de mejora.

Esperaré un tiempo razonable para escuchar lo que tienen que decir otras desarrolladoras del proyecto. No quiero tener que hacerlo, pero si no hay voluntad de cambio tendré que utilizar medios legales para garantizar las libertades que proporciona la licencia AGPL a mí y al resto de usuarias.

@eusonlito

This comment has been minimized.

Collaborator

eusonlito commented May 23, 2018

Estás muy equivocado con respecto a la aplicación de la licencia (esta o cualquier otra).

NO EXISTE MODIFICACIÓN DEL CÓDIGO FUENTE. El código fuente que tenemos en el servidor es el mismo que tenemos en el repositorio, pero hay ficheros adicionales que no están cubiertos por la licencia ya que no son ficheros del repositorio.

Al igual que existen los avatares de usuario, existen ficheros personalizados de configuración de entorno, de CSS, etc, etc... CUALQUIER COSA QUE NO EXISTA EN EL REPOSITORIO NO ESTÁ CUBIERTA POR LA LICENCIA, CON LO CUAL NO EXISTE OBLIGACIÓN DE PUBLICARLO.

Por eso es por lo que llego a la conclusión que no sabes ni como funciona una web, ni como funcionan las licencias.

@jorgesumle

This comment has been minimized.

jorgesumle commented May 23, 2018

NO EXISTE MODIFICACIÓN DEL CÓDIGO FUENTE

Así define la licencia AGPLv3 una modificación:

To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment