AI and Security: A Conversation on Trust and Resilience
Exploring the Intersection of Artificial Intelligence and Cybersecurity Exploring the Intersection of Artificial Intelligence and Cybersecurity Artificial Intelligence Blog | Dell
Exploring the Intersection of Artificial Intelligence and Cybersecurity Exploring the Intersection of Artificial Intelligence and Cybersecurity Artificial Intelligence Blog | Dell
Shopping for the perfect tech gift can be overwhelming, but Dell’s got you covered with options and our Price Match Guarantee. Shopping for the perfect tech gift can be overwhelming, but Dell’s got you covered with options and our Price Match Guarantee. Dell Premium Blog | Dell
Discover how leaders can stay ahead in the evolving cybersecurity landscape with insights on post-quantum, AI, and resilient strategies for the future. Discover how leaders can stay ahead in the evolving cybersecurity landscape with insights on post-quantum, AI, and resilient strategies for the future. Cyber Resilience Blog | Dell
Dell and NVIDIA showcase innovations to accelerate agentic AI and enable secure government AI deployments at NVIDIA GTC this week. Dell and NVIDIA showcase innovations to accelerate agentic AI and enable secure government AI deployments at NVIDIA GTC this week. AI Solutions Blog | Dell
Take IT performance to new heights with Dell PowerEdge and latest NVIDIA AI infrastructure. Take IT performance to new heights with Dell PowerEdge and latest NVIDIA AI infrastructure. PowerEdge Blog | Dell
From 6G development to AI-RAN deployment, Dell empowers telecoms from the developer’s desktop to the Edge and the data center. From 6G development to AI-RAN deployment, Dell empowers telecoms from the developer’s desktop to the Edge and the data center. Telecommunications Blog | Dell
Dell and Nutanix now offer a simple, secure path to enterprise AI. See how we’re accelerating your generative AI journey. Dell and Nutanix now offer a simple, secure path to enterprise AI. See how we’re accelerating your generative AI journey. AI Solutions Blog | Dell
Discover how The Guthrie Clinic is using the Dell AI Factory with NVIDIA to transform rural healthcare, enhancing patient care and operational efficiency. Discover how The Guthrie Clinic is using the Dell AI Factory with NVIDIA to transform rural healthcare, enhancing patient care and operational efficiency. Customer Blog | Dell
Named one of Texas’ Most Reputable Companies, Dell powers the Lone Star State with AI, education and innovation. Named one of Texas’ Most Reputable Companies, Dell powers the Lone Star State with AI, education and innovation. Awards Blog | Dell
Bridge the gap between AI strategy and execution. Join Dell and NVIDIA at ODSC West for powerful insights and hands-on experience. Bridge the gap between AI strategy and execution. Join Dell and NVIDIA at ODSC West for powerful insights and hands-on experience. Artificial Intelligence Blog | Dell
Inside the Dell AI Data Platform Event Inside the Dell AI Data Platform Event Launch Blog | Dell
Unlock IT flexibility. Dell APEX combines subscription and pay-per-use models for ultimate scalability and cost control. Read more. Unlock IT flexibility. Dell APEX combines subscription and pay-per-use models for ultimate scalability and cost control. Read more. APEX Blog | Dell
Explore the latest updates to Dell AIOps and its AIOps Assistant—now with context awareness, PowerStore agent and smarter IT insights. Explore the latest updates to Dell AIOps and its AIOps Assistant—now with context awareness, PowerStore agent and smarter IT insights. Observability Blog | Dell
Dell is committed to working with the open source community to make AI more accessible, efficient and impactful. Read more… Dell is committed to working with the open source community to make AI more accessible, efficient and impactful. Read more… AI Solutions Blog | Dell
When Christian Grobmeier went to help his son with a Minecraft problem, he found the game displaying a warning: “We are suffering from a security hole from Log4J, please be careful and update immediately.” I stared at the screen and told my son, ‘I’m sorry, it’s my fault.’ Christian Grobmeier, Log4j maintainer This is the untold story of how one maintainer and the Log4j team navigated a crisis that exposed critical gaps in our digital infrastructure and demonstrated the importance of open source security and sustainability. Now, initiatives like the GitHub Secure Open Source Fund are working to make sure it never happens again. It all started a few hours earlier on a cold November day, when Christian, who is a maintainer of the open source project Log4j, planned to spend time playing games with his son. Instead, he found himself staring at his phone, watching notifications pile up in his inbox—10, then 20 emails flooding in. When he saw the words “remote code execution,” his first thought was: “Maybe I’m on the wrong mailing list.” He wasn’t. And within hours, Christian would be at the center of what became known as Log4Shell: the most severe vulnerability in internet history, affecting billions of devices from Fortune 500 companies to Minecraft servers worldwide. “I told my son, I will play with you in like five minutes,” Christian recalls. “But he didn’t see me for the next couple of days.” Watch the full interview with Christian Grobmeier and Gregg Cochran, staff program manager at GitHub, above. 👆 The ubiquity that made Log4Shell a perfect storm Log4j is foundational software. This 20+ year-old Java logging library quietly powers system events in applications worldwide, like user logins and calculation results. But this small piece of software had quietly become a dependency in thousands of projects across the Java ecosystem. Log4j is such a small, tiny library. But everybody can use it in their software. Christian Grobmeier That ubiquity made Log4Shell devastating. Financial services companies relied on it for compliance auditing. E-commerce systems used it to track security incidents. Insurance companies needed it to monitor their software behavior. In a 2022 Tidelift survey, 49% of open source developers reported that their organization relies on Java—and most of them were using Log4j without even knowing it. When Christian realized the scope of the vulnerability, the weight hit him immediately: “Literally all Java applications in the world could be affected. Even 10% would be a major problem. This would be catastrophic.” A vulnerability that scored a perfect 10 Log4Shell reveals how a seemingly innocent feature became an attack vector. Log4j used Java’s Naming and Directory Interface (JNDI) to provide flexibility, allowing developers to load software components from remote servers. But the library didn’t validate whether JNDI lookup strings were coming from trusted sources. “How can a string break the internet?” Christian asks. The exploitation was frighteningly simple. An attacker could input a malicious JNDI string into any application field that gets logged—a username field, a search box, even a Minecraft chat message—and execute remote code on the target system. jndi:<protocol>://<server-name>:<port>/<path-to-object> “You don’t even need to have special knowledge,” Christian notes. “You just run around and push the string wherever you want it.” The Common Vulnerability Scoring System (CVSS) gave Log4Shell a perfect 10: the highest possible score. “The first time I heard about this score, I thought, maybe it’s not so bad,” Christian remembers. “And then after a couple of days, I thought, yeah, maybe we should extend this to a score of 15 or 20.“ The human cost of maintaining critical infrastructure The personal toll on maintainers during the Log4Shell crisis reveals the hidden human cost of our software supply chain. Christian and his team, mostly volunteers, suddenly found themselves responsible for patching a vulnerability affecting half the internet. The pressure was immense and deeply personal. Some of us stopped sleeping. We all felt that either we fix it right now in the next few days, or we close this project. Christian Grobmeier Fixing the initial vulnerability led to the discovery of additional issues, creating what Christian describes as “a bag of water with a hole. When you patch the hole, you see another one.” Meanwhile, the community response was mixed. “On the one hand, you have people who really hate you, and on the other hand, you have people who are really behind you,” Christian explains. Perhaps most telling: Nobody stops in to check on you. They check on the project. There’s also nobody standing up and saying, ‘hey, thank you for the good work you’re doing to remediate this issue.’ Christian Grobmeier How the GitHub Secure Open Source Fund is strengthening security The Log4Shell incident highlighted a critical gap in open source security: Maintainers often lack the training and resources to build security into their projects from the ground up. This realization sparked initiatives like the GitHub Secure Open Source Fund, which provides both funding and security training to critical open source projects. The fund has been effective and efficient as a form of proactive protection, pooled resources, and shared responsibility. Think of it as “insurance” for the open source supply chain—helping make the digital ecosystem safer and reducing risks that could impact billions of users. Christian participated in the GitHub Secure Open Source Fund security training program, and the impact was transformative. The training didn’t just provide technical knowledge—it shifted his perspective. Christian explains, “With this training, developers are no longer the weakest link. Instead, they’re the first line of defense.” This change in mindset is crucial. As Christian puts it: Ignorance is by far the worst and most critical security hole. It will basically break all software. Christian Grobmeier When asked if the GitHub Secure Open Source Fund training could have prevented Log4Shell, Christian is direct: “If this training had existed five years ago, maybe Log4Shell wouldn’t be here today.” Technical lessons: Building security by default The Log4Shell incident taught the industry several critical lessons about secure development practices: 1. Validate
Cybersecurity Awareness Month is a reminder that in today’s threat landscape, attackers don’t just aim to break in — they aim to break your ability to recover. Cybersecurity Awareness Month is a reminder that in today’s threat landscape, attackers don’t just aim to break in — they aim to break your ability to recover. Cyber Resilience Blog | Dell
We started building our accessibility governance program in 2022 when we adopted accessibility as a GitHub Engineering Fundamental, along with availability and security. Since then, we’ve continued to optimize and scale accessibility governance processes. This post explains how GitHub Copilot empowered an accessibility program manager to build a working prototype of a critical accessibility governance process improvement and enlist engineering resources to move it from prototype to production in record time. Context The primary construct of our accessibility governance program is services: A service may represent an entire website, an entire application, or a collection of pages, features, or backend functionality. The accessibility compliance of each service is tracked and visible to program leads. The compliance status for each service is updated weekly and service owners are notified of changes. The challenge When new services are added or the compliance status of existing services is changed, service owners are notified. However, the problem is that we did not have an effective mechanism to prompt service owners to plan, schedule, and complete the work required to reach compliance. This shortcoming had the following consequences: Service owners sometimes delayed accessibility remediation work, extending potential negative impacts for users with disabilities. Leadership could not quantify and manage accessibility compliance risk due to the lack of target dates for remediation. The solution We used GitHub Copilot to automate a workflow that increases accountability for service owners, increases visibility for leadership, and reduces barriers for users with disabilities. Our workflow now: Uses GitHub Actions to auto-create GitHub Issues that track accessibility remediation in service repositories when a service falls out of compliance. Includes all relevant information and guidance for service owners within remediation issues. Cross-references remediation issues with a GitHub Projects board that provides a global view for program managers and leadership. Syncs assignees between remediation issues and the project board. Mentions stakeholders for transparency without repo spam. Auto-closes remediation issues when services are acceptable. How Copilot changed the game The traditional approach to building an internal automation like this would have meant drafting detailed requirements, prioritizing them into a team backlog, waiting for engineering capacity, and cycling through multiple sprint iterations before we saw working end‑to‑end value. That could take weeks, if not longer. Instead, we spent five to six hours in direct conversation with Copilot, rapidly prototyping and testing ideas. Our working loop was intentionally lightweight. For each iteration, we roughly followed this pattern: Framed a single rule in plain language (e.g., detecting sustained non-compliance and ensuring an issue existed or was updated with current context). Asked Copilot to scaffold or adjust code (e.g., new helper, data parsing tweak, API refinement) instead of writing everything from scratch. Used a small synthetic fixture of accessibility compliance snapshots (e.g., initial drop, continued drop, recovery) to exercise the logic locally. Reviewed the output (e.g., issue body, labels, assignees) and refined prompts to tighten naming, thresholds, or branching. Added guardrails: idempotency (i.e., skip if a valid issue was already open), simple dampening to avoid flip‑flop closures, and defensive handling for incomplete data. Logged high‑level decisions (e.g., “updated existing issue” vs “no action – compliant”) to quickly verify intent. Re-ran the fixture (plus a variation) to confirm no regressions, then commit and move to the next rule. Because each iteration was scoped to a single behavior, Copilot’s suggestions stayed relevant and we avoided big refactors. When new edge cases emerged, like transient score dips or duplicate issue creation due to renamed services, we added another short loop instead of scheduling a meeting. This rapid cadence enabled us to converge on something production‑ready without a formal project plan. From prototype to production We first built a quick prototype to reliably detect a non‑compliant service, create or update a remediation issue, and keep ownership visible. We also wanted to prove we could achieve this without any human triage. The initial goal was a controlled rollout to a small set of services in a staging environment with historically known volatility. This way we could watch behavior under real conditions before rebuilding the workflow for broad deployment in a production environment. Our planned rollout path was incremental: Prototype using a personal access token in a staging environment. Observe a handful of test weekly cycles in staging with mock service repositories and adjust thresholds or labels. Refactor the code and migrate to a GitHub App for proper security and scoped permissions. Deploy to production and roll out to all services that we track for accessibility compliance. Formalize governance reporting once noise was minimized. To validate, we recorded a concise end‑to‑end demo showing an input change triggering automatic issue creation, cross‑linking, assignee sync, and subsequent update on a repeated failure. That artifact gave stakeholders the ability to evaluate the full experience asynchronously. The reaction was decisive. Seeing live issues appear with clean structure and traceability accelerated approval to move beyond the prototype stage. We secured engineering partnership to productionize the flow, established a sandbox environment for hardening, and began implementing the GitHub App version with appropriate security and scale considerations. The real impact The impact came from two layers: the automation we introduced and the way Copilot changed who could build and iterate on it. Automation outcomes: Remediation issues now appear (or update) promptly instead of waiting on manual triage, allowing service owners to immediately understand the policy requirements to resolve those issues and to hold themselves accountable when exceptions are requested. Ownership, status, and cross-links live in one place, giving leadership a trustworthy snapshot without ad‑hoc spreadsheets or pings. This also strengthens the partnership between accessibility program owners and engineering teams. Duplicate or stale outreach dropped because idempotent logic and dampening prevent noisy close and reopen churn. Governance effort shifted from clerical tracking to higher‑value analysis of systemic accessibility patterns, and enabled tighter governance controls. Copilot-enabled delivery outcomes: A domain expert built the prototype, allowing engineers to stay focused on their critical roadmap work. Reduced context-switching for engineering. Partnership time was spent on security, scale, and production hardening instead of basic scaffolding.
In a video game, a single upgrade enhances your abilities, while combining multiple can create an unstoppable power-up. In the world of software development, this combined power does something similar: At GitHub, we believe it can empower developers with an incredible force to tackle any challenge, whether that’s fixing a critical bug, adding a new feature, or shipping your release to production. My recent quest “Stay a while and listen,” as the old Diablo line goes. One morning, while on a walk, I received an urgent call. A critical feature on a website I collaborate on was displaying errors. This happened just before a high-visibility demo. I was miles from my laptop, and a traditional fix seemed hours away. That would be far too late to address this immediate need. Rolling back wasn’t an option, as it would remove functionality vital for the presentation. The only tool I had available was my cell phone. Instead of rushing home, I realized I could leverage two powerful GitHub features: GitHub Copilot coding agent and the GitHub Mobile app. I could quickly create an issue on mobile and delegate the problem to Copilot, in order to expedite a resolution. From GitHub Mobile, I scanned recent pull requests and identified a likely culprit: a pull request that added markdown rendering and a rich text editor. I created a new issue, describing the problem and referencing the suspicious pull requests, while also relying on my repository’s copilot-instructions to help guide the agent. With a few taps, I assigned the issue to GitHub Copilot coding agent. Just six minutes later, a notification appeared on GitHub Mobile. GitHub Copilot had generated a pull request with a fix! I reviewed it immediately from my phone. It was a clear, simple solution to the problem. Leveraging existing workflows, I could even test the fix on a preview branch right from my mobile device. Satisfied, I approved the pull request, which was deployed to production through automated workflows managed with GitHub Actions in my repository. By the time I reached my car, the director confirmed the issue was resolved, and they were ready to proceed with their demo. This experience, all managed from my phone, revealed a powerful capability within the GitHub Platform. Combining these two features—GitHub Copilot coding agent and GitHub Mobile—unlocked a new ability for me, and prompted me to explore what other combinations within the platform could further power-up my work. Here is a view from my phone using the GitHub Mobile app after reviewing the pull request and approving. We see a summary of Copilot’s fixes for the issue. Using the right tool at the right time It’s important to clarify that I’m not suggesting you delegate all development to Copilot from your mobile device, nor that every fix can be approved instantly from your phone. However, my experience highlights a crucial point: having the right tools for the right situation makes all the difference. GitHub Copilot as an AI pair programmer is a game-changer. By incorporating GitHub Copilot coding agent and GitHub Mobile into my workflow, alongside existing features like GitHub Issues and GitHub Actions, I’ve discovered a new level of efficiency. Here’s how you can gain this same power-up. Keys to unlock this power-up Key 1: Leverage instructions files There is a plethora of knowledge available on how you can effectively use GitHub Copilot. One area you’ll certainly come across is custom instructions for GitHub Copilot. These instructions are the guidelines and rules that can influence the results you get from Copilot. A well-defined set of instructions can go a long way. In my scenario, I used repository custom instructions to give Copilot additional context for understanding important information about my repository. This included the core purpose of the repository, the tech stack used, architecture constraints, coding standards, testing strategy, dependency management, observability, documentation, error handling, and more. It’s important to define the things that are important for GitHub Copilot to have and to understand about your project. For me, identifying things like directory structure, coding standards, and project dependencies were important for identifying a fix with less churn. Custom instructions are written using markdown and including them provide specific guidance to GitHub Copilot Coding Agent, Copilot Chat, and Copilot code review. It’s important to note that instructions in this file apply to all chat requests for the repository. This file exists in the .github directory in your repository right off of the root level. EXAMPLE: Here’s an example of an instructions file you might see in the .github/copilot-instructions.md file. Remember to tailor these to your project. # Copilot Instructions – Use Next.js App Router with React and TypeScript across the project. – Use pnpm for all package management commands (not npm or yarn). – Use Tailwind CSS v4 with a mobile-first approach; enhance with sm:/md:/lg:/xl: as needed. – Prefer shadcn/ui components before creating new UI; place shadcn/ui in src/components/ui and shared components in src/components/shared. – Always use next/link for internal navigation and next/image for images. – Prefer server components by default; add “use client” only when needed (event handlers, browser APIs). – Implement server actions where appropriate; place them in src/lib/actions. – Put utilities in src/utils and Supabase utilities in src/utils/supabase; define shared types in src/types. – Write tests with Vitest for critical business logic and components; place tests in __tests__ directories. – Follow Next.js performance best practices and implement proper error boundaries and error handling. – Use environment variables (NEXT_PUBLIC_ for client exposure); keep secrets server-side only. – Use Vercel for deploys and GitHub Actions for CI/CD with pnpm scripts (pnpm dev/build/test). – Keep code idiomatic: functional components + hooks, async/await for async, and idiomatic Next.js/React patterns. ## Folder structure reference (high-level) “`text . ├─ app/ # Next.js App Router: route groups, page.tsx, layout.tsx, loading.tsx, error.tsx, route.ts ├─ public/ # Static assets served at / ├─ src/ │ ├─ components/ │ │ ├─ ui/ # shadcn/ui components │ │ └─ shared/ # Shared app-specific components │ ├─ lib/ │ │ └─
In September, we experienced three incidents that resulted in degraded performance across GitHub services. September 15 17:55 UTC (lasting 25 minutes) On September 15, 2025, between 17:55 and 18:20 UTC, Copilot experienced degraded availability for the majority of the features. This was due a partial deployment of a feature flag to a global rate limiter. The flag triggered behavior that unintentionally limited 100% of requests, returning 403 errors. The issue was resolved by reverting the feature flag which resulted in immediate recovery. The root cause of the incident was from an undetected edge case in our rate limiting logic. The flag was meant to scale down rate limiting for a subset of users, but unintentionally put our rate limiting configuration into an invalid state. The issue has been resolved, and we are enhancing system resilience by adding traffic anomaly monitors for early issue detection and increasing coverage of rate limit scaling tests to strengthen pre-production validation. September 24 14:02 UTC (lasting 50 minutes) On September 23, 2025, between 15:29 UTC and 17:38 UTC, and also on September 24, 2025, between 14:02 UTC and 15:12 UTC, email deliveries were delayed, resulting in significant delays for most types of email notifications. While the overall incident impact from the two incidents totaled ~130 minutes, the peak delays experienced by customers was ~50 minutes. This occurred due to an unusually high volume of traffic, which caused resource contention on some of our outbound email servers. We have updated the configuration to better allocate capacity when there is a high volume of traffic and are also updating our monitors to improve our detection capabilities. September 29 16:26 UTC (lasting 67 minutes) On September 29, 2025, between 16:26 UTC and 17:33 UTC, the Copilot API experienced a partial degradation, causing intermittent erroneous 404 responses for an average of 0.2% of GitHub MCP server requests, peaking at times around 2% of requests. The issue stemmed from an upgrade of an internal dependency, which exposed a misconfiguration in the service. We resolved the incident by rolling back the upgrade to address the misconfiguration. We fixed the configuration issue and will improve documentation and rollout process to prevent similar issues. Please follow our status page for real-time updates on status changes and post-incident recaps. To learn more about what we’re working on, check out the GitHub Engineering Blog. The post GitHub Availability Report: September 2025 appeared first on The GitHub Blog. Company news, News & insights, GitHub Availability Report The GitHub Blog
Two decades after Linus’s first git commit, contributors from around the world gathered at GitHub HQ in San Francisco—not just to reflect on Git’s history, but to imagine its future. Git Merge 2025 marked 20 years of Git with technical talks, community collaboration, and the kind of hallway chats you can’t capture in slides. More than 100 people joined us in person, and over 600 tuned in online. Day 1: Talks for everyone From deep dives into Git internals to beginner-friendly sessions on creative workflows, this year’s program offered something for everyone. We heard from maintainers, educators, hobbyists, and even a high school student, sharing how Git shapes their work and learning. Speakers joined both in person and remotely from around the globe, making this one of our most accessible and inclusive Git Merge events yet. Attendees gathered in the GitHub HQ amphitheater during Git Merge 2025. Scott Chacon mixed comedy and code in a live demo of the GitButler CLI, while Google’s Martin von Zweigbergk unpacked how Jujutsu integrates with Git. Jacob Stopak reimagined Git learning through visualization and gamification, Steffen Hiller and Zoran Petrovic showcased new ways to visualize how repositories grow over time, and brian m. carlson unpacked what’s next for SHA-256 interoperability. Explore the playlist to watch these talks and more! Day 2: Community at the center The second day focused on collaboration with the annual Git Contributor’s Summit and an Unconference. Core maintainers and contributors met, both in person and remotely, to shape Git’s roadmap for the year ahead in one of our most remote-friendly gatherings yet. Git Contributor’s Summit During the summit, our Unconference opened the floor to everyone, with whiteboards filling quickly with ideas on branching strategies, Git education, and creative workflows. Thank you Git Merge 2025 wouldn’t have happened without this community. From the speakers who shared their work, to the contributors and volunteers who gave their time, to every attendee who showed up ready to learn and connect… thank you. Huge thanks to the GitHub teams behind the scenes who made the event seamless for attendees around the world. And a special thanks to our sponsors, GitButler and Google, for helping bring this year’s celebration to life. Until the next Git Merge, keep committing. <3 Catch up on the talks from Git Merge 2025 > The post 20 Years of Git, 2 days at GitHub HQ: Git Merge 2025 highlights 🎉 appeared first on The GitHub Blog. Git, Open Source, Git Merge The GitHub Blog