
Quote from JoxM on November 13, 2023, 11:30 amBuenas a tods!
Estoy trasteando con Visualneo Web, siempre he sido de la versión de escritorio.
Tengo un par de dudas sobre la seguridad que se puede dar a una app para móvil.
Mi intención es que no se pueda acceder al código fuente de una app creada y no se si esto es posible o lo contempláis de alguna manera. He varias ocasiones he usado el servicio de https://obfuscator.io, para ofuscar el código y bueno, los resultados son bastante buenos. La cosa es que he intentado ofuscar el código de app.js, pero no funciona. ¿Cómo podemos dar seguridad a nuestras apps para que no vean el código fuente? Es muy sencillo decompilarlo a día de hoy, pero quizá si el código tiene ofuscación sería más complejo entenderlo.
Por otra parte, me gustaría saber como como puedo manejar las llamadas a un servidor propio y que sólo se permita desde la app. Tengo un servicio API montado, el cual le paso user y apikey para realizar llamadas a los endpoints, pero quiero que esas llamadas sólo se puedan realizar desde la app, por el mismo motivo de que si la decompilan no den con la url y puedan hacer llamadas sin importancia.
¿Podéis ayudarme?
Mil gracias a tod@s.
Hello everyone!
I'm playing around with Visualneo Web, I've always been a fan of the desktop version.
I have a couple of doubts about the security that can be given to a mobile app.
My intention is that the source code of a created app cannot be accessed and I don't know if this is possible or if you contemplate it in any way. I have used the https://obfuscator.io service several times to obfuscate the code and well, the results are quite good. The thing is that I have tried obfuscating the app.js code, but it doesn't work. How can we give security to our apps so that they do not see the source code? It is very easy to decompile it today, but perhaps if the code has obfuscation it would be more complex to understand.
On the other hand, I would like to know how I can handle calls to my own server and have it only allowed from the app. I have an API service set up, which I pass user and apikey to make calls to the endpoints, but I want those calls to only be made from the app, for the same reason that if they decompile it they do not find the url and can make unimportant calls.
Can you help me?
A thousand thanks to everyone.
Buenas a tods!
Estoy trasteando con Visualneo Web, siempre he sido de la versión de escritorio.
Tengo un par de dudas sobre la seguridad que se puede dar a una app para móvil.
Mi intención es que no se pueda acceder al código fuente de una app creada y no se si esto es posible o lo contempláis de alguna manera. He varias ocasiones he usado el servicio de https://obfuscator.io, para ofuscar el código y bueno, los resultados son bastante buenos. La cosa es que he intentado ofuscar el código de app.js, pero no funciona. ¿Cómo podemos dar seguridad a nuestras apps para que no vean el código fuente? Es muy sencillo decompilarlo a día de hoy, pero quizá si el código tiene ofuscación sería más complejo entenderlo.
Por otra parte, me gustaría saber como como puedo manejar las llamadas a un servidor propio y que sólo se permita desde la app. Tengo un servicio API montado, el cual le paso user y apikey para realizar llamadas a los endpoints, pero quiero que esas llamadas sólo se puedan realizar desde la app, por el mismo motivo de que si la decompilan no den con la url y puedan hacer llamadas sin importancia.
¿Podéis ayudarme?
Mil gracias a tod@s.
Hello everyone!
I'm playing around with Visualneo Web, I've always been a fan of the desktop version.
I have a couple of doubts about the security that can be given to a mobile app.
My intention is that the source code of a created app cannot be accessed and I don't know if this is possible or if you contemplate it in any way. I have used the https://obfuscator.io service several times to obfuscate the code and well, the results are quite good. The thing is that I have tried obfuscating the app.js code, but it doesn't work. How can we give security to our apps so that they do not see the source code? It is very easy to decompile it today, but perhaps if the code has obfuscation it would be more complex to understand.
On the other hand, I would like to know how I can handle calls to my own server and have it only allowed from the app. I have an API service set up, which I pass user and apikey to make calls to the endpoints, but I want those calls to only be made from the app, for the same reason that if they decompile it they do not find the url and can make unimportant calls.
Can you help me?
A thousand thanks to everyone.

Quote from luishp on November 14, 2023, 5:49 pmMi intención es que no se pueda acceder al código fuente de una app creada y no se si esto es posible o lo contempláis de alguna manera. He varias ocasiones he usado el servicio de https://obfuscator.io, para ofuscar el código y bueno, los resultados son bastante buenos. La cosa es que he intentado ofuscar el código de app.js, pero no funciona. ¿Cómo podemos dar seguridad a nuestras apps para que no vean el código fuente? Es muy sencillo decompilarlo a día de hoy, pero quizá si el código tiene ofuscación sería más complejo entenderlo.
@joxm efectivamente es imposible evitar el acceso al código y lo único que puedes hacer es ofuscarlo para hacerlo más dificil de entender.
además de obfuscator.io existen muchos otros servicios y scripts que realizan la misma tarea y que posiblemente sean compatibles con app.js.
Más información aquí:
https://jscrambler.com/blog/javascript-obfuscation-the-definitive-guidePor otra parte, me gustaría saber como como puedo manejar las llamadas a un servidor propio y que sólo se permita desde la app. Tengo un servicio API montado, el cual le paso user y apikey para realizar llamadas a los endpoints, pero quiero que esas llamadas sólo se puedan realizar desde la app, por el mismo motivo de que si la decompilan no den con la url y puedan hacer llamadas sin importancia.
Puedes configura tu servidor API para permitir solicitudes solo desde el dominio de tu aplicación cliente utilizando el encabezado CORS (Cross-Origin Resource Sharing). Esto ayuda a prevenir solicitudes cruzadas no autorizadas. En PHP sería algo como esto:
<?php // Permitir solicitudes desde el dominio de tu aplicación header('Access-Control-Allow-Origin: https://tudominio.com'); // Reemplaza con el dominio de tu aplicación // Permitir los métodos de solicitud que pueden ser utilizados con la API header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE'); // Permitir los encabezados que pueden ser utilizados con la API header('Access-Control-Allow-Headers: Content-Type, Authorization'); // Permitir que las cookies se incluyan en las solicitudes header('Access-Control-Allow-Credentials: true'); // Establecer el tipo de contenido para la respuesta header('Content-Type: application/json'); // Resto de tu lógica y código aquí ?>Por cierto Jose, que ayer estuve en Unitel y pregunté por ti, pero me dijeron que ya no trabajabas allí.
Mi intención es que no se pueda acceder al código fuente de una app creada y no se si esto es posible o lo contempláis de alguna manera. He varias ocasiones he usado el servicio de https://obfuscator.io, para ofuscar el código y bueno, los resultados son bastante buenos. La cosa es que he intentado ofuscar el código de app.js, pero no funciona. ¿Cómo podemos dar seguridad a nuestras apps para que no vean el código fuente? Es muy sencillo decompilarlo a día de hoy, pero quizá si el código tiene ofuscación sería más complejo entenderlo.
@joxm efectivamente es imposible evitar el acceso al código y lo único que puedes hacer es ofuscarlo para hacerlo más dificil de entender.
además de obfuscator.io existen muchos otros servicios y scripts que realizan la misma tarea y que posiblemente sean compatibles con app.js.
Más información aquí:
https://jscrambler.com/blog/javascript-obfuscation-the-definitive-guide
Por otra parte, me gustaría saber como como puedo manejar las llamadas a un servidor propio y que sólo se permita desde la app. Tengo un servicio API montado, el cual le paso user y apikey para realizar llamadas a los endpoints, pero quiero que esas llamadas sólo se puedan realizar desde la app, por el mismo motivo de que si la decompilan no den con la url y puedan hacer llamadas sin importancia.
Puedes configura tu servidor API para permitir solicitudes solo desde el dominio de tu aplicación cliente utilizando el encabezado CORS (Cross-Origin Resource Sharing). Esto ayuda a prevenir solicitudes cruzadas no autorizadas. En PHP sería algo como esto:
<?php
// Permitir solicitudes desde el dominio de tu aplicación
header('Access-Control-Allow-Origin: https://tudominio.com'); // Reemplaza con el dominio de tu aplicación
// Permitir los métodos de solicitud que pueden ser utilizados con la API
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE');
// Permitir los encabezados que pueden ser utilizados con la API
header('Access-Control-Allow-Headers: Content-Type, Authorization');
// Permitir que las cookies se incluyan en las solicitudes
header('Access-Control-Allow-Credentials: true');
// Establecer el tipo de contenido para la respuesta
header('Content-Type: application/json');
// Resto de tu lógica y código aquí
?>
Por cierto Jose, que ayer estuve en Unitel y pregunté por ti, pero me dijeron que ya no trabajabas allí.

Quote from JoxM on November 15, 2023, 11:40 amBuenas Luís muchas gracias por la ayuda. Lo de CORS lo tenía en mente, pero quería saber si alguien usa algún tipo de método de comprobación diferente.
Para la ofuscación voy a seguir buscando este tipo de servicios o a ver si veo algún script que funcione. Gracias por ese enlace, es muy interesante.
Ya no estoy por Unitel Luís, la dirección es catastrófica y nunca estaré con quien valora más el estar que el hacer. Ya sabes.... ^^
De todos modos sigo por la zona. Si algún día estás por aquí y te ves con tiempo de echar un café sólo tienes que decírmelo, estaría genial.
Mil gracias de nuevo Luís, seguimos en contacto.
Saludos.
Buenas Luís muchas gracias por la ayuda. Lo de CORS lo tenía en mente, pero quería saber si alguien usa algún tipo de método de comprobación diferente.
Para la ofuscación voy a seguir buscando este tipo de servicios o a ver si veo algún script que funcione. Gracias por ese enlace, es muy interesante.
Ya no estoy por Unitel Luís, la dirección es catastrófica y nunca estaré con quien valora más el estar que el hacer. Ya sabes.... ^^
De todos modos sigo por la zona. Si algún día estás por aquí y te ves con tiempo de echar un café sólo tienes que decírmelo, estaría genial.
Mil gracias de nuevo Luís, seguimos en contacto.
Saludos.