Un atacante desconocido ha conseguido crear y desplegar un proceso automatizado que bifurca y clona repositorios existentes, añadiendo su propio código malicioso oculto bajo siete capas de ofuscación (vía Ars Technica). Estos repositorios falsos son difíciles de distinguir de sus homólogos legítimos, y algunos usuarios que desconocen la naturaleza maliciosa del código están bifurcando ellos mismos los repositorios afectados, aumentando involuntariamente la escala del ataque.
|
etiquetas: github , ataque , código malicioso , informática
Por comodidad de los desarrolladores que lo ven todo desde su mundo de Yupi, tenemos aplicaciones que se podrán escribir en 100 líneas sin , escritas en 20 pero con cientos de dependencias.
Porque? Porque solo miramos lo que tenemos inmediatamente delante de la nariz, y exclamamos -oh cielos, que código más elegante!- sin que importe lo más mínimo toda la basura que pueda haber detrás.
Gracias al gilipollismo corporativo, tenemos esto y toda una industria de expertos en seguridad que se dedican a despegar herramientas -refritos de nesus, y otros proyectos - con un panel de control con colorines y porcentajes, que te dicen que el problema esta en la versión de nginx.
En la industria del software hay una burbuja de tal magnitud con mil capas de abstracción, dependencias de nodejs, dependencia de servicios de nube, todos los datos en aws o azure (ya veréis que risas dentro de unos años), que cuando alguno de estos gordos reviente, la onda expansiva se llevará varias otras cosas gordas por delante.
Lo mismo que pasa ahora con los bancos, pronto pasará con el cloud, github, los repos públicos de docker, etc.
Todo tiene un precio, pero en general,contra más fácil es algo al principio, más alto es el precio a pagar por esa comodidad.
Multiple security issues were discovered in Chromium, which could result
in the execution of arbitrary code, denial of service or information
disclosure.
Pero como yo uso Windows, no tengo ese problema.
Me fascina como en esta industria en la que se supone que tenemos grandes mentes pensantes hay tanta dejadez.
Es un problema serio
www.tenable.com/plugins/nessus/191442
The version of Microsoft Edge installed on the remote Windows host is prior to 122.0.2365.63. It is, therefore, affected by multiple vulnerabilities as referenced in the February 29, 2024 advisory.
- Type Confusion in V8 in Google Chrome prior to 122.0.6261.94 allowed a remote attacker to potentially exploit object corruption via a crafted HTML page. (Chromium security severity: High) (CVE-2024-1938)
- Type Confusion in V8 in Google Chrome prior to 122.0.6261.94 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: High) (CVE-2024-1939)
2) Preparate para futuras demandas como parte de tu codigo pertenezca a codigo BSD sin mencionar el origen o GPL/LGPL sin respetar licencias.
1. Una vez que casi todo esté en "la nube". Aws, azure y demás nos subirán los precios (Pero no lo suficiente para que salga la cuenta migrar a soluciones self hosted)
2. El pais dónde esta tu empresa deja de ser amigo de USA y te bloquean el acceso a github, aws, azure, etc
3. Ataque nuclear parcial, donde los principales objetivos son los datacenters de aws, azure, etc donde están desplegadas tus aplicaciones, datos, y sus backups
Muchos me acusaron de que haciendo las cosas yo eran más inseguras. Aún no he sufrido nada por ello, y no es porque los sistemas los usen cuatro gatos. Simplemente me cansé de mandar correcciones a sistemas que se suponían "más seguros" y me di cuenta de que salvo algún genio aislado, los escribía gente con la misma idea o menos que la que tenía yo, y el 90% eran mucho menos paranoicos o cuidadosos con cosas elementales, no hablemos ya de cosas realmente chungas y profesionales.
Cada vez me cuesta más nadar contra corriente, y es una inercia imparable que me hace aborrecer muchos aspectos de mi profesión. Para mis proyectos sigo usando mis frameworks, pero en el trabajo cada vez tengo que usar cosas más deplorables y "actuales".
A veces creo que igual no es tan mala idea que la IA nos quite el trabajo, viendo lo que hacen los humanos con la tecnología últimamente.
Edito: cc/ #81
Mientras no suplanté también los repos de npm, maven, etc…
Al final puede que un desarrollador cuele código malicioso en los repos de Debían sin querer
guix.gnu.org/es/
nouveau.freedesktop.org/VideoAcceleration.html
ryf.fsf.org/products/Talos-II-lite-Mainboard
Cara la Talos? Si, pero un thinkpad de GNU es relativamente barato y permite hacer muchisimas cosas con menos recursos de lo que piden otros sistemas. Un Guix con XFCE es perfectamente usable.
Guix es compleja? Ok, pero si trabajas en ciencia o entornos sensibles, tu entorno ha de ser 100% reproducible.
OpenSSL es un software ajeno a Linux. Es como si incluyes las vulnerabilidades de Photoshop como vulnerabilidades de Windows
Y navegando contra un servidor con el OpenSSL vulnerable sería vulnerable tu edge en Windows
En resumen, aplicaciones que podrían ocupar 100 líneas, ocupando 1000.
Puedes desplegar un clúster de kuberntes en aws EKS, meter una aplicación llena de dependencias.
Eso será muy efectivo los primeros a o 4 meses. Entonces el chavo al que le otorgan la explotación del servicio depende de as para casi el 100% de la infraestructura y tienes millones de dependencias con las que lidiar cuando haya actualizaciones. Y las hay constantemente.
Es MUCHO mejor a largo plazo, y más rentable, trabajar en una base solida que puedas mover independientemente de AWS o azure o GPC, y una aplicación con mínimas dependencias y bien documentada.
Es más trabajo? Por supuesto. Pero te aseguras poder tener soporte fuera de lo que hagan los terceros.
Todo depende de qué tipo de aplicación sea claro.
Pero en unos años vamos a ver una explosión de proyectos que se han quedado en nada gracias a la pereza.
Todo se destila en esto:
en.wikipedia.org/wiki/Move_fast_and_break_things?wprov=sfla1
Aquí empezó todo, con el capullo de Zuckerberg adorado como un dios.
Por cierto no se que tiene que ver chatgpt con copilot y con ataques que hacen forks de repos. Que todo lleva ai?
Creo que es fácil caer en la tentación de pensar que lo que no entendemos está mal y que nosotros lo hacemos mejor pero hay mucha gente muy muy buena por ahi y de hecho creo que la mayoría de librerías conocidas estan mantenidas por gente muy capaz.
Se supone que cuanto más se usa esa librería más se revisará el código para estar al día de actualizaciones y problemas nuevos que surgen, pero la realidad es que gran parte del código es normal, y no estará más desactualizado de lo que pueda estar el código de cualquiera.
Todo esto unido a que cualquier dependencia te obliga a estar atento a posibles cambios, me genera la sensación de que prefiero añadir yo lo que sea necesario a mis librerías principales, y mantener las dependencias solamente allí donde realmente se necesitan, o donde esa actualización constante y revisión por pares pueda ser más beneficiosa.
Suma finalmente que la mayoría de los ataques son dirigidos a vulnerabilidades conocidas de librerías conocidas, y en mi caso la gran mayoría no hacen "match" por ninguna parte, con lo cual son vulnerabilidades que no van a explotar en mi código, incluso aunque por defecto fuera más inseguro ante un ataque dirigido ( que tampoco tiene por qué serlo, más vulnerable, quiero decir ).
Creo que tengo una experiencia bastante dilatada y variada, y sé por qué dices lo que dices, no eres el primero ni serás el último, pero creo que ganarías más pensando un poco sobre lo que exponemos varios de los compañeros, en lugar de ser tan taxativo.
Ahora, por curiosidad, me gustaría saber qué es lo que te parece tan descabellado de mi argumentación como para no pasar tu entrevista.
Si es la parte en la que considero el código de la mayoría de librerías como "normalito", te diré que he enviado correcciones a bastantes proyectos desde hace más de veinte años, y las correcciones no hacía falta ser un genio para verlas. Algunos proyectos eran más nuevos, pero otros llevaban décadas y eran usados masivamente. Y eso no impidió que arrastraran errores que no deberían haber estado ahí. Errores que en mis frameworks no estaban - y no soy ningún genio, créeme - y en esos proyectos de software libre duraron bastante tiempo.
Si es otro el argumento para desechar mi candidatura, me gustaría que me lo explicaras.
Me recuerdas a los Devs de ux de los proyectos en los que trabajo.
Centro del universo.
En particular, ninguno de los navegadores más habituales en Linux (Firefox y Chrome) hacen uso de OpenSSL. La aplicación más común que sí usaba OpenSSL y sí emplea hearthbeat es SSH, y sólo supone un problema si te conectas a servidores maliciosos de terceros (cosa rara).
Dicho eso, aunque las implementaciones de otros sistemas no eran vulnerables, las aplicaciones no siempre hacen uso de la implementación nativa. Por ejemplo, un servidor nginx o Apache corriendo en Windows también usaría OpenSSL y estaba totalmente expuesto.
#41 Tiene toda la razon.
edbrowse.org
Y no troleo como dice #8, con quickjs se puede comentar perfectamente desde un netbook.
Es mas, si haces click en el paquete ves que muchos tienen el bug resuelto.
Pero yo no uso Debian, uso Hyperbola GNU con Dillo, Edbrowse, sacc para gopher, gplaces para Gemini, a veces Links y Iceweasel-UXP con Ublock Origin Legacy para emergencias. Pocos problemas tendre yo con el JS y/o anuncios, tengo hasta archivos de hosts con unos 200.000 dominios bloqueados. Pero para comentar en MNM via edbrowse me sobra.
Sobre el problema de Github, si el unico problema es meter un binario Win32 en vez del repo, pues cojonudo. La mayoria de devs hara caso omiso.
Ojala mas gente usase Guix, toda la instalacion y construccion se 'certifica' para que sea clonable por entero en cualquier maquina en identica salida.
El problema será Copilot y marmolillos preguntando a ChatGPT sin saber que hace el codigo de un programa, libreria o script.
Justamente parte de los argumentos que uso con mis clientes para usar soluciones híbridas y poner prácticamente todo dentro del paquete entregable, en la forma que sea, kuberntes, contenedores, maquinas virtuales, etc.
El momento que usas más servicios de los que te daría de forma nativa una DC, estás en sus manos.
Los tres escenarios son posibles, el 1 ya se da y el 2, bueno, tenemos la razón por la cuál existe Alibaba.
Al escenario 3 me suelo referir como guerra regional que llega a incapacitar la infraestructura de la región.
Pero bueno si hay una guerra nuclear probablemente la aplicación será lo de menos...
A ver si este año me instalo el Linux en mi escritorio
No me vengáis con películas que el hilo iba de otra cosa y sólo puse un ejemplo de vulnerabilidad crítica. CC #46
security-tracker.debian.org/tracker/status/release/stable
Cierro que entramos en bucle.
En la wikipedia indica que afecta tanto a cliente como a servidor, e informa de que no afectaba a implementaciones TLS distintas a la de openssl, como por ejemplo la de Windows (que sí, que hay BSD, FortiOS, y miles de SO).
Por tanto, su máquina Debian, la que nos ocupa en este caso, de existir y ser usada en ese momento (de 2012 a 2014), podría ser vulnerable navegando contra un servidor malicioso.