🇵🇪 🚨 PERU: QILIN RANSOMWARE CLAIMS ATTACK ON COSMETICS GIANT BELCORP
The Qilin ransomware group has listed Belcorp, the Peru-based beauty and cosmetics multinational behind the L'Bel, Ésika and Cyzone brands, on its data-leak site.
The listing describes the victim only as a business-services company and gives no detail on the data allegedly stolen.
The claim has not been independently verified, and Belcorp has not publicly confirmed an incident.
⚠️ Analyst Note:
Belcorp sells across much of Latin America through a very large direct-sales network, so a real breach could expose consultant and customer personal and payment data in several countries. Qilin often publishes stolen data if extortion fails. Belcorp consultants and customers should be alert to phishing that uses the brand names. We assess this as an unverified ransomware claim, NOT confirmation of a breach.
Source: this is for subscribers only. Subscribe: https://t.co/O5fslMgNk4
#DDW #DarkWeb #Peru #Colombia #LATAM #Qilin #Ransomware #Belcorp #Retail #ThreatIntelligence #CyberSecurity
A10:2025 – Mishandling of Exceptional Conditions
La aparición de A10:2025 – Mishandling of Exceptional Conditions en el OWASP Top 10 marca un cambio tremendo en cómo la industria entiende las vulnerabilidades modernas. A diferencia de categorías clásicas como Injection o Fallos Criptográficos, esta nueva categoría no se centra en una técnica específica de ataque, ni en un error de implementación fácilmente identificable. Se trata de un conjunto de fallas profundas, sutiles y muchas veces invisibles, que ocurren cuando las aplicaciones no manejan adecuadamente comportamientos inesperados, entradas anómalas, estados límite o condiciones excepcionales.
Este nuevo riesgo de OWASP 2025 surge como respuesta al manejo deficiente de errores y fallos del sistema. A diferencia de categorías anteriores demasiado genéricas, A10 se enfoca específicamente en situaciones donde una aplicación no anticipa, detecta o maneja correctamente condiciones excepcionales —es decir, situaciones inusuales, impredecibles o que alteran el flujo esperado.
Estas fallas pueden ser errores lógicos, desbordamientos, corrupción de estado, fallos en transacciones, problemas con memoria, red o privilegios. Cuando una app no sabe cómo actuar ante un estado inesperado, deja abierta una ventana crítica para ataques, interrupciones y fugas de datos. Lo peor: muchas veces estos errores pasan desapercibidos porque no se loguean bien o no se monitorean, amplificando el impacto de forma silenciosa.
En este artículo se detalla cómo un atacante puede explotar estas debilidades para provocar DoS, interferir con transacciones financieras o recolectar información a través de mensajes de error mal diseñados. También se explican patrones modernos de defensa: uso de excepciones personalizadas, interceptores globales, logs estructurados, respuesta genérica hacia el cliente (como la RFC 7807) y registro detallado en backend.
Se hace hincapié en que no se trata solo de capturar errores, sino de hacerlo bien: distinguir errores operativos de bugs reales, no ocultar problemas con try/catch innecesarios, evitar relanzar mal las excepciones (como throw ex en .NET), usar un sistema centralizado de logging y validar entradas para prevenir estados inválidos.
Además, se resalta la importancia de que toda la organización maneje los errores de forma uniforme. Desde el diseño hasta la producción, el manejo de condiciones excepcionales debe formar parte de la arquitectura de seguridad: modelado de amenazas, validación de entradas, rollback de transacciones, protección de logs y uso de herramientas de observabilidad.
Conclusión: El manejo de errores no es un parche, es una capa de defensa. Una app segura no es la que no falla, sino la que falla con control. Este riesgo OWASP exige diseñar sistemas que detecten, reaccionen y se recuperen de lo inesperado —sin exponerse, sin corromperse y sin darle ventaja al atacante.
la nueva frontera del OWASP Top 10 y el riesgo silencioso que puede romper incluso el software mejor construido
Su inclusión en el Top 10 —y su crecimiento respecto de ediciones anteriores— refleja que la seguridad moderna ya no depende solo de “evitar errores evidentes”, sino de construir aplicaciones capaces de resistir fallos y comportamientos inesperados. La complejidad del software, la naturaleza distribuida de los sistemas y la dependencia masiva en automatización, APIs y microservicios han hecho que los escenarios excepcionales sean ahora parte habitual del flujo normal. Cuando un sistema no está preparado para manejar lo inesperado, el resultado no es simplemente un error: es una vulnerabilidad.
Inyección de comandos del sistema operativo
La inyección de comandos aparece cuando una aplicación construye una orden del sistema operativo con datos controlados externamente y no neutraliza los metacaracteres que cambian el significado previsto. Así, una entrada inocua como calc en Windows abre la calculadora, pero si el atacante aporta calc & echo "test" se encadenan dos órdenes y se ejecutan ambas. El riesgo se agrava si el proceso corre con más privilegios de los necesarios, porque cualquier comando inyectado heredará esos permisos.
Inyección de argumentos
Toda inyección de comandos implica también inyección de argumentos. Aunque se escapen &, |, ; y compañía, un atacante puede colar opciones adicionales válidas para el binario llamado. Por ejemplo, si el código hace system("curl " . escape($url)), una cadena como --help no ejecuta otro programa, pero altera el comportamiento de curl y puede filtrar información o, según el comando, derivar en RCE.
Defensas primarias
La defensa preferida es no invocar el shell: utilice bibliotecas o APIs nativas (por ejemplo, mkdir() en lugar de system("mkdir ...")). Si no puede evitarlos, escape según el contexto y el SO (en PHP, escapeshellarg() encierra el argumento entre comillas y neutraliza metacaracteres, aunque seguirá pasando un único argumento al programa). Para mandatos inevitables, combine parametrización y validación: separe comando y argumentos; permita solo ejecutables en una lista aprobada; y valide los argumentos con listas de permitidos o expresiones regulares (por ejemplo, ^[a-z0-9]{3,10}$ para valores simples), excluyendo metacaracteres como & | ; $ > < \ \ ! ' " ( )y espacios en blanco. Además, respete POSIX: tras--termine el parseo de opciones y trate lo siguiente como operando; por ejemplo,curl -- $url` evita que una URL maliciosa se interprete como opción.
🛡️ Si tu contraseña es cómoda, también es cómoda para cualquiera que quiera entrar
La mayoría usamos claves fáciles porque son rápidas de recordar… pero también son rápidas de adivinar.
Y en internet siempre hay alguien probando puertas, aunque no lo veamos.
💡 Hábitos simples que cambian todo
1. Contraseñas largas y diferentes para cada cuenta.
2. Verificación en dos pasos en todo lo que realmente te importa.
3. No repetir claves, ni aunque “solo sea para salir del paso”.
4. Revisar tus dispositivos igual que revisas el seguro de la puerta de tu casa.
🤗I've written a book! Let me introduce you "Visual Threat Intelligence"
You can register now to stay updated on its release and learn more about it in the link below. I really hope you'll like it! 🥹 #VisualThreatIntelligence#infosec#threatintel
👉https://t.co/REm5TuDRLu