La página de manual de acceso (2) dice:
Advertencia: al usar access () para verificar si un usuario está autorizado para, por ejemplo, abrir un archivo antes de hacerlo, usar open (2) crea un agujero de seguridad, ya que el usuario puede aprovechar el corto intervalo de tiempo entre la verificación y Abriendo el archivo para manipularlo. Por este motivo, se debe evitar el uso de esta llamada al sistema.
Entonces, ¿qué tipo de agujero de seguridad crea?
Si a alguien no le gusta linux.die.net, aquí está de freebsd.org y manpagez con un texto similar para evitar el uso del acceso ().