{"id":1156,"date":"2026-06-11T08:02:43","date_gmt":"2026-06-11T08:02:43","guid":{"rendered":"https:\/\/cybercolombia.co\/index.php\/2026\/06\/11\/github-deshabilitara-los-scripts-de-instalacion-de-npm-de-forma-predeterminada-para-detener-los-ataques-a-la-cadena-de-suministro\/"},"modified":"2026-06-11T08:02:43","modified_gmt":"2026-06-11T08:02:43","slug":"github-deshabilitara-los-scripts-de-instalacion-de-npm-de-forma-predeterminada-para-detener-los-ataques-a-la-cadena-de-suministro","status":"publish","type":"post","link":"https:\/\/cybercolombia.co\/index.php\/2026\/06\/11\/github-deshabilitara-los-scripts-de-instalacion-de-npm-de-forma-predeterminada-para-detener-los-ataques-a-la-cadena-de-suministro\/","title":{"rendered":"GitHub deshabilitar\u00e1 los scripts de instalaci\u00f3n de npm de forma predeterminada para detener los ataques a la cadena de suministro"},"content":{"rendered":"<div id=\"articlebody\">\n<p>GitHub tiene <a href=\"https:\/\/github.blog\/changelog\/2026-06-09-upcoming-breaking-changes-for-npm-v12\/\">anunciado<\/a> lo que dijo son \u00abcambios importantes\u00bb que llegar\u00e1n a la versi\u00f3n 12 de npm, uno de los cuales desactiva los scripts de instalaci\u00f3n de forma predeterminada para combatir las amenazas a la cadena de suministro de software.<\/p>\n<p>Los cambios tienen como objetivo combatir las t\u00e9cnicas de ataque que abusan del comando \u00abnpm install\u00bb para desencadenar la ejecuci\u00f3n de c\u00f3digo malicioso utilizando ganchos del ciclo de vida de npm. \u00abNpm install\u00bb se utiliza para descargar e instalar todas las dependencias necesarias para un proyecto Node.js. La versi\u00f3n 12 est\u00e1 prevista para su lanzamiento el pr\u00f3ximo mes.<\/p>\n<p>Al describir los scripts del ciclo de vida en el momento de la instalaci\u00f3n como la \u00absuperficie de ejecuci\u00f3n de c\u00f3digo m\u00e1s grande en el ecosistema npm\u00bb, GitHub <a href=\"https:\/\/github.com\/orgs\/community\/discussions\/198547\">dicho<\/a> el comando \u00abnpm install\u00bb ejecuta scripts de cada dependencia transitiva, como resultado de lo cual un \u00fanico paquete comprometido en cualquier parte del \u00e1rbol de dependencias puede ejecutar c\u00f3digo arbitrario en una m\u00e1quina de desarrollo o en un ejecutor de CI.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/ai-cant-stop-d\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Ciberseguridad\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjPEV6-530TOlxG6PjrmdlY623wpBwduZ7t1HV6flcmO5R4q4AmfixDUzW0CrhlvMVNWbhvOIso-UDNTka4W_W9Chrdj_dglwBZwi7DuePM2IMIl-hfUYVIqBXgfpr_2619K8Gptb4LzwJ6gUbi7lWl2M8AFQJsHEaw63Q7tZ6708YGruiHrr0Y2W9YYxLQ\/s728-e100\/ThreatLocker-d.png\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>Al bloquear tales comportamientos, la idea es requerir la aprobaci\u00f3n expl\u00edcita del usuario antes de que la ejecuci\u00f3n del c\u00f3digo se inicie autom\u00e1ticamente durante la \u00abinstalaci\u00f3n npm\u00bb, en lugar de ser confiable de forma predeterminada. \u00abHacer la opci\u00f3n de ejecuci\u00f3n de script cierra ese camino y lo mantiene a un comando de distancia para los paquetes en los que conf\u00eda\u00bb, dijo GitHub.<\/p>\n<p>Los cambios se enumeran a continuaci\u00f3n:<\/p>\n<ul>\n<li>npm install ya no ejecutar\u00e1 scripts de preinstalaci\u00f3n, instalaci\u00f3n o postinstalaci\u00f3n desde dependencias a menos que est\u00e9n permitidos expl\u00edcitamente en el proyecto.<\/li>\n<li>npm install ya no resolver\u00e1 las dependencias de Git, ya sean directas o transitivas, a menos que se permita expl\u00edcitamente a trav\u00e9s de \u2013allow-git.<\/li>\n<li>npm install ya no resolver\u00e1 dependencias de URL remotas, como archivos tar https, a menos que se permita expl\u00edcitamente a trav\u00e9s de \u2013allow-remote.<\/li>\n<\/ul>\n<p>\u00abEsto incluye compilaciones nativas de node-gyp (es decir, un paquete con un enlace.gyp y sin un script de instalaci\u00f3n expl\u00edcito a\u00fan se bloquea, porque npm ejecuta una reconstrucci\u00f3n impl\u00edcita de node-gyp)\u00bb, dijo la subsidiaria propiedad de Microsoft sobre los cambios en el comportamiento predeterminado de \u00aballowScripts\u00bb. \u00abPreparar scripts desde git, las dependencias de archivos y enlaces se bloquean de la misma manera\u00bb.<\/p>\n<p>Al establecer \u00ab\u2013allow-git\u00bb en \u00abnone\u00bb de forma predeterminada, la configuraci\u00f3n cierra una ruta de ejecuci\u00f3n de c\u00f3digo donde el archivo de configuraci\u00f3n .npmrc de una dependencia de Git utilizado podr\u00eda anular el ejecutable de Git, incluso con <a href=\"https:\/\/www.nodejs-security.com\/blog\/npm-ignore-scripts-best-practices-as-security-mitigation-for-malicious-packages\">\u2013ignorar-scripts<\/a>una marca que evita que los paquetes especificados en un archivo package.json ejecuten autom\u00e1ticamente scripts de ciclo de vida integrados durante el proceso de instalaci\u00f3n.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/vpn-threat-report-m\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Ciberseguridad\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEhFlTC7RrRZGiFAgASS0noWSL0qsQGFVp8-Hvuw9yp3X3VKRuTcb5SsPX09wJzrdIM6pu1_5lS4EeZp7Sx4iYBpNJkrGnpr08yyaS1HQ5_5TxaCsP6O0OtHNuOkesn6CbNjao1GPulCJk-uljYMSfMZfBYNrngpe669t7jlRn1FqiEnXhsFD1WVkpaYIVgh\/s728-e100\/ai-d.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>GitHub recomienda que los desarrolladores se preparen para estos cambios actualizando a npm 11.16.0 o posterior, ejecutando la instalaci\u00f3n normal y revisando las advertencias mostradas.<\/p>\n<p>\u00abUtilice npm aprobar-scripts \u2013allow-scripts-pending para ver qu\u00e9 paquetes tienen scripts, aprobar aquellos en los que conf\u00eda y confirmar el paquete.json actualizado\u00bb, agreg\u00f3. \u00abDespu\u00e9s de eso, s\u00f3lo los scripts que usted aprob\u00f3 seguir\u00e1n ejecut\u00e1ndose una vez que actualice. Todo lo que deje sin aprobar se detendr\u00e1\u00bb.<\/p>\n<p>A principios de este a\u00f1o, npm tambi\u00e9n introdujo \u00abmin-release-age\u00bb, una configuraci\u00f3n que le dice a npm que rechace cualquier versi\u00f3n de paquete publicada menos de un n\u00famero espec\u00edfico de d\u00edas como protecci\u00f3n contra paquetes maliciosos recientemente publicados.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>GitHub tiene anunciado lo que dijo son \u00abcambios importantes\u00bb que llegar\u00e1n a la versi\u00f3n 12 de npm, uno de los cuales desactiva los scripts de instalaci\u00f3n de forma predeterminada para combatir las amenazas a la cadena de suministro de software. Los cambios tienen como objetivo combatir las t\u00e9cnicas de ataque que abusan del comando \u00abnpm [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":752,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25,5],"tags":[233,249,3040,2315,2246,931,2700,52,277,36,2429,2696,250],"class_list":["post-1156","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-noticias","category-trending","tag-ataques","tag-cadena","tag-deshabilitara","tag-detener","tag-forma","tag-github","tag-instalacion","tag-los","tag-npm","tag-para","tag-predeterminada","tag-scripts","tag-suministro"],"_links":{"self":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts\/1156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/comments?post=1156"}],"version-history":[{"count":0,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts\/1156\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/media\/752"}],"wp:attachment":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/media?parent=1156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/categories?post=1156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/tags?post=1156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}