Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Handling of double quotes in command arguments

Abierto
#182 9 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
c
Área
cli, security

Línea de trabajo

Start by reading the sudoers manual section on command arguments and the parser or matching code that handles quoted arguments; the issue does not name specific files or tests. Reproduce the two examples from the report on a current version and trace how quoted and empty arguments are matched. Done means the allowed commands match the documented quoting rules, with regression tests covering both examples.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

As far as I understand from the manual, double quotes can be used to escape special characters in any context and they should always be balanced (or escaped with a \). When it comes to command-line arguments though, I observe the following behaviour (on version 1.9.9 and prior; apologies I'm not able to test on the latest version):

The following entry:

   test ALL = NOPASSWD: /bin/ls " foo"

results in user test being able to run these two commands:

   sudo ls '" foo"'
   sudo ls '"' 'foo"'

but not what is expected:

   sudo ls ' foo'

and the following entry:

   test ALL = NOPASSWD: /bin/ls ""

results in user test being able to run both:

   sudo ls '""'
   sudo ls
Lenguaje dominante
C
Estrellas
1.7k
Forks
306
Merge medio
1 d 8 h
PR fusionados (30 d)
24

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de sudo-project/sudo

Todos los issues de sudo-project/sudo

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.