String obtenido con .GetText() es visible en la RAM?

Aquí puedes preguntar o compartir tus dudas y conocimientos acerca del programa
Saludos!!

Bien esta duda va para todos los hackers que haya en el foro (Pabloko xD), como muchos sabemos, el AMS es un vale mierda en cuanto a seguridad refiere, el código del programa aún después de ser compilado en .EXE es visible en la RAM (no estoy seguro de que sea en la RAM xD la verdad no se mucho de esto pero estoy aprendiendo :P), mi duda es... Cuando usas algún código del tipo GetText(), El string obtenido también es visible? o no?
:expolota :expolota
Desde hace días traigo en la cabeza una idea loca y la respuesta a esta duda sera lo que defina si la pongo en práctica o no :focus:

Desde ya, muchas gracias.
Saludo Dow Sher :friends:
El funcionamiento de cualquier sistema operativo implica que TODAS las variables funciones definiciones etc SE VUELCAN SIEMPRE en memoria RAM.

En tu caso en particular, preguntas por la funcion GetText:

Imagen

Como ves, en ese pushstring esi = lua_state y ebp es un puntero hacia la memoria ram donde se localiza el objeto. el codigo podria equivale a algo asi...
lua_pushstring(L, TheElement->Text);
Por lo que no lo recopia en memoria, pero estaba ahi todo el tiempo claro...

Se un poco mas claro con lo que quieres hacer y te digo...
Hola Pabloko!!
Bueno verá, para poder conectarse a una base de datos MySQL es necesario poner el usuario, contraseña y nombre de la db con la que vas a trabajar. Por eso quiero saber si el string obtenido por un GetText() también es visible en la RAM.

Bueno se me ocurre ocultar mejor dicho camuflajear con el fondo algunos labels con la información para conectarse a la db. Algo así como que si el fondo es blanco poner el color del texto del label igual de color blanco, así no podría ser visible.
Se podrá hacer eso?
ImagenImagenImagenImagen
Por qué la risa?
Entonces si es visible el string que se obtiene con un GetText()?
Dowsher lo que tu dices es invisible a la vista pero al momento de que el programa obtenga los datos del label quedara en memoria a fuerza no vez que GetText obtiene el texto y lo almacena en memoria para ser utilizado posterior mente.
Imagen
:expolota :expolota
¡NO ME RENDIRÉ!
Qué tal así?
MySQL.Connect(Host, Label.GetText("User"), Label.GetText("Pass"), Label.GetTaxt("DB"));
RAM.Liberar(); --  jejejejejejeje Algún código para liberar la RAM
:) :) :) :) :) :)
No es tan facil.

Yo ya he hecho algo parecido, el codigo que queda en la ram queda repetido varias veces, primero todo el proj.dat cuando se lee, se queda enterito cargado en memoria. Esta parte es la mas jodida de limpiar porque hay que hookear, esperar a que todo haya cargado y sobreescribir ceros.

Luego hay que hookear lua_loadbuffer, tanto los parametros buffer y name contienen el codigo que se va a ejecutar, lo mismo, una vez ejecutado habria que sobreescribirlos.

Una vez esto esta hecho, puedes cogerlo todo y tirarlo a la basura puesto que es muy facil inyectar codigo en Lua y averiguar cualquier cosa, pero no pasa solo con lua, o es que autoplay sea muy inseguro... Ningun software incluye contraseñas generales de conexion precisamente por lo sencillo que resultaria obtenerlas, sencillamente no es seguro porque si tu programa la puede leer, alguien la puede leer tambien, de una forma u otra.

Cualquier servicio serio se conectara contra un webservice para conectarse a una bbdd.

Si alguien necesita mas velocidad que la que ofrece un webservice, le recomiendo crear un puente con mi plugin raknet, lo que transmite la informacion con muy poco ping y a mucha velocidad. Yo de hecho tengo programas que se construyen a si mismos mediante codigo lua que envio por raknet, lo que permite que clientes utilizen siempre la ultima version y vean los cambios de todos los usuarios en tiempo real, como un juego.
interesante
:hypno: Entonces si hay formas pero son muy complicadas :hypno:

Baya :sorry: que decepcionante es esto.
Entonces si al AMSSpecialist Tools lo intentamos hacer que interactue con las ddbb del foro todos los datos de los usuarios quedarían expuestos.
no del todo porque para poder conectarte a la base de datos del foro se podría hacer por medio de conexión php no directamente colocar los datos dentro del proyecto.

bueno eso en teoría por que las bases de datos del sistema de phpbb son en MySQL al igual que muchos sistemas de foros por no decir todos. aunque también cabe recalcar que se puede hacer la conexión desde la opción de base de datos del propio ams pero eso seria aun menos seguro.

en fin esta algo complicado esto.
¿? alguien piensa de verdad que otorgar acceso a una base de datos es una buena idea para un cliente???

Generalmente las bases de datos solo son accesibles desde el propio servidor y sus puertos al exterior via internet se cortan por defecto, es lo habitual y LO LOGICO

Un app de cliente serio debe disponer de un servidor con una capa de transferencia de datos aislado de la propia base de datos, ofreciendo al cliente solo la información que puede recibir.

Por poner un ejemplo, el widget del foro que hicimos hace tiempo ya
Solo con poner el nombre del foro aparecen los mensajes no vistos por ese usuario, como no permite hacer nada mas, no importa que cualquier usuario pueda ver la informacion de otros y como ademas esta url no es publica pues es una seguridad aceptable.

Hacerlo por http es solo simplicidad, ya que los servidores normalmente tienen servicio http pero hay mil formas de hacer esto mismo.