Mini Curso Gratuito: Aplicación de Hardening para PCI DSS y CIS en Linux usando OpenSCAP
Objetivo: Aprender a aplicar técnicas de hardening en sistemas Linux, utilizando la herramienta OpenSCAP para cumplir con los estándares de PCI DSS y las guías de CIS (Center for Internet Security).
1. Introducción a OpenSCAP
OpenSCAP es una suite de herramientas basadas en estándares que implementan el protocolo de Security Content Automation Protocol (SCAP). Se utiliza para realizar auditorías automáticas, generar informes de cumplimiento y aplicar políticas de seguridad, lo que facilita la tarea de hardening.
2. Conceptos Básicos de PCI DSS y CIS
- PCI DSS (Payment Card Industry Data Security Standard) establece un conjunto de requisitos de seguridad para proteger la información de las tarjetas de pago.
- CIS (Center for Internet Security) publica guías de seguridad para hardening de sistemas operativos y otros componentes, que sirven como referencia para implementar controles de seguridad robustos.
3. Instalación de OpenSCAP
Para empezar, debes instalar OpenSCAP en tu sistema Linux. La mayoría de las distribuciones lo incluyen en sus repositorios.
En RHEL/CentOS:
sudo yum install scap-security-guide openscap-scanner
En Ubuntu/Debian:
sudo apt-get install libopenscap8 ssg-base ssg-debderived
4. Aplicación de un Perfil de Seguridad
OpenSCAP incluye un conjunto de perfiles de seguridad predefinidos para varias normativas y guías, como PCI DSS y CIS Benchmarks.
Ver perfiles disponibles:
Después de la instalación, puedes listar los perfiles disponibles para tu sistema:
oscap info /usr/share/xml/scap/ssg/content/ssg-<distro>.xml
Reemplaza <distro>
por el nombre de tu distribución. Ejemplo para CentOS:
oscap info /usr/share/xml/scap/ssg/content/ssg-centos7-ds.xml
Esto mostrará una lista de perfiles como PCI-DSS o CIS, que puedes aplicar.
5. Auditar tu Sistema con OpenSCAP
El primer paso en el proceso de hardening es auditar tu sistema para identificar configuraciones que no cumplan con los estándares de PCI DSS o CIS.
Ejemplo de auditoría de un sistema contra el perfil PCI DSS en CentOS:
sudo oscap xccdf eval --profile pci-dss --report pci-dss-report.html /usr/share/xml/scap/ssg/content/ssg-centos7-ds.xml
Esto generará un archivo HTML (pci-dss-report.html
) con los resultados de la auditoría.
Opciones comunes:
--profile <perfil>
: Especifica el perfil que quieres utilizar, comopci-dss
ocis
.--report
: Genera un informe en formato HTML.
6. Aplicar Cambios Automáticos
OpenSCAP puede aplicar automáticamente ciertas configuraciones de seguridad para ajustar el sistema a las guías de PCI DSS o CIS. Ten en cuenta que algunos ajustes pueden requerir intervención manual.
Ejemplo para aplicar cambios automáticos basados en el perfil PCI DSS:
sudo oscap xccdf eval --profile pci-dss --remediate /usr/share/xml/scap/ssg/content/ssg-centos7-ds.xml
--remediate
: Este parámetro le indica a OpenSCAP que aplique correcciones automáticas en las configuraciones de seguridad del sistema, de acuerdo con el perfil seleccionado.
7. Aplicación Manual de Configuraciones
Algunos cambios pueden no aplicarse automáticamente y requerirán intervención manual. A continuación, se indican algunos ejemplos de configuraciones típicas que puedes aplicar manualmente para mejorar la seguridad de tu sistema y cumplir con PCI DSS y CIS.
a. Bloqueo de Contraseñas para Cuentas Inactivas
Esto asegura que las cuentas inactivas no puedan ser usadas para accesos no autorizados.
useradd -D -f 30
Este comando ajusta el sistema para bloquear cuentas inactivas después de 30 días.
b. Desactivar SSH Root Login
El acceso remoto directo como root es un riesgo para la seguridad.
Edita el archivo de configuración SSH:
sudo vi /etc/ssh/sshd_config
Cambia la línea:
PermitRootLogin no
Luego reinicia el servicio SSH:
sudo systemctl restart sshd
c. Configurar Políticas de Contraseñas
Puedes utilizar PAM para implementar políticas de contraseñas más estrictas.
Edita el archivo de configuración de PAM:
sudo vi /etc/security/pwquality.conf
Asegúrate de incluir configuraciones como:
minlen=12
dcredit=-1
ucredit=-1
lcredit=-1
ocredit=-1
Esto fuerza contraseñas con al menos 12 caracteres, y exige que contengan mayúsculas, minúsculas, números y caracteres especiales, cumpliendo con PCI DSS.
8. Revisar y Monitorear el Cumplimiento
Una vez aplicados los cambios de hardening, es recomendable realizar auditorías periódicas para garantizar el cumplimiento continuo.
Ejecutar auditorías periódicas:
Puedes automatizar las auditorías usando un cron job para ejecutar OpenSCAP en intervalos regulares.
Ejemplo de cron job para ejecutar una auditoría semanal:
0 2 * * 7 /usr/bin/oscap xccdf eval --profile pci-dss --report /var/log/pci-dss-report.html /usr/share/xml/scap/ssg/content/ssg-centos7-ds.xml
9. Generar Informes de Cumplimiento
Para auditar los resultados de hardening, OpenSCAP permite generar informes detallados que se pueden presentar como evidencia en auditorías externas.
Comando para generar informes:
oscap xccdf eval --profile cis --report cis-compliance-report.html /usr/share/xml/scap/ssg/content/ssg-centos7-ds.xml
Esto genera un informe detallado en HTML (cis-compliance-report.html
) que describe el estado de cumplimiento del sistema.
10. Conclusión
El uso de OpenSCAP facilita enormemente el proceso de hardening y auditoría de sistemas Linux para cumplir con estándares como PCI DSS y CIS. Las auditorías periódicas y la aplicación sistemática de políticas de seguridad ayudan a mantener la seguridad de tu infraestructura y asegurar el cumplimiento de regulaciones críticas.
Resumen de Pasos:
- Instalar OpenSCAP en tu sistema Linux.
- Ver los perfiles disponibles para PCI DSS o CIS.
- Auditar el sistema utilizando OpenSCAP.
- Aplicar configuraciones automáticas o manuales de hardening.
- Monitorear y auditar regularmente el cumplimiento con informes detallados.
Con estas herramientas y prácticas, tendrás un entorno Linux más seguro y ajustado a los estándares de seguridad.
Capítulo: Implementación de OpenSCAP con ultima versión de a Septiembre 2024
1. Acceder al Repositorio de GitHub
Para obtener la última versión, accede a la página de lanzamientos del repositorio de ComplianceAsCode:
https://github.com/ComplianceAsCode/content/releases
Allí podrás encontrar la ultima versión, por ejemplo la versión 0.1.74. Descarga el archivo correspondiente a esta versión para tu distribución de Linux.
2. Descargar la ultima versión por ejemplo Versión 0.1.74
Para descargar la ultima versión, por ejemplo versión 0.1.74 directamente desde GitHub, utiliza el siguiente comando wget
en tu terminal:
wget https://github.com/ComplianceAsCode/content/releases/download/v0.1.74/scap-security-guide-0.1.74.zip
Este archivo contiene los perfiles de seguridad actualizados, incluidas las políticas de PCI DSS y CIS.
3. Descomprimir el Archivo Descargado
Después de descargar el archivo comprimido, descomprímelo con el comando unzip
:
unzip scap-security-guide-0.1.74.zip
Esto extraerá todos los archivos de configuración SCAP, necesarios para auditar y aplicar las políticas de seguridad en tu sistema.
4. Verificar los Perfiles SCAP
Una vez que hayas descomprimido los archivos, verifica los perfiles disponibles en el archivo SCAP para asegurarte de que contiene los perfiles deseados (PCI DSS, CIS, etc.):
oscap info scap-security-guide-0.1.74/ssg-centos7-ds.xml
Este comando listará todos los perfiles disponibles, incluyendo PCI DSS, CIS, y otros perfiles de seguridad relevantes.
5. Realizar Auditoría de Cumplimiento
Con los perfiles verificados, puedes realizar una auditoría de cumplimiento para verificar el estado de seguridad de tu sistema. Por ejemplo, para auditar el cumplimiento de PCI DSS, usa el siguiente comando:
sudo oscap xccdf eval --profile pci-dss --report pci-dss-report.html scap-security-guide-0.1.74/ssg-centos7-ds.xml
Esto generará un informe en HTML que puedes revisar para verificar el cumplimiento de tu sistema con las políticas de PCI DSS.
6. Actualizar las Políticas de Seguridad
Si deseas aplicar las políticas de seguridad automáticamente, puedes ejecutar un escaneo con OpenSCAP que también aplique las configuraciones necesarias:
sudo oscap xccdf eval --remediate --profile cis --report cis-remediation-report.html scap-security-guide-0.1.74/ssg-centos7-ds.xml
Este comando no solo auditará el sistema según el perfil de CIS, sino que también aplicará automáticamente las configuraciones recomendadas.
7. Mantener las Guías Actualizadas
Recuerda que estas guías se actualizan regularmente. Es recomendable verificar de forma periódica el repositorio de GitHub para asegurarte de estar utilizando siempre la última versión:
https://github.com/ComplianceAsCode/content/releases
Resumen de Pasos para la ultima versión, por ejemplo Versión 0.1.74
- Acceder a la página de lanzamientos en GitHub:
https://github.com/ComplianceAsCode/content/releases - Descargar la última versión (0.1.74) usando
wget
. - Descomprimir los archivos descargados con
unzip
. - Verificar los perfiles SCAP utilizando
oscap info
. - Realizar auditorías de seguridad con OpenSCAP (
oscap xccdf eval
). - Aplicar las políticas de seguridad automáticamente con
--remediate
.
Siguiendo estos pasos, estarás utilizando las guías más recientes de OpenSCAP para cumplir con las normativas de PCI DSS y CIS en tu entorno Linux.