# Chequeá la versión de kernel que corre Railway en tus containers
# (ejecutalo desde tu app o en un RUN durante el build)
uname -r
# Output típico: 5.15.0-1xxx-aws o similar — no es el kernel de Ubuntu directamente # Para ver el estado de patches de seguridad en Ubuntu:
ubuntu-security--weight: 500;">status --thirdparty
# También útil:
pro security--weight: 500;">status
# Chequeá la versión de kernel que corre Railway en tus containers
# (ejecutalo desde tu app o en un RUN durante el build)
uname -r
# Output típico: 5.15.0-1xxx-aws o similar — no es el kernel de Ubuntu directamente # Para ver el estado de patches de seguridad en Ubuntu:
ubuntu-security--weight: 500;">status --thirdparty
# También útil:
pro security--weight: 500;">status
# Chequeá la versión de kernel que corre Railway en tus containers
# (ejecutalo desde tu app o en un RUN durante el build)
uname -r
# Output típico: 5.15.0-1xxx-aws o similar — no es el kernel de Ubuntu directamente # Para ver el estado de patches de seguridad en Ubuntu:
ubuntu-security--weight: 500;">status --thirdparty
# También útil:
pro security--weight: 500;">status
# Esto lo corrí desde un container de Railway con acceso a shell:
cat /proc/version
# Linux version 5.15.0-1057-aws (buildd@lcy02-amd64-059)
# (Ubuntu 5.15.0-1057.61-aws 5.15.163) # Para ver CVEs pendientes en el kernel de tu container:
# (necesitás instalar ubuntu-advantage-tools)
-weight: 500;">apt-get -weight: 500;">install -y ubuntu-advantage-tools
ua security--weight: 500;">status
# Esto lo corrí desde un container de Railway con acceso a shell:
cat /proc/version
# Linux version 5.15.0-1057-aws (buildd@lcy02-amd64-059)
# (Ubuntu 5.15.0-1057.61-aws 5.15.163) # Para ver CVEs pendientes en el kernel de tu container:
# (necesitás instalar ubuntu-advantage-tools)
-weight: 500;">apt-get -weight: 500;">install -y ubuntu-advantage-tools
ua security--weight: 500;">status
# Esto lo corrí desde un container de Railway con acceso a shell:
cat /proc/version
# Linux version 5.15.0-1057-aws (buildd@lcy02-amd64-059)
# (Ubuntu 5.15.0-1057.61-aws 5.15.163) # Para ver CVEs pendientes en el kernel de tu container:
# (necesitás instalar ubuntu-advantage-tools)
-weight: 500;">apt-get -weight: 500;">install -y ubuntu-advantage-tools
ua security--weight: 500;">status
# Esto NO actualiza el kernel del host:
FROM ubuntu:22.04
RUN -weight: 500;">apt-get -weight: 500;">update && -weight: 500;">apt-get -weight: 500;">upgrade -y # Actualizás los paquetes del userspace del container.
# El kernel lo provee el host (Railway/AWS/GCP).
# Vos no controlás cuándo ese kernel se actualiza.
# Esto NO actualiza el kernel del host:
FROM ubuntu:22.04
RUN -weight: 500;">apt-get -weight: 500;">update && -weight: 500;">apt-get -weight: 500;">upgrade -y # Actualizás los paquetes del userspace del container.
# El kernel lo provee el host (Railway/AWS/GCP).
# Vos no controlás cuándo ese kernel se actualiza.
# Esto NO actualiza el kernel del host:
FROM ubuntu:22.04
RUN -weight: 500;">apt-get -weight: 500;">update && -weight: 500;">apt-get -weight: 500;">upgrade -y # Actualizás los paquetes del userspace del container.
# El kernel lo provee el host (Railway/AWS/GCP).
# Vos no controlás cuándo ese kernel se actualiza.
# 1. Monitoreo de USNs de Ubuntu — automatizá esto en tu CI/CD
# Suscribite al feed de Ubuntu Security Notices:
# https://ubuntu.com/security/notices/rss.xml # 2. En tu Dockerfile, fijá la imagen base con digest para poder
# trackear cuándo Railway actualiza el host:
FROM ubuntu:22.04@sha256:HASH_ESPECIFICO # 3. Chequeá el kernel version al inicio de tu app (Node.js):
const os = require('os');
// Logueá esto en tu startup para Railway:
console.log(`Kernel: ${os.release()} | Platform: ${os.platform()}`);
// Si cambia entre deploys, Railway actualizó el host kernel.
# 1. Monitoreo de USNs de Ubuntu — automatizá esto en tu CI/CD
# Suscribite al feed de Ubuntu Security Notices:
# https://ubuntu.com/security/notices/rss.xml # 2. En tu Dockerfile, fijá la imagen base con digest para poder
# trackear cuándo Railway actualiza el host:
FROM ubuntu:22.04@sha256:HASH_ESPECIFICO # 3. Chequeá el kernel version al inicio de tu app (Node.js):
const os = require('os');
// Logueá esto en tu startup para Railway:
console.log(`Kernel: ${os.release()} | Platform: ${os.platform()}`);
// Si cambia entre deploys, Railway actualizó el host kernel.
# 1. Monitoreo de USNs de Ubuntu — automatizá esto en tu CI/CD
# Suscribite al feed de Ubuntu Security Notices:
# https://ubuntu.com/security/notices/rss.xml # 2. En tu Dockerfile, fijá la imagen base con digest para poder
# trackear cuándo Railway actualiza el host:
FROM ubuntu:22.04@sha256:HASH_ESPECIFICO # 3. Chequeá el kernel version al inicio de tu app (Node.js):
const os = require('os');
// Logueá esto en tu startup para Railway:
console.log(`Kernel: ${os.release()} | Platform: ${os.platform()}`);
// Si cambia entre deploys, Railway actualizó el host kernel.
// src/lib/startup-audit.ts
// Logueo de info de entorno al arrancar — Railway lo captura en los logs
import os from 'os'; export function logSecurityBaseline(): void { const info = { kernel: os.release(), // versión del kernel del host platform: os.platform(), // linux arch: os.arch(), // x64, arm64 nodeVersion: process.version, timestamp: new Date().toISOString(), }; // Guardalo en Railway: lo vas a ver si el kernel cambia entre deploys console.log('[SECURITY_BASELINE]', JSON.stringify(info));
}
// src/lib/startup-audit.ts
// Logueo de info de entorno al arrancar — Railway lo captura en los logs
import os from 'os'; export function logSecurityBaseline(): void { const info = { kernel: os.release(), // versión del kernel del host platform: os.platform(), // linux arch: os.arch(), // x64, arm64 nodeVersion: process.version, timestamp: new Date().toISOString(), }; // Guardalo en Railway: lo vas a ver si el kernel cambia entre deploys console.log('[SECURITY_BASELINE]', JSON.stringify(info));
}
// src/lib/startup-audit.ts
// Logueo de info de entorno al arrancar — Railway lo captura en los logs
import os from 'os'; export function logSecurityBaseline(): void { const info = { kernel: os.release(), // versión del kernel del host platform: os.platform(), // linux arch: os.arch(), // x64, arm64 nodeVersion: process.version, timestamp: new Date().toISOString(), }; // Guardalo en Railway: lo vas a ver si el kernel cambia entre deploys console.log('[SECURITY_BASELINE]', JSON.stringify(info));
}
# 4. Activá las notificaciones de seguridad de Railway
# No tienen un feed de CVEs propio publicado, pero sí un -weight: 500;">status page.
# Suscribite a: https://-weight: 500;">status.railway.app/ # 5. Para reducir surface dentro de tu control: seccomp profiles en Docker
# Esto no parchea el kernel pero reduce las syscalls que tu container puede hacer:
-weight: 500;">docker run --security-opt seccomp=./seccomp-profile.json tu-imagen
# 4. Activá las notificaciones de seguridad de Railway
# No tienen un feed de CVEs propio publicado, pero sí un -weight: 500;">status page.
# Suscribite a: https://-weight: 500;">status.railway.app/ # 5. Para reducir surface dentro de tu control: seccomp profiles en Docker
# Esto no parchea el kernel pero reduce las syscalls que tu container puede hacer:
-weight: 500;">docker run --security-opt seccomp=./seccomp-profile.json tu-imagen
# 4. Activá las notificaciones de seguridad de Railway
# No tienen un feed de CVEs propio publicado, pero sí un -weight: 500;">status page.
# Suscribite a: https://-weight: 500;">status.railway.app/ # 5. Para reducir surface dentro de tu control: seccomp profiles en Docker
# Esto no parchea el kernel pero reduce las syscalls que tu container puede hacer:
-weight: 500;">docker run --security-opt seccomp=./seccomp-profile.json tu-imagen