{"id":24728,"date":"2026-10-08T22:03:49","date_gmt":"2026-10-08T20:03:49","guid":{"rendered":"https:\/\/netsurit.com\/en-za\/?p=24728"},"modified":"2026-10-08T22:05:15","modified_gmt":"2026-10-08T20:05:15","slug":"ai-coding-fake-packages","status":"publish","type":"post","link":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/","title":{"rendered":"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"24728\" class=\"elementor elementor-24728\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8e64c05 e-flex e-con-boxed e-con e-parent\" data-id=\"8e64c05\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-12f02eb elementor-widget elementor-widget-html\" data-id=\"12f02eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<article id=\"ns-ai-coding\" aria-labelledby=\"ns-coding-title\">\n  <header class=\"ns-hero\">\n    <div class=\"ns-wrap ns-hero-grid\">\n      <div>\n        <h1 id=\"ns-coding-title\">AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?<\/h1>\n        <p class=\"ns-excerpt\">AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.<\/p>\n        <div class=\"ns-meta\"><span>9 min read<\/span><time class=\"ns-date\" datetime=\"2026-10-09\">9 October 2026<\/time><\/div>\n      <\/div>\n      <img loading=\"lazy\" decoding=\"async\" loading=\"lazy\" class=\"ns-hero-image\" src=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-cover-scaled.png\" alt=\"AI coding tools and the risks of unverified software packages.\" width=\"1200\" height=\"675\">\n    <\/div>\n  <\/header>\n\n  <div class=\"ns-wrap ns-layout\">\n    <div class=\"ns-body\">\n<p class=\"ns-byline\">By <a href=\"https:\/\/www.linkedin.com\/in\/louisdeklerk\/\"><strong>Louis de Klerk<\/strong><\/a>, Chief Technology Officer, Netsurit<\/p>\n<p>An AI coding assistant suggests a package that appears to solve a developer\u2019s problem. The name looks credible. The agent installs it, the tests pass and the new feature works. Yet nobody has checked whether the package came from the project they intended to trust.<\/p>\n<p>Sometimes the name the AI suggested did not exist when it first appeared in an answer. If an attacker registers that name and publishes malicious code under it, a future recommendation can lead a developer straight to the attacker\u2019s package. That is the risk behind AI coding fake packages: a plausible suggestion can become a software supply chain decision before anyone examines its source.<\/p>\n<p>I use coding agents myself. They save enough time that I would not want to return to the old workflow. That makes the small decisions they take on my behalf more important. An agent that can suggest a dependency, install it and continue building has moved the decision about trust much earlier in the development process.<\/p>\n<section id=\"ns-coding-1\" aria-labelledby=\"ns-coding-1-title\"><h2 id=\"ns-coding-1-title\">Main Takeaways<\/h2>\n<ul><li>AI coding tools sometimes recommend package names that do not exist in the expected software registry.<\/li><li>An attacker may register a repeatedly suggested name and wait for a developer or agent to install it.<\/li><li>Before a new dependency enters a trusted build, check its exact name, publisher, history, scripts, other dependencies and permissions.<\/li><li>Give coding agents a restricted workspace and an approved route for adding packages. Make the review meaningful at the point where external code enters the project.<\/li><\/ul>\n<\/section>\n<section id=\"ns-coding-2\" aria-labelledby=\"ns-coding-2-title\"><h2 id=\"ns-coding-2-title\">How does an AI tool invent a software package?<\/h2>\n<p>Developers routinely use third-party packages to avoid writing every component from scratch. A JavaScript developer might install one from npm; a Python developer might use PyPI. Those registries contain useful code, but a package name tells you very little about who published it or what it will do when installed.<\/p>\n<p>A <em>package hallucination<\/em> occurs when an AI coding tool recommends a package that is absent from the expected registry. It may blend the names of real libraries, draw on outdated information or produce a name that simply sounds right for the task.<\/p>\n<p>Researchers presenting at <a href=\"https:\/\/www.usenix.org\/conference\/usenixsecurity25\/presentation\/spracklen\">USENIX Security 2025<\/a> tested code-generating models and found average hallucinated-package rates of at least <strong>5.2% for the commercial models<\/strong> and <strong>21.7% for the open-source models<\/strong> in their experiments. They identified more than 205,000 unique invented package names. Those figures describe the models and testing conditions in the study; they do not mean that one in five packages installed by a business is malicious. They establish that invented names are a repeatable problem.<\/p>\n<p>The security risk emerges when someone else can publish code under one of those names. An attacker could identify a name that AI tools repeatedly recommend, register it and wait. The next developer who trusts the recommendation may install code the attacker controls. This has become known as <em>slopsquatting<\/em>.<\/p>\n<p>The package does not need to look obviously suspicious. If it appears in a routine change to a project\u2019s dependency list and the feature passes its tests, a reviewer may focus on the working feature rather than the identity of the new supplier of code.<\/p>\n<\/section>\n<section id=\"ns-coding-3\" aria-labelledby=\"ns-coding-3-title\"><h2 id=\"ns-coding-3-title\">How can a fake suggestion become a real incident?<\/h2>\n<p>Imagine a South African development team adding a reporting feature to an internal application. A coding agent finds a reference to a specialist file format and recommends a library with a convincing name. It installs the dependency, writes the integration and reports that the tests have passed.<\/p>\n<p>This is an illustrative scenario, not a reported Netsurit incident. Several outcomes are possible. A malicious install script might run immediately on a developer\u2019s machine or build server. Alternatively, the package might execute harmful code only when the application imports it. Depending on the access available in that environment, it could attempt to read source files, credentials or configuration, or connect to an external service.<\/p>\n<p>Real software supply chain incidents show why the installation step deserves care. Unit 42 has documented malicious package and build-tool activity involving install scripts and attempts to collect secrets. That <a href=\"https:\/\/unit42.paloaltonetworks.com\/sdlc-supply-chain\">research<\/a> demonstrates the consequences of trusting hostile code in a development environment; it is separate from the USENIX study of invented AI package names.<\/p>\n<p>The chain has several links: a model suggests a name, someone publishes code under it, an agent or developer retrieves it, and the code runs somewhere trusted. A team can interrupt that chain without giving up the coding agent. The key is to treat the agent\u2019s recommendation as a proposal that still needs verification.<\/p>\n<figure class=\"ns-graph\"><a href=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-graph-1-scaled.png\" target=\"_blank\" rel=\"noopener\" aria-label=\"View Four links in the chain at full size (opens in a new tab)\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-graph-1-scaled.png\" alt=\"Four links in a slopsquatting attack: AI invents a package name, an attacker publishes it, an agent installs it and the code runs.\" width=\"2560\" height=\"1481\" loading=\"lazy\"><\/a><figcaption>An invented package name becomes an attack when malicious code is published, installed and run in a trusted environment. <a href=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-graph-1-scaled.png\" target=\"_blank\" rel=\"noopener\">View full-size image<\/a>.<\/figcaption><\/figure>\n<\/section>\n<section id=\"ns-coding-4\" aria-labelledby=\"ns-coding-4-title\"><h2 id=\"ns-coding-4-title\">What should a developer check before installing a package?<\/h2>\n<p>Start with the <strong>exact package name<\/strong> in the expected registry. Then find the project\u2019s own documentation and confirm that it links to that same package. A similar name or a polished registry description is insufficient.<\/p>\n<p>Look at the publisher and project history. Who maintains the package? How long has it existed? Does its repository show meaningful development and releases? Has ownership changed recently? A brand-new registry entry claiming to represent a long-established tool calls for investigation.<\/p>\n<p>Next, examine what will run. Install and post-install scripts may execute before a developer has used the package in their application. Review what the package brings in through its own dependencies and whether its behaviour fits its stated purpose. Test an unfamiliar package in a restricted environment before it reaches a workstation or build pipeline with valuable credentials.<\/p>\n<p>Finally, record why the dependency was selected and which version was approved. Months later, the team should be able to explain why the application relies on that package. A software bill of materials helps identify what shipped, but it cannot establish that a malicious package was safe to install in the first place.<\/p>\n<p>These checks matter especially when the agent has access to cloud credentials, customer repositories or a continuous integration pipeline. The same package can present very different risks depending on where it runs.<\/p>\n<\/section>\n<section id=\"ns-coding-5\" aria-labelledby=\"ns-coding-5-title\"><h2 id=\"ns-coding-5-title\">What authority should a coding agent have?<\/h2>\n<p>An agent assigned to a reporting feature needs enough access to do the job. It does not automatically need every repository the organisation owns, production credentials or permission to introduce new third-party code into a trusted build.<\/p>\n<p>A project-specific workspace and limited credentials reduce the consequences if an agent makes a poor dependency choice. An approved package source, private mirror or review process can prevent a newly suggested public package from entering the build before somebody has checked it. Those controls also need upkeep: an approved package can change, and a previously trusted maintainer account can be compromised.<\/p>\n<p>The review point should be clear. Let an agent draft code and run tests in a restricted environment. Require a separate decision when it wants to add an external dependency to the trusted build or deploy a change. If developers must approve every harmless command, they will start clicking through prompts without reading them. Put their attention where a decision has lasting consequences.<\/p>\n<figure class=\"ns-graph\"><a href=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-graph-2-scaled.png\" target=\"_blank\" rel=\"noopener\" aria-label=\"View Before an agent installs anything at full size (opens in a new tab)\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-graph-2-scaled.png\" alt=\"Three controls for coding agents: a project-specific workspace with limited credentials, approved package sources and a separate review before trusted builds or production.\" width=\"2560\" height=\"1482\" loading=\"lazy\"><\/a><figcaption>Scope, enforced policy and meaningful review help control what a coding agent can install and where it can run. <a href=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-graph-2-scaled.png\" target=\"_blank\" rel=\"noopener\">View full-size image<\/a>.<\/figcaption><\/figure>\n<p>There is another route to the same installation problem. An attacker can place instructions in a README, issue description or web page that the agent reads while working. The instruction might tell the agent to install a particular package. <a href=\"https:\/\/cheatsheetseries.owasp.org\/cheatsheets\/Secure_Coding_with_AI_Cheat_Sheet.html\">OWASP<\/a> advises treating such repository and external content as untrusted input when an AI coding agent processes it. A hallucinated package name and a malicious instruction are different mechanisms, but either can lead an agent to fetch unwanted code.<\/p>\n<p>This is one reason the security of an agent depends on more than the model. Its tools, permissions, sources of information and execution environment determine what happens after a questionable suggestion. Netsurit\u2019s article on <a href=\"https:\/\/netsurit.com\/en-za\/ai-agent-platform-decisions\">AI agent platform decisions<\/a> explores how those architectural choices affect an organisation long after the first experiment.<\/p>\n<\/section>\n<section id=\"ns-coding-6\" aria-labelledby=\"ns-coding-6-title\"><h2 id=\"ns-coding-6-title\">Will these checks slow developers down?<\/h2>\n<p>Some checks take time, and that time should be spent on the decisions that carry real risk. Coding agents reduce the effort of producing a feature. They do not remove the need to understand a dependency that the organisation may support for years.<\/p>\n<p>The practical answer is to gather routine evidence automatically. A pipeline can flag a package that is new to the organisation, highlight install scripts, show publisher changes and compare the dependency against approved sources. A developer or security reviewer can then concentrate on the few decisions that require judgement.<\/p>\n<p>South African teams do not need a special version of this threat for it to matter locally. They use the same public registries, development tools and cloud build processes as teams elsewhere. A malicious dependency introduced during development can affect an application wherever its users and data are located.<\/p>\n<p>The question I would ask of any team adopting coding agents is simple: <strong>who verifies the external code the agent chooses, and at what point does that verification happen?<\/strong> If the answer is \u201cwhen someone notices it in the pull request\u201d, the review may already be too late for a package that executed during installation.<\/p>\n<p>Our whitepaper, <a href=\"https:\/\/go.netsurit.com\/whitepapers\/ai-code-you-can-trust\">AI Code You Can Trust<\/a>, is a useful next read for teams examining how AI-assisted development fits into their software security practices.<\/p>\n<\/section>\n<section class=\"ns-faq\" id=\"ns-coding-7\" aria-labelledby=\"ns-coding-7-title\"><h2 id=\"ns-coding-7-title\">Frequently asked questions<\/h2>\n<details><summary>Can AI coding tools really invent package names?<\/summary><p>Yes. Published research has observed coding models recommending names that were absent from the relevant package registry. A credible-looking name does not establish that a package exists or comes from a trustworthy publisher.<\/p><\/details>\n<details><summary>Is every new package suspicious?<\/summary><p>No. New packages can be legitimate. Their limited history does mean a team has less evidence to assess, so the publisher, code, scripts and reason for using the package deserve closer review.<\/p><\/details>\n<details><summary>Does pinning a dependency solve the problem?<\/summary><p>Pinning helps control which version is installed later. It does not make the first version chosen by the agent safe. Verify the package before its initial installation and continue monitoring it afterward.<\/p><\/details>\n<details><summary>Can an agent install packages safely in a sandbox?<\/summary><p>A restricted sandbox can limit the impact of an installation if its file access, credentials and network destinations are controlled. The dependency still needs a separate review before it enters a trusted build or production environment.<\/p><\/details>\n<details><summary>What is the most useful rule for a development team?<\/summary><p>Make every <strong>new external dependency<\/strong> an explicit review event. Support that review with registry and publisher checks, automated evidence gathering and a clear approval path.<\/p><\/details>\n<\/section>\n<section id=\"ns-coding-8\" aria-labelledby=\"ns-coding-8-title\"><h2 id=\"ns-coding-8-title\">The decision hidden inside the suggestion<\/h2>\n<p>An AI agent can find a useful library in seconds. By naming it, the agent has not established a chain of trust from the publisher to your application. Somebody still needs to decide whether that package belongs in your development environment and, eventually, in the software your organisation runs.<\/p>\n<p>Netsurit helps organisations bring security into their technology decisions and operations. If your team is introducing coding agents, <a href=\"https:\/\/netsurit.com\/en-za\/our-services\/netsurit-cyber-security-operations\">speak to Netsurit about your development environment and security controls<\/a> before a package recommendation becomes an unexamined installation.<\/p>\n<\/section>\n<div class=\"ns-cta\"><h3>AI Code You Can Trust<\/h3><a class=\"ns-button\" href=\"https:\/\/go.netsurit.com\/whitepapers\/ai-code-you-can-trust\">READ THE WHITEPAPER<\/a><\/div>\n    <\/div>\n\n    <aside class=\"ns-sidebar\" aria-label=\"Article navigation\">\n      <nav class=\"ns-toc\" aria-labelledby=\"ns-coding-toc-title\">\n        <h2 id=\"ns-coding-toc-title\">Table of Contents<\/h2>\n        <ol>\n<li><a href=\"#ns-coding-1\">Main Takeaways<\/a><\/li>\n<li><a href=\"#ns-coding-2\">How does an AI tool invent a software package?<\/a><\/li>\n<li><a href=\"#ns-coding-3\">How can a fake suggestion become a real incident?<\/a><\/li>\n<li><a href=\"#ns-coding-4\">What should a developer check before installing a package?<\/a><\/li>\n<li><a href=\"#ns-coding-5\">What authority should a coding agent have?<\/a><\/li>\n<li><a href=\"#ns-coding-6\">Will these checks slow developers down?<\/a><\/li>\n<li><a href=\"#ns-coding-7\">Frequently asked questions<\/a><\/li>\n<li><a href=\"#ns-coding-8\">The decision hidden inside the suggestion<\/a><\/li>\n<\/ol>\n      <\/nav>\n    <\/aside>\n  <\/div>\n\n  <section class=\"ns-related\" aria-labelledby=\"ns-coding-related-title\">\n    <div class=\"ns-wrap\">\n      <h2 id=\"ns-coding-related-title\">Related Topics<\/h2>\n      <div class=\"ns-related-grid\">\n        <a class=\"ns-related-card\" href=\"https:\/\/netsurit.com\/en-za\/how-can-you-adopt-ai-in-business-without-disrupting-operations\/\">\n          <img loading=\"lazy\" decoding=\"async\" class=\"ns-related-image\" src=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/How-Can-You-Adopt-AI-in-Business-Without-Disrupting-Operations-1024x576.jpg\" alt=\"How Can You Adopt AI in Business Without Disrupting Operations?\" width=\"1024\" height=\"576\" loading=\"lazy\">\n          <h3>How Can You Adopt AI in Business Without Disrupting Operations?<\/h3>\n        <\/a>\n        <a class=\"ns-related-card\" href=\"https:\/\/netsurit.com\/en-za\/ai-productivity-roi-beyond-personal-productivity\/\">\n          <img loading=\"lazy\" decoding=\"async\" class=\"ns-related-image\" src=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/05\/the-board-has-stopped-counting-pilots-cover-1024x576.webp\" alt=\"AI Productivity ROI Beyond Personal Productivity\" width=\"1024\" height=\"576\" loading=\"lazy\">\n          <h3>AI Productivity ROI Beyond Personal Productivity<\/h3>\n        <\/a>\n        <div class=\"ns-more\">\n          <h3>More from <span>Netsurit<\/span><\/h3>\n          <a href=\"https:\/\/go.netsurit.com\/whitepapers\/ai-code-you-can-trust\">AI Code You Can Trust<\/a>\n          <a href=\"https:\/\/netsurit.com\/en-za\/our-services\/netsurit-cyber-security-operations\">Cyber security services<\/a>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n<\/article>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It? AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds. 9 min read9 October 2026 By Louis de Klerk, Chief Technology Officer, Netsurit An AI coding assistant suggests [&hellip;]<\/p>\n","protected":false},"author":16,"featured_media":24727,"comment_status":"open","ping_status":"open","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"_acf_changed":false,"nf_dc_page":"","content-type":"","footnotes":""},"categories":[21],"tags":[],"class_list":["post-24728","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO Pro 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Netsurit\"\/>\n\t<meta name=\"google-site-verification\" content=\"5GWTTA4AhSisFxUP2NfFam7f7MuBpSYQyA8Ou3RMDrM\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO Pro (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Netsurit ZA\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"AI Coding Fake Packages | Supply Chain | Netsurit ZA\" \/>\n\t\t<meta property=\"og:description\" content=\"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-OG-Image.webp\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-OG-Image.webp\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-08T20:03:49+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-08T20:05:15+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Netsurit\/\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@netsurit\" \/>\n\t\t<meta name=\"twitter:title\" content=\"AI Coding Fake Packages | Supply Chain | Netsurit ZA\" \/>\n\t\t<meta name=\"twitter:description\" content=\"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@netsurit\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-OG-Image.webp\" \/>\n\t\t<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t\t<meta name=\"twitter:data1\" content=\"Netsurit\" \/>\n\t\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#article\",\"name\":\"AI Coding Fake Packages | Supply Chain | Netsurit ZA\",\"headline\":\"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?\",\"author\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/author\\\/netsurit\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/10\\\/AI-coding-tools-cover-scaled.png\",\"width\":2560,\"height\":1481,\"caption\":\"AI coding fake packages\"},\"datePublished\":\"2026-10-08T22:03:49+02:00\",\"dateModified\":\"2026-10-08T22:05:15+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#webpage\"},\"articleSection\":\"Blog\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/category\\\/blog\\\/#listItem\",\"name\":\"Blog\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/category\\\/blog\\\/#listItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/category\\\/blog\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#listItem\",\"name\":\"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#listItem\",\"position\":3,\"name\":\"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/category\\\/blog\\\/#listItem\",\"name\":\"Blog\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#organization\",\"name\":\"Netsurit ZA\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/07\\\/Netsurit-Logo-400-x-141-px.webp\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#organizationLogo\",\"width\":400,\"height\":141,\"caption\":\"Two red arrows pointing in opposite directions (up and down), suggesting expand\\\/collapse or resize controls.\"},\"image\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#organizationLogo\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Netsurit\\\/\",\"https:\\\/\\\/x.com\\\/netsurit\",\"https:\\\/\\\/instagram.com\\\/netsurit_\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/netsurit\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/author\\\/netsurit\\\/#author\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/author\\\/netsurit\\\/\",\"name\":\"Netsurit\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/566be71324c1e0a3b6a9815e969f73d17ad645a60df53771437900fd2b6b8047?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Netsurit\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#webpage\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/\",\"name\":\"AI Coding Fake Packages | Supply Chain | Netsurit ZA\",\"description\":\"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/author\\\/netsurit\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/author\\\/netsurit\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/10\\\/AI-coding-tools-cover-scaled.png\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#mainImage\",\"width\":2560,\"height\":1481,\"caption\":\"AI coding fake packages\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/ai-coding-fake-packages\\\/#mainImage\"},\"datePublished\":\"2026-10-08T22:03:49+02:00\",\"dateModified\":\"2026-10-08T22:05:15+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#website\",\"url\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/\",\"name\":\"Netsurit ZA\",\"alternateName\":\"Netsurit South Africa\",\"description\":\"IT Support and Consulting\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/netsurit.com\\\/en-za\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO Pro -->\r\n\t\t<title>AI Coding Fake Packages | Supply Chain | Netsurit ZA<\/title>\n\n","aioseo_head_json":{"title":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","description":"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.","canonical_url":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"5GWTTA4AhSisFxUP2NfFam7f7MuBpSYQyA8Ou3RMDrM","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#article","name":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","headline":"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?","author":{"@id":"https:\/\/netsurit.com\/en-za\/author\/netsurit\/#author"},"publisher":{"@id":"https:\/\/netsurit.com\/en-za\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-cover-scaled.png","width":2560,"height":1481,"caption":"AI coding fake packages"},"datePublished":"2026-10-08T22:03:49+02:00","dateModified":"2026-10-08T22:05:15+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#webpage"},"isPartOf":{"@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#webpage"},"articleSection":"Blog"},{"@type":"BreadcrumbList","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/#listItem","position":1,"name":"Home","item":"https:\/\/netsurit.com\/en-za\/","nextItem":{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/category\/blog\/#listItem","name":"Blog"}},{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/category\/blog\/#listItem","position":2,"name":"Blog","item":"https:\/\/netsurit.com\/en-za\/category\/blog\/","nextItem":{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#listItem","name":"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?"},"previousItem":{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#listItem","position":3,"name":"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?","previousItem":{"@type":"ListItem","@id":"https:\/\/netsurit.com\/en-za\/category\/blog\/#listItem","name":"Blog"}}]},{"@type":"Organization","@id":"https:\/\/netsurit.com\/en-za\/#organization","name":"Netsurit ZA","url":"https:\/\/netsurit.com\/en-za\/","logo":{"@type":"ImageObject","url":"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-Logo-400-x-141-px.webp","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#organizationLogo","width":400,"height":141,"caption":"Two red arrows pointing in opposite directions (up and down), suggesting expand\/collapse or resize controls."},"image":{"@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#organizationLogo"},"sameAs":["https:\/\/www.facebook.com\/Netsurit\/","https:\/\/x.com\/netsurit","https:\/\/instagram.com\/netsurit_","https:\/\/www.linkedin.com\/company\/netsurit"]},{"@type":"Person","@id":"https:\/\/netsurit.com\/en-za\/author\/netsurit\/#author","url":"https:\/\/netsurit.com\/en-za\/author\/netsurit\/","name":"Netsurit","image":{"@type":"ImageObject","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/566be71324c1e0a3b6a9815e969f73d17ad645a60df53771437900fd2b6b8047?s=96&d=mm&r=g","width":96,"height":96,"caption":"Netsurit"}},{"@type":"WebPage","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#webpage","url":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/","name":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","description":"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/netsurit.com\/en-za\/#website"},"breadcrumb":{"@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#breadcrumblist"},"author":{"@id":"https:\/\/netsurit.com\/en-za\/author\/netsurit\/#author"},"creator":{"@id":"https:\/\/netsurit.com\/en-za\/author\/netsurit\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/10\/AI-coding-tools-cover-scaled.png","@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#mainImage","width":2560,"height":1481,"caption":"AI coding fake packages"},"primaryImageOfPage":{"@id":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/#mainImage"},"datePublished":"2026-10-08T22:03:49+02:00","dateModified":"2026-10-08T22:05:15+02:00"},{"@type":"WebSite","@id":"https:\/\/netsurit.com\/en-za\/#website","url":"https:\/\/netsurit.com\/en-za\/","name":"Netsurit ZA","alternateName":"Netsurit South Africa","description":"IT Support and Consulting","inLanguage":"en-US","publisher":{"@id":"https:\/\/netsurit.com\/en-za\/#organization"}}]},"og:locale":"en_US","og:site_name":"Netsurit ZA","og:type":"article","og:title":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","og:description":"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.","og:url":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/","og:image":"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-OG-Image.webp","og:image:secure_url":"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-OG-Image.webp","og:image:width":1200,"og:image:height":628,"article:published_time":"2026-10-08T20:03:49+00:00","article:modified_time":"2026-10-08T20:05:15+00:00","article:publisher":"https:\/\/www.facebook.com\/Netsurit\/","twitter:card":"summary_large_image","twitter:site":"@netsurit","twitter:title":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","twitter:description":"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.","twitter:creator":"@netsurit","twitter:image":"https:\/\/netsurit.com\/en-za\/wp-content\/uploads\/sites\/2\/2026\/07\/Netsurit-OG-Image.webp","twitter:label1":"Written by","twitter:data1":"Netsurit","twitter:label2":"Est. reading time","twitter:data2":"10 minutes"},"aioseo_meta_data":{"post_id":"24728","title":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","description":"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.","keywords":null,"keyphrases":{"focus":{"keyphrase":"AI coding fake packages","score":0,"analysis":[]},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":"AI Coding Fake Packages | Supply Chain | Netsurit ZA","og_description":"AI coding tools can invent package names that attackers later register. Learn how South African teams can verify dependencies before they enter trusted builds.","og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"limit_modified_date":false,"created":"2026-10-08 19:59:16","updated":"2026-10-08 22:03:32","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"breadcrumb_settings":null,"seo_analyzer_scan_date":"2026-10-08 20:05:23","reviewed_by":"0","focus_keyword":"AI coding fake packages","additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/netsurit.com\/en-za\/\" title=\"Home\">Home<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/netsurit.com\/en-za\/category\/blog\/\" title=\"Blog\">Blog<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\tAI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?\n<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/netsurit.com\/en-za\/"},{"label":"Blog","link":"https:\/\/netsurit.com\/en-za\/category\/blog\/"},{"label":"AI Coding Fake Packages: Who Checks the Name Before an Agent Installs It?","link":"https:\/\/netsurit.com\/en-za\/ai-coding-fake-packages\/"}],"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","yoast_noindex":false,"_links":{"self":[{"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/posts\/24728","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/comments?post=24728"}],"version-history":[{"count":4,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/posts\/24728\/revisions"}],"predecessor-version":[{"id":24732,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/posts\/24728\/revisions\/24732"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/media\/24727"}],"wp:attachment":[{"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/media?parent=24728"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/categories?post=24728"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netsurit.com\/en-za\/wp-json\/wp\/v2\/tags?post=24728"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}