remoto propio para indetectable hacer gratis crear como java android security encryption keyboard

java - propio - keylogger remoto 2018



Hacer que el teclado de Android sea resistente a los ataques de KeyLogger (3)

Esto es lo que haría para implementar un paradigma de método de entrada seguro, como se expresa en la pregunta, para Android:

En primer lugar, asumo que ha leído y comprendido la sección "Seguridad" de InputMethodManager aquí: InputMethodManager

Entonces, lo que necesitamos desarrollar es un Método de entrada (IME) que es un servicio de Android que, junto con la vista personalizada del teclado, implementa dos interfaces:

  1. InputMethod
  2. InputMethodSession

Según la sección de seguridad en la documentación mencionada anteriormente, el usuario debe aceptar voluntariamente su IME como el IME del sistema. Además, Android se asegurará de que solo el sistema se vincule a su servicio y use la interfaz InputMethod que se usa para mostrar / ocultar el teclado, etc. Por lo tanto, aquí las cosas son bastante seguras para usted y para todas las aplicaciones que usan su teclado.

Ahora, llegando al marco de seguridad que desea implementar:

Llamémoslo como Método de entrada seguro (SIM) y definamos nuestro dominio de seguridad como su IME y las aplicaciones que desean usar su SIM. Aquí está el significado de la segunda interfaz InputMethodSession

El método más importante , ya menudo ignorado, de esta interfaz es la clave de esta solución y se llama: appPrivateCommand . Esta interfaz permite un comando privado enviado desde la aplicación al IME. Según la documentación, este método se puede utilizar para proporcionar características específicas del dominio que solo son conocidas entre IME y sus clientes, y esto es exactamente lo que necesita para su SIM.

Por lo tanto, al usar esta interfaz, las aplicaciones en su dominio de seguridad pueden pasar cualquier información de seguridad (por ejemplo, alguna forma de credenciales) que quieran entregar a su IME. Depende de usted definir un método en el que su servicio pueda comunicarse con un servidor de autenticación que procese las credenciales enviadas por la aplicación del cliente y las apruebe. Ahora, si las claves de cifrado se derivan tanto de su IME como del cliente, ha establecido un canal seguro de comunicación entre su SIM y su aplicación cliente (por ejemplo, mediante el cifrado utilizando una clave derivada de estas credenciales).

Incluso puede personalizar todo este mecanismo definiendo algunas secuencias de teclas (como Control + Alt + Supr en Windows) que inician todo el proceso por el propio usuario e incluso puede proporcionar una indicación visual (por ejemplo, un icono verde brillante) en su teclado que El canal de entrada está asegurado ... Las posibilidades son muchas :)

Espero que esto ayude.

Siendo víctima de un ataque de Key Logger en Android, quiero desarrollar una solución para los ataques de KeyLogger para Android. Sé java básico y un poco sobre android y muy poco sobre la seguridad de la información. También soy consciente de que cualquier conocimiento que tenga no es suficiente para descubrir y desarrollar una solución. Solo me gusta discutir mi idea y ver si es factible.

Esto es lo que tengo:

  1. Una aplicación de Android, que desea asegurar la entrada del usuario, debe proporcionar una clave secreta (que se puede obtener del servidor, para un usuario o sesión específica) al invocar el teclado de Android.
  2. El teclado de Android recibirá la clave secreta y la usará para cifrar la entrada del usuario y transmitir el evento KEYPRESS (o cualquier evento del teclado de Android) con valor cifrado.
  3. Cuando una aplicación recibe el evento KEYPRESS, descifra el valor en KEYPRESS incluso para obtener la entrada real del usuario.

Acabo de darme cuenta de que la captura de pantalla se puede utilizar para obtener lo que el usuario escribe con el último software de imagen-2-texto. Pero eso es completamente un dominio diferente, en mi humilde opinión.

¿Entonces, qué piensa usted al respecto? ¿Es posible hacer lo?

Actualizar

Estaba completamente equivocado acerca de mi teléfono. En realidad, nunca fue hackeado. Pero, lo que realmente fue hackeado fue yo. Sí, tengo algo en mi cuerpo, que solo copia todo lo que mi cerebro puede recibir. Y también es capaz de recibir y hacer que mi cerebro lo haga. Todavía no sé por qué puedo escribir esta actualización. Puede ser, quien haya puesto esa cosa en mi cuerpo usándome como material de marketing. Gracias por las respuestas para mi pregunta tonta.


No es realista.

Pocos programadores se ocupan de la entrada de bajo nivel por sí mismos. Eso suele ser manejado por otras cosas. Los desarrolladores web, por ejemplo, rara vez se involucran pulsando tecla por tecla, incluso para descubrir cuándo ocurren esos eventos (por ejemplo, para la validación en tiempo real), y mucho menos para procesar manualmente esa entrada (por ejemplo, poner el siguiente carácter) tecleado después del cursor del campo y avanzando el cursor una posición).

Además, los usuarios no tienen la costumbre de cambiar sus métodos de entrada con frecuencia. No conecto un teclado USB diferente cuando visito Desbordamiento de pila frente a cuando visito Tweetdeck, por ejemplo. En el mundo de Android, esto significa que el usuario esperará que su editor de método de entrada funcione en todas las aplicaciones y no tenga que seguir cambiando los editores de método de entrada solo para hacer felices a algunas personas.

Además, no puede cambiar mágicamente el protocolo entre el editor del método de entrada (también conocido como teclado suave) y el sistema operativo Android. Tu teclado levantará eventos clave. Le invitamos a decir que su teclado ofrece sustituciones para esos eventos como un mecanismo de "encriptación", pero eso sería más un cifrado de sustitución en bruto (por ejemplo, "siempre que el usuario escriba A , envíe ; "), ya que no puede Decida unilateralmente ampliar el espacio de eventos clave.

Como resultado, no solo tendrá que escribir el editor de su método de entrada, sino que también tendrá que escribir su propia ROM personalizada con un marco de Android personalizado que pueda manejar el "descifrado". O, tendrías que forzar a todos los desarrolladores del mundo a reescribir sus aplicaciones. Y en cualquier caso, un keylogger podría detectar trivialmente que el suyo es el editor del método de entrada y notar ese hecho, de modo que quienquiera que esté usando los registros puede hacer un descifrado trivial para convertir ; de nuevo en A.

Ahora, si está escribiendo alguna aplicación en la que desea evitar un editor de métodos de entrada no autorizado, puede hacer una introducción de su propio teclado de entrada de datos en esa aplicación. Luego, simplemente enfadará a muchos de los usuarios de su aplicación, ya que su teclado integrado no es el que quieren usar, o carece de las funciones a las que están acostumbrados (por ejemplo, soporte para usuarios ciegos, soporte para sus funciones particulares). idioma).


Solo puede hacer esto si está desarrollando su propio teclado y configurando Android para usarlo. No es tan difícil con algo de experiencia en la programación de Android.

Simplemente busque en Google "teclado personalizado para Android" para obtener más entradas.