Robar descriptores de archivos del proceso principal -- android campo con linux campo con root campo con su campo con pty camp Relacionados El problema

Steal file descriptors from parent process


0
vote

problema

Español

Estoy usando un sistema Android y tengo un subo ligeramente roto. Obtengo una cáscara de raíz, pero STDIN / STDOUT está actuando raro: un ejemplo es que ctrl + c Mata a todos los niños del proceso su. Así que, como obtiene toda la entrada antes de pasarla a sus hijos, no creo que haya algo que pueda hacer para solucionar esto sin matar el proceso su.

Pensé en escribir un pequeño programa C que hace lo siguiente:

  1. Encuentre el ID de proceso de padres su y los descriptores de archivos (por ejemplo, / dev / pts / 1)
  2. Fork Nuevo proceso de shell con FD / 0, FD / 1, FD / 2 apuntando a / dev / pts / 1
  3. matar su proceso

¿Esto funcionaría? ¿Hay tal vez una forma más fácil de detener el su binario de "interceptar" stdin / stdout?

Original en ingles

I am using an android system and have a slightly broken su: I get a root shell, but stdin/stdout is acting weird: One example being that ctrl+c kills all children of the su process. So since su gets all the input before passing it to its children, I don't think there is anything I could do to fix this without killing the su process.

I thought about writing a small c programm that does the following:

  1. Find parent su process id and the file descriptors (for example /dev/pts/1)
  2. Fork new shell process with fd/0,fd/1,fd/2 pointing to /dev/pts/1
  3. Kill su process

Would this work? Is there maybe an easier way to stop the su binary from "intercepting" stdin/stdout?

              
   
   

Lista de respuestas


Relacionados problema

0  No puedo instalar Ruby en rieles 1.9.3 en Windows 8.1  ( Cant install ruby on rails 1 9 3 on windows 8 1 ) 
Después de muchos intentos, me rindo. Este mensaje sigue apareciendo cuando intento ejecutar Ror después de crear un nuevo proyecto: C:Ruby193 est_1>rails ...

9  Errores instalando pty.js (nodo) en OS X  ( Errors installing pty js node on os x ) 
Me he encontrado con un problema de inusalización al intentar instalar pty.js usando nodo: Si ejecuto npm install pty.js Recibo este error: > node-gyp ...

11  ¿Cómo enviar el carácter de control de control de CTRL-C o el mensaje de suspensión del terminal al proceso secundario?  ( How to send ctrl c control character or terminal hangup message to child process ) 
Tengo un proceso secundario que se ejecuta en un pseudo terminal. El proceso principal no se ejecuta como root, pero el proceso del niño lo hace, a través de ...

0  Leer () del descriptor de archivo cuelga  ( Read from file descriptor hangs ) 
Oye, espero que esta sea mi última pregunta relacionada con PTY y puedo pasar a problemas más emocionantes. (C; Aquí hay un conjunto de pequeñas funciones q...

3  Cómo crear pares de pseudo terminales de la línea de comandos  ( How to create pseudo terminal pairs from command line ) 
Tengo una aplicación de Linux (cuyo código tengo acceso), que debe comunicarse a través del puerto serie con Windows One (tercero, sin acceso al código). La a...

3  Envíe SIGINT a un proceso enviando CTRL-C a STDIN  ( Send sigint to a process by sending ctrl c to stdin ) 
Estoy buscando una forma de imitar un terminal para algunas pruebas automatizadas: es decir, iniciar un proceso y luego interactuar con él a través de enviar ...

3  ¿Cómo puedo usar PHP para configurar una sesión de SSH interactiva?  ( How can i use php to setup an interactive ssh session ) 
Estoy tratando de establecer una conexión SSH interactiva a un servidor remoto usando PHP a través de la línea de comandos en Mac OS X 10.6. Actualmente estoy...

4  Software Serial Port Loopback en Linux  ( Software serial port loopback on linux ) 
Actualmente necesito desarrollar algún programa que se comunique con dispositivos Cisco sobre la línea de serie. Quiero construir un entorno de prueba en mi m...

2  Cómo determinar qué par de puertos Pseudo Tty están conectados entre sí en Bash  ( How to determine which pair of pseudo tty ports are connected to each other in b ) 
Tengo un par de programas de Linux C que usan los terminales Pseudo create table packing_record( `id_pack` int(6) auto_increment NOT NULL primary Key, `w...

3  Manera más sencilla de obtener una PTY en Linux C ++  ( Simplest way to get a pty in linux c ) 
Estoy programando algo que necesita una interfaz para bash. Al principio pensé que podría usar POMEN o QPROCESS. (Estoy usando QT C ++) funcionan bien, pero n...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos