Bash 'classifier unavailable' dialog passes no grant fingerprint
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 88/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- authorization, security
Línea de trabajo
Comienza en la llamada bash no clasificada de index.ts:4625 y compara sus argumentos con la llamada eval-tool de index.ts:4207 y las demás rutas de bash. Revisa matchingGrant en index.ts:3177-3187; después, añade los argumentos que faltan y una prueba de regresión que muestre que una concesión de sesión de un diálogo bash no clasificado coincide con el siguiente comando idéntico.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Every requestPermission call on the bash path passes userScopeFingerprint except the unclassified one (index.ts:4625), which passes only four arguments, so tool and the fingerprint are both undefined:
return await requestPermission(
ctx,
target,
"unclassified",
classifyError ? `classifier unavailable: ${truncated(classifyError, 160)}` : "classifier unavailable",
);
The eval-tool sibling (index.ts:4207) passes all of them. A session grant chosen on a bash "classifier unavailable" dialog is therefore stored with an undefined evidence fingerprint. matchingGrant compares that against the live fingerprint (index.ts:3177-3187), so the grant either never matches again (the user is re-prompted after saying "allow for session") or behaves differently from grants taken on every other path.
Fix: pass "bash", "", userScopeFingerprint like the other bash calls, plus a test that a session grant taken on an unclassified bash dialog matches the next identical command.
Found while threading audit fields through the call sites in #77, which kept the gap as-is on purpose.
- Lenguaje dominante
- TypeScript
- Estrellas
- 0
- Forks
- 1
- Merge medio
- 3 h 35 min
- PR fusionados (30 d)
- 50
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
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de STRML/omp-classifier
-
Decide whether a coordinator may lift a headless worker's refusal (the trust boundary #68 defers)Abiertoenhancement ready-for-human
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
STRML/omp-classifier#142 ·
Los mantenedores suelen responder en 1 día
-
enhancement ready-for-human
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
STRML/omp-classifier#116 · 9 comentarios ·
Los mantenedores suelen responder en 1 día
-
enhancement ready-for-human
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
STRML/omp-classifier#13 · 6 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de STRML/omp-classifier
Issues similares
-
Create/import wallet form shows raw "password must be at least 1 characters" instead of the translated messagePosiblemente ocupada @CapThunder19 la tomó hoy. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
joinmarket-webui/jam#1538 ·
Los mantenedores suelen responder en 1 día
-
t0ggles
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
nolimits4web/swiper#8240 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
modelcontextprotocol/inspector#2723 ·
Los mantenedores suelen responder en 1 día
-
status:approved type:bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 70/100
egdev6/quorb#109 · 1 comentario ·
Los mantenedores suelen responder en 1 día