1 votos

Permiso denegado al abrir archivos desde Termux

Tengo un problema con los permisos de archivo en Termux.

Por ejemplo, instalé c4droid y copié el contenido de las carpetas /include y /lib de Termux en la carpeta /c4droid donde se buscan los encabezados en la compilación. Cambié el propietario y el grupo al nombre correcto y el modo a 777, pero en la compilación, dice "no se puede abrir ****.h permiso denegado".

Lo mismo ocurre con un wordlist que viene de la tarjeta SD que puse en una carpeta destinada a ser utilizada con hydra, no solo tengo que utilizar el acceso root para descomprimir el archivo y moverlo, sino que hydra en sí mismo no puede abrirlo.

¿Qué es esta importante cosa que estoy pasando por alto sobre Termux y la propiedad y los permisos de los archivos?

0 votos

Instalé c4droid y copié el contenido de las carpetas incluye y lib de termux en la carpeta de c4droid. ¿Y cuál es la ubicación exacta de la carpeta c4droid?

0 votos

/data/data/com.n0n3m4.droidc/files/gcc/'algoasíaarchar‌​m'/

0 votos

Entonces estás intentando acceder a /data/data/com.n0n3m4.droidc/ desde Termux, ¿verdad? Eso no funcionará. Termux no puede leer/escribir datos fuera de su propio directorio privado /data/data/com.termux/. Ese es el mecanismo de aislamiento de aplicaciones de Android, por seguridad y privacidad. Otra posible ubicación a la que Termux puede acceder es /sdcard/Android/data/com.termux. También todo /sdcard si le otorgas a Termux el permiso de Almacenamiento.

0voto

Yvain Puntos 101

Los comentarios anteriores sugieren que SELinux está bloqueando el acceso a los archivos que se están copiando en el directorio /data/data/ de las aplicaciones. Sí, SELinux está bloqueando el acceso, solo necesitas ponerlo en modo permisivo con SELinux_switch, y no te olvides de establecer el usuario y el grupo en el de la aplicación.

Por lo tanto, copiar los archivos desde Termux con la opción -pZL mantiene todo en su lugar, y una vez que establezcas el propietario y el grupo correctos, funcionará. No he probado tener un enlace simbólico desde la carpeta /includes y /libs de droidc a las de Termux. Si olvidaste corregir los permisos al copiar los archivos, puedes usar /system/bin/restorecon -R (recursivo) en ambas carpetas /include y /lib.

2 votos

No establezca SELinux permissive con SELinux Switcher, es como dar la espalda a una característica de seguridad en la que los profesionales han pasado años implementando. En su lugar, configure un contexto adecuado en sus archivos/directorios. Si responde a mi pregunta en el chat, puedo intentar ayudarlo a hacerlo. Si eso no funciona, puede cambiar SELinux permissive temporalmente, no permanentemente. PD: no necesitas una aplicación para hacer eso, solo echo 0 >/sys/fs/selinux/enforce

0voto

select Puntos 101

TL;DR:

$su
#chown u0_a???:u0_a??? 
#restorecon -v 
#exit

o

$su
#chown -R u-a???:u0_a??? 
#restorecon -vR 
#exit

IMPORTANTE: Los comandos ejecutados a través de sudo funcionan de manera diferente a los comandos ejecutados desde un prompt de root mediante su. sudo ls -lZ != su ls -lZ (lo cual es inesperado y viola tantas suposiciones, pero te aseguro que es así. Supongo que hay un par de formas no obvias en que estos comandos podrían fallar, así que te aconsejaría probar un par de formas diferentes de ser root si esto falla)

Asegúrate de obtener el nombre de usuario y grupo correctos para tu usuario de termux a través de "ls -l" o similar, y utiliza ese nombre de usuario y grupo en los comandos anteriores.

Encontré esta solución para corregir los permisos de archivos de SElinux después de copiar desde la tarjeta SD de vuelta a mi directorio de inicio de Termux en un problema de GitHub Y me llevó tanto tiempo y esfuerzo desenterrarlo que pensé en volver a publicarlo un par de veces para que sea más fácil la próxima vez que este "¡No, no se te permite restaurar tus copias de seguridad!" me muerda el trasero.

Puedes probar para ver si este es tu problema antes de implementarlo a través de ls -lZ. Compara con un archivo al que puedes acceder para comparar el contexto de seguridad SELinux de los dos archivos y verifica que difieren.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X