Add a way to reserve shmop memory ids and prevent shmop_open (e.g. opcache's region)
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- C
- Estrellas
- 40.4k
- Forks
- 8.2k
- Merge medio
- 2 d 13 h
- PR fusionados (30 d)
- 96
Descripción
Description
Related to https://github.com/php/php-src/issues/9944
Prevent accidentally or intentionally reading or writing to shared memory regions which would be used by opcache, or other extensions such as APCu
A possible approach:
- Add a helper method in
Zend/directory to track ids used during module initialization - Make the ext/shmop extension check if those ids were already used and treat it like a native error code for https://php.net/shmop_open
- Add an ini setting to disable this protection, in case userland debuggers/visualizers have valid use cases for this
Guía de contribución
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.
Línea de trabajo
Comienza leyendo ext/opcache/shared_alloc_shm.c en la ubicación enlazada; después, inspecciona la implementación de ext/shmop y el directorio Zend/. Determina cómo la inicialización del módulo podría hacer un seguimiento de los IDs reservados y cómo shmop_open informa de los errores nativos. Se considerará terminado cuando no se pueda acceder accidentalmente a las regiones de opcache ni a las de otras extensiones, y se haya considerado la configuración ini de exclusión propuesta.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- c, php
- Área
- operating-systems, security
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100