Hola Pela. Tengo dudas sobre lo obtener secrets en runtime desde un servicio externo (pongamosle por ej vault). Para poder obtener los secretos del servicio externo, la app necesitaría además de una url de dicho servicio, permisos y autenticación a ese servicio, ya sea un service account montado en el pod con permisos en vault, un token, datos de una autenticación básica o lo que sea para que logre autenticar se en dicho servicio; por lo cual siempre se terminaría cargando al menos un secreto en el pod que seria potencialmente accesible (ya sea variable de entorno o archivo). En tal caso, si un infiltrado llega a poder correr una Shell dentro del pod, de todas formas ya estaría "hackeado", xq mediante esas credenciales si la descubre podrá acceder al servicio de credenciales y de este obtener otras credenciales (más allá que la app pueda tener una policy que restrinja el acceso a ciertas credenciales). No sé si me entiendes , si estoy errado y me estoy perdiendo de algo 😢 o que no me he dado cuenta y debo estudiar mas. Podrías hechar un par de palabras de luz sobre esto? Excelente siempre tus videos
@PeladoNerd Жыл бұрын
Como dije en el video, la seguridad es una suma de muchas prácticas, una sola práctica no hace tu entorno seguro o inseguro. Respondiendo tu pregunta concretamente, poniendo el ejemplo usando AWS: - Usar AWS secret manager para guardar los secretos. (de esta forma no ponemos secretos como ENV o como archivos en el pod) - Configurar IRSA para que el pod asuma un rol de AWS y pueda obtener esos secretos (de esta forma no ponemos credenciales de AWS como ENV o como archivo en el pod) - Usar una imagen de Docker que no tenga shell (para que no puedan hacer una reversa) - Usar IMDSv2 para que no se puedan obtener metadata sin credenciales - Configurar RBAC para que el pod no pueda hacer nada mas de lo que necesite hacer - Mantener actualizados tus paquetes de dependencias por las dudas que salga alguna vulnerabilidad Ahi yo creo que tenés varios agujeros cubiertos, vuelvo a repetir, esto no lo hace 100% seguro, pero definitivamente hace muy dificil que te hackeen si seguis todas estas prácticas. Saludos!
@matiasr2503 Жыл бұрын
Gracias pela! Excelente como siempre más claro que el agua 😊
@bryanmora4996 Жыл бұрын
@@matiasr2503 Hay un operador que esta muy bueno que se llama ESO (External Secrets Operator) que por debajo usa cualquier proveedor de secretos que te guste (Secrets Manager, Vault, etc), guarda las credenciales como k8s secrets y los sincroniza automaticamente cuando ya no son validos, aun no lo he usado mucho pero parece ser una buena soluciona tu problema, saludos!
@aquiles973 Жыл бұрын
Estaba esperando esto hoy en día muchos usan KUBERNETES , excelente data gracias pelado. Un saludo grande.
@JoseElbioDarioVelazco Жыл бұрын
Impresionante como siempre Pela!!
@jorgenksistemas Жыл бұрын
Como estas Pelado, uso Cast hace unos meses y tiene buen soporte, en vez de hacerlo a manopla me hice un módulo con terraform y helm para automatizar el deploy de cast. Ahora me estoy peleando para correr instancias spot y ahorrar un poco más de costos, sobre todo en Argentina. Saludos!!!
@svnchez9589 Жыл бұрын
Excelente video muy muy util ! Saludos desde el salvador.
@fedex602 Жыл бұрын
Pela, como siempre, excelentes las recomendaciones 👌🏽un craa
@leoMLops Жыл бұрын
Manso video pela, abrazo!!
@mauriciorondonfajardo4207 Жыл бұрын
El final fue muy chistoso jajaja ¡Buen Contenido!
@ricardoid Жыл бұрын
Excelente video. Adicionalmente en el codigo de la aplicacion manipular cadenas secretas como un Array de caracteres y no como un String.
@VANTYCSolutions Жыл бұрын
Intersantísimo! oro molido Pelado, porque no haces una sesión hands on para crear un cluster autoadministrado (k0,3 u8) e irlo asegurando? romperías record de audiencia. Que tal se ve afectada la seguridad del 0 al 10 para un servicio a) autoadministrado y otro b) de un proveedor como linode o vultr por ejemplo? Conoces o recomiendas un servicio de escaneo de seguridad para el cluster? (tipo castai pero en lugar de costos, seguridad?).
@gonzariosm Жыл бұрын
Creo que aqui me salto una duda 13:09 si el pod no tiene internet tampoco deberia poder conectarse con tu shell y si tiene un SG que limita el outbound traffic tambien deberia fallar, no? Peladito eres una maravilla
@kevindigranmontanezolmedo9297 Жыл бұрын
Buen video, saludos desde Perú!
@andresbravo161 Жыл бұрын
Pelado, te quería felicitar por tu presentación en Nerdearla, creo que fue la mejor! 😀
@bryanmora4996 Жыл бұрын
Hola Pelado, podrias hacer un video algun dia hablando sobre Pulumi? Lo he estado usando recientemente para el desarrollo de mi IaC y es taaan facil y comodo que me extrania que no mucha gente sepa de eso y sinceramente creo que necesita mas reconocimiento y mas ahora que obtuvo una Series C de financiamiento, asi que esperemos cosas mejores de ellos en el futuro, saludos
@elrus0o Жыл бұрын
como data extra el metadata que usas para traer info de la vm tambien es compatible con openstack ya que utilizan un protocolo similar, por si alguien quiere hacer pruebas
@gerardvalverde5179 Жыл бұрын
Que maravilla de video
@sauljabin Жыл бұрын
Excelente video
@TheApilar Жыл бұрын
Un abrazo desde Ecuador, pregunta si tengo levantado un bastión pero con la VPN, estará seguro el clúster 🤔
@dirceupavon Жыл бұрын
Saludos Pelado, por curiosidad tienes alguna certificación de Kubernetes? me interesa saber que tan importantes son en el día a día y a la hora de buscar trabajo
@círculoabierto182 Жыл бұрын
Hola pelado, pregunta si tengo un ambiente controlado de integracion continua, cual seria la mejor manera de manejar los scripts, ejecucion de procedimientos, inserts updates, paquetes etc, esto con el fin de automatizar llevar control sobre una base de datos QA, agradezco tu respuesta. (el ambiente esta jenkins, gitlab, bd oracle)
@johnedissonortizroman2886 Жыл бұрын
Quiza usar imagenes distroless podria ayudar a evitar un ataque de este tipo?
@moisesveliz262213 күн бұрын
se puede replicar esto en digital ocean?
@balrogthanatos804 Жыл бұрын
La falta de validación de archivos es una vulnerabilidad clásica y común en aplicaciones web, especialmente en aquellas que utilizan PHP u otros lenguajes de servidor que permiten la carga y manipulación de archivos.
@alejandrosan Жыл бұрын
De hecho cuando uno revisa las herramientas de pentesting sobre kubernetes/cloud/otros servicios al final terminan siendo un script de validación de la configuración. Cosas que con un poco de cuidado, buenas prácticas se solucionan.
@Cristian-Guerrero Жыл бұрын
Que tuviste que hacer para conseguir el título de cncf ambassador??
@txetxudestroy7 ай бұрын
Claro! desde que pudiste subir una backshell o incluso podría haber sido un backdoor las puertas se abrieron.
@pinocodex9 ай бұрын
Oe cual es esa app donde sacas snippes de commandos para el curl? Me molo un monto, podrias dajarte por aqui un link? Merci!
@arielqmdz Жыл бұрын
Final Épico...! Jajajajaja
@carlomagno55 Жыл бұрын
Hola Pelado, puse la IP de mi clúster pública y desplegué un nginx que tiene en la carpeta HTML el kubeconfig pero con nombre index.html, ¿Qué opinas?😂 Muchas gracias por compartir tantos conocimientos, definitivamente necesario ver tus videos, saludos desde Costa Rica
@MEJA98 Жыл бұрын
Hola, mucha gracias por el vídeo. Tengo una duda, como se hizo para ejecutar el script que lanza el shell reverse? Si el servicio almacena archivos, como fue capaz de ejecutar el script? Tiene permisos de ejecución?
@PeladoNerd Жыл бұрын
Simplemente visité la página apuntándole al script y PHP lo ejecutó
@MEJA98 Жыл бұрын
@@PeladoNerd gracias Pelado
@JaminFernandez Жыл бұрын
Pelado cuando publican tu charla en Nedearla? ajaja
@virtual-riot Жыл бұрын
Hola peladito que tal sos mi mentor queria que sepas eso y por otro lado quiero hacerte una consulta o una ayuda, como hago para asignar una IP a un contenedor pero que siempre sea esa IP asi reinicie el docker o asi reinicie el sistema anfitrion pase lo que pase quiero que mantenga esa IP que yo le asigne como haria?
@Murzbul Жыл бұрын
Buenas! Eso que comentas no tendria sentido. Para mantener una IP unica por ejemplo estando en un cluster de alguna nube directamente podes utilizar un Service como LoadBalancer. En ese caso ese LoadBalancer es un recurso concreto de cada nube que te genera la IP publica unica.
@tutorialeshonestos Жыл бұрын
Me convenciste, yo ponía mis manos al fuego por kubernates 🔥
@riderguerrero2963 Жыл бұрын
bro, saludos, .. requiero de tu ayuda.. deseo instalar una maquina (local) para compartir mis videos a traves de rclone, dame una idea de como hacerlo... agradeciendo de antemano tu colaboracion.. me ayudarias un monton....un abrazo
@kazapeke Жыл бұрын
jajajaj super especifico ese numero del final
@alegorosito Жыл бұрын
Nunca nos nos pasó que nos hayan puesto a minar en un server con un CMS brasilero de mapas de extraña procedencia 😆
Aaaaa eso nada más tu lo sabes, cómo crees que la gente normal va a poder saber eso, creo que necesitas ser un nerd, no tener vida social y estudiar mucho para tener este nivel de conocimientos, yo si pude hackear varios sitios pero solo cuando antes no era tan avanzado como ahora
@kernelpanic3520 Жыл бұрын
iptables -A INPUT -p tcp --dport-kuberenetes-only-god-knows -j DROP --update-you-resume --send-automatic-resign-letter , listo! estoy contratado?