¿Es obligatorio un escáner de código según NIS2?
La respuesta corta es no: en NIS2 no aparece la palabra escáner. Lo que la directiva y el artículo 30 del BSIG piden es que las vulnerabilidades de los propios sistemas se conozcan, se traten y queden documentadas. Cinco respuestas breves para quien opera su propio software y quiere saber qué le obliga de verdad.

La respuesta corta
No. No hay en la directiva NIS2 ni en la ley alemana del BSI ninguna disposición que exija un escáner de código, un producto de escaneo o un método de comprobación concreto. Quien oiga lo contrario debería pedir la referencia. No existe.
Qué se exige en su lugar
El artículo 21, apartado 2, letra e de la directiva exige a las entidades afectadas seguridad en la adquisición, el desarrollo y el mantenimiento de redes y sistemas de información, incluidas la gestión y la divulgación de vulnerabilidades. Alemania lo traspuso casi literalmente en el artículo 30, apartado 2, número 5 del BSIG. El apartado 1 del mismo artículo añade que el cumplimiento debe documentarse, y el número 6 exige procedimientos para evaluar la eficacia de las medidas.
Esa es toda la obligación: conocer las vulnerabilidades, tratarlas, divulgarlas, documentar, evaluar. Cómo llega ahí una entidad, la ley se lo deja a ella. Para el propio código, las vulnerabilidades son esencialmente credenciales escritas en el código, dependencias vulnerables y patrones inseguros; cómo las evidencia un escaneo continuo está en nuestro artículo sobre cómo demostrar la conformidad NIS2 en el día a día y en nuestra página sobre seguridad del código y cumplimiento.
Por qué recomendamos el escaneo de todos modos
Porque el deber de documentación del apartado 1 es, en la práctica, el cuello de botella. Las vulnerabilidades también pueden gestionarse con una revisión manual anual. Lo que falta entonces es la prueba del tiempo intermedio. Un escaneo en cada commit deja tras cada hallazgo una clasificación, una medida y una fecha, y ese expediente se forma mientras se trabaja y no antes de la fecha de auditoría. Esa es la razón de la recomendación, no una obligación que no existe.
Qué no puede hacer el escaneo, y qué significa eso para la obligación
Un escáner encuentra lo que tiene un patrón. Los errores de lógica de negocio, por ejemplo una lógica de permisos errónea desde el punto de vista del negocio, no los encuentra, y las decisiones de diseño no las juzga. Pero la obligación del número 5 no termina en el límite de la herramienta. Quien quiera cumplirla del todo necesita, además del escaneo, una comprobación periódica de lo que no tiene patrón, por regla general un test de penetración. Tampoco ese está prescrito. También es un camino hacia el resultado exigido.
A quién se aplica siquiera la pregunta
El artículo 30 del BSIG se dirige a entidades esenciales e importantes. Que una empresa lo sea depende del sector y del tamaño; nuestra comprobación rápida NIS2 lo aclara en pocos minutos. Y con independencia de NIS2: quien no escribe software ni opera por su cuenta software comprado no tiene nada que escanear. Quien tiene una de las dos cosas tiene vulnerabilidades que gestionar, le alcance la directiva o no. Si merece la pena, lo muestra el análisis de código gratuito, sin compromiso.
Preguntas frecuentes
¿Aparece la palabra escáner en algún sitio de la ley?
No. Ni en el artículo 21 de la directiva ni en el artículo 30 del BSIG. Lo que se exige es la gestión de vulnerabilidades en el desarrollo y el mantenimiento y su documentación, no un producto.
¿Basta entonces un test de penetración anual para cumplir la obligación?
Evidencia el día de la prueba. La obligación apunta al tratamiento continuo de las vulnerabilidades y a su documentación. El tiempo entre dos pruebas también necesita una prueba, y un escaneo continuo es la forma más sencilla de producirla.
No estamos bajo NIS2. ¿Queda zanjada la cuestión para nosotros?
La obligación, sí; el riesgo, no. Una clave escrita en un repositorio es una contraseña abierta con ley o sin ella. Si merece la pena mirar, te lo dirá el hallazgo del análisis gratuito.