Seguridad en Servidor

Iniciado por FCOSTA, 20 Septiembre 2011, 03:26 AM

0 Miembros y 1 Visitante están viendo este tema.

FCOSTA

No se si este es el foro adecuado. Si no lo es pido disculpas
y si quereis ponerlo en el sitio que le corresponda.

Tengo una duda

Estoy creando una aplicación cliente/servidor en Internet.

Mi idea es que la parte del CLIENTE solo tendrá la interface de entrada de datos, y la parte del SERVIDOR tendrá toda la aplicación y la base de datos.

El hecho que haya pensado que es mejor que el SERVIDOR sea donde este la aplicación (los cálculos) y la base de datos es porque creo que asi estará mas segura y que no podrá ser copiada ni crackeada por nadie.

¿Estoy en lo cierto, o estoy equivocado?

Esta es mi duda......  Si pongo la aplicación en el servidor como un fichero compilado EXE. Y la ejecuto con el ASPEXEC... ¿Es una forma totalmente segura que nadie podrá copiarla ni crakearla?

Gracias. 











BlackZeroX

.
Que papel juega la BDD?... yo podria CLONAR la BDD y crackear tu Aplicacion aun asi...

* las operaciones basicas y que no tengan ninguna indole en la bdd haslas localmente en tu aplicacion, trata de que donde o el app que consulte la bdd (servidor) no se sature de cosas "Estupidas" como comprobar rangos y cosas por estilo...

* Si tienes un Cliente-Servidor dond el servidor consulta tu BDD y la interaccion entre cliente y servidor es por SQL, entonces tienes un GRAN AGUJERO, de lo contrario si es un protocolo de intercomuniccion estara seguro hasta cierto punto... puesto yo podria hacer un EMULADOR de tu servidor... simplemente destripando tu cliente xP.

* Mientras no publiques tu aplicacion sera la mas segura... una vez publicada una parte de ella pues no te dire que no se puede cracker por que la vdd es que si se puede, quisas tome tiempo pero de que se puede se puede aun cuando ofusques...

Dulces Lunas!¡.

Dulces Lunas!¡.
The Dark Shadow is my passion.

FCOSTA

Gracias por tu respuesta

He realizado una aplicación de ingeniería. Es un programa que se le entran unos datos numéricos y te da unas respuestas también numéricas.

Por ejemplo, le entras una medida de resistencia de un material, y lo multiplica por el coseno de dicha cantidad, y te da un valor que luego puedes aplicar a otros ratios. (Le entras 4 y te sale 0.23145 que es el coseno multiplicado por otros ratios)

Este programa, puedo exponerlo de distas formas.....  por ejemplo shareware
y otras. Pero considero (o consideraba) que una de las mas "seguras" (entre comillas) era que corriera en una pagina web. (de forma que nunca "entrara" en el ordenador del usuario)

Pero hacerlo correr en una pagina Web, significa pasar todo el código a PHP o JAVA (porque ASP no se si es muy seguro).  El programa esta hecho en  Visual Basic.net.
            Entonces un amigo me propuso hacer que el programa se dividiera en dos partes. Una parte en el cliente y otra en el servidor. La del cliente seria simplemente la entrada de datos, y la del servidor seria el nucleo del programa compilado en un archivo EXE.
                                               
Y me dijo que eso seria mucho mas seguro, que si el usuario se bajase todo el programa a su ordenador lo cual haría mas fácil de analizarlo y poder hackearlo o crackearlo. (En principio me pareció una buena idea)

Pero yo en seguridad informática no soy un experto.

Lo único que he aprendido (según vosotros y otras paginas) ES QUE NO HAY NADA QUE NO SEA CRACKEABLE.

Pero mi duda es esa... ¿Incluso NO teniendo el programa dentro del ordenador (que estaría en un servidor) te pueden crackear un programa?.

Respondiendo a tu pregunta, la BDD tendría varias misiones. Tomar los datos del usuario, y comprobar cada vez que lo use que es un usuario registrado. O sea, no podrá usar el programa si no es un usuario registrado. ¿Me explico?

Perdon por el "ladrillo" pero asi sabes de que va el tema.

Gracias.

BlackZeroX

Por lo que me as dicho NO tiene caso el ser cliente servidor... digamos que verificas ok el servidor seguro envia un bloque de datos con el cual verificara si es o no original... en este caso simplemente se crea un programa que emule esto ultimo y ya esta crackeado.

Si tu programa es bueno y a buen precio seguro nadie lo crackea... no te lo aseguro, ya ves a los programades de Autodesk (Autocad...).

Nota: Espero que te muevan el tema a otro donde se ESPECIALISEN realmente, por que a  mi criterio el metodo que haces sera molesto, y terminaran crackeandote el programa, o si yo fuera lo recrearia y lo liberaria de manera Free.

Temibles Lunas!¡.
The Dark Shadow is my passion.

FCOSTA

Gracias por la idea.
Ahora tendre en cuenta que el Servidor no debe enviar ningun BLOQUE DE DATOS al Cliente.
O sea, tengo que hacer que todo el proceso de Seguridad se desarrolle en el Servidor. Buena idea.

Pablo Videla

Es idea mía o tu programa llama a una especie de WebService ?

FCOSTA

Gracias por tu respuesta.

Bueno, he tenido que mirar de que iba lo de WebServices.

Pero tambien me parece una buena idea.
Hacer que la base de datos sea Oracle o MySQL en vez de Access no hay problema.

Aunque no haya encontrado nada que hable sobre seguridad de este servicio.
Lo que a mi me preocupa es la seguridad.

Yo se que "a mala idea" me lo van a crackear.
Pero al menos quiero hacerlo dificil. Que tenga que ser alguien muy experto.
Que no pueda ser un "Nebby"

Y ademas me gustaria "enterarme" de quien esta usando el programa sin
haber pagado. (Esto lo he hecho haciendo que el programa me envie un codigo cada vez que lo usen).

En fin.
Estoy buscando lo imposible. Pero por eso lo busco.
Saludos.




BlackZeroX

Cita de: FCOSTA en 21 Septiembre 2011, 01:54 AM

Y ademas me gustaria "enterarme" de quien esta usando el programa sin
haber pagado. (Esto lo he hecho haciendo que el programa me envie un codigo cada vez que lo usen).


Casi casi espionaje... te lo terminaran crackeando o sacando una version Free, ademas de que para algo simple nesesitaran usar un servido de internet... cuando no lo nesesita realmente para su labor...

Mejor opta por otros medios por que este va a terminar por ser un producto Muy caro a largo plazo.

Dulces Lunas!¡.
The Dark Shadow is my passion.

Novlucker

Tener tu sistema en un servidor web es incluso más seguro que tenerlo como cliente-servidor, y al estar en VB.NET puedes portarlo con cierta fácilidad a ASP.NET (.... y si, ASP.NET es igual de seguro que JAVA o PHP), el problema que tienes es el hosting :P

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

FCOSTA

Insertar Cita
<Tener tu sistema en un servidor web es incluso más seguro que tenerlo como <cliente-servidor, y al estar en VB.NET puedes portarlo con cierta fácilidad a <ASP.NET (.... y si, ASP.NET es igual de seguro que JAVA o PHP), el problema que <tienes es el hosting

Perdoname, pero no "capto" lo que me explicas.

Si tengo mi sistema en un servidor Web ¿no es lo mismo que cliente/servidor?
¿Que quieres decir cuando dices "tenerlo en un servidor web?.

Si lo tengo en un servidor, cuado lo quieran usar necesitaran el programa "Cliente"
¿o no?
(Perdona, pero no acabo de asimilar (por falta de conocimientos mios) lo que me estas explicando. Y estoy muy interesado en ello. ¿Podrias aclararmelo?)

El problema es el hosting? Esto tambien lo he pensado yo, me da miedo que para hacer eso necesite contratar un "servidor dedicado". Y no quiero hacerlo.
¿Te refieres a eso?

Saludos.