[{"data":1,"prerenderedAt":930},["ShallowReactive",2],{"/blog/celebrating-one-million-bug-bounties-paid":3,"navigation-en-us":144,"banner-en-us":572,"footer-en-us":582,"blog-post-authors-en-us-Heather Simpson":827,"blog-related-posts-en-us-celebrating-one-million-bug-bounties-paid":842,"blog-promotions-en-us":867,"next-steps-en-us":920},{"id":4,"title":5,"authors":6,"body":8,"category":123,"date":124,"description":125,"extension":126,"externalUrl":127,"faq":127,"featured":128,"heroImage":129,"meta":130,"navigation":131,"path":132,"seo":133,"slug":137,"stem":138,"tags":139,"template":142,"updatedDate":127,"__hash__":143},"blogPosts/en-us/blog/celebrating-one-million-bug-bounties-paid.md","Celebrating a million dollars in bounties paid",[7],"Heather Simpson",{"type":9,"value":10,"toc":115},"minimark",[11,15,18,23,32,36,39,42,57,60,83,87,95,98,101],[12,13,14],"p",{},"What started as a small, public vulnerability disclosure program awarding swag on qualified reports has grown into a thriving public bug bounty program that’s just paid out its millionth dollar in bounties and has seen contributions from hundreds of security researchers.",[12,16,17],{},"But it's about much more than a million dollars in bounty payments. Our journey to this point has been an iterative one, gaining strength and improving along the way as we grow, learn and receive feedback from the security research community. We believe our journey models our commitment to building a strong and secure product for our customers but also our dedication to the open source and security community; one where everyone can contribute and also reap the rewards.",[19,20,22],"h3",{"id":21},"swags-to-riches","Swags to riches",[12,24,25,26,31],{},"Knowing we needed to walk before we could run, the swag-awarding public vulnerability disclosure program we’d opened in 2014 quickly moved to a private, paid bounty program including a small pool of researchers, many of whom gained access through the previous vulnerability disclosure program. As we grew our security and appsec team and seasoned our processes around how we prioritize reports and how we collaborate internally to define and implement fixes, we quickly understood we’d want an open, public program where an entire community of security researchers could contribute. With the help of HackerOne, we built and ",[27,28,30],"a",{"href":29},"/blog/gitlab-hackerone-bug-bounty-program-is-public-today/","launched our public bug bounty program in December 2018",". We’re excited to have just celebrated our one year anniversary as a public program in December 2019.",[19,33,35],{"id":34},"so-what-does-a-million-dollars-in-bug-bounties-look-like","So, what does a million dollars in bug bounties look like?",[12,37,38],{},"• Our appsec team has worked with 768 different researchers since our PVD launched in 2014, including several of HackerOne’s all-time leading reporters.",[12,40,41],{},"• We’ve resolved 479 reports and made 400 of those reports public.",[12,43,44,45,50,51,56],{},"• 227 security researchers submitted multiple reports, meaning their first engagement with us was a positive one.\n",[27,46,49],{"href":47,"rel":48},"https://handbook.gitlab.com/handbook/security/#security-vision",[],"Transparency is key to security"," at GitLab. Transparency is also one of our core values and it's very important to our bug bounty program. You can see from our ",[27,52,55],{"href":53,"rel":54},"https://hackerone.com/gitlab",[],"disclosure policy"," that resolved reports are made public via issues on GitLab.com 30 days after releasing a fix. There are certain reports, however, that we cannot disclose due to sensitive information, either at the request of the reporter or to protect a customer.",[12,58,59],{},"Being transparent about our security issues allows customers to see the importance we place on securing our product. There are security issues in every tool and application out there – that’s a given. By disclosing full vulnerability information after 30 days, we give customers the time and information to understand the vulnerabilities that have been found and fixed, and to determine any potential impact in their environment. Being transparent about our environment helps us to grow and strengthen the trust customers place in us. Also publicly disclosing valid bugs reduces the threshold to contribute and helps security reporters build upon previous findings, which ultimately makes our product and customers more secure.",[12,61,62,67,68,72,73,77,78,82],{},[27,63,66],{"href":64,"rel":65},"https://handbook.gitlab.com/handbook/values/#iteration",[],"Iteration"," is one of GitLab’s core values. And our bug bounty program is no different. In the time since launching our public program at the end of 2018, we’ve taken feedback from our security research community and ",[27,69,71],{"href":70},"/blog/reducing-time-to-payout-and-launching-a-bug-bounty-anniversary-contest/","reduced the time to bounty payout",", moving part of the payout to the moment a report is triaged (on average, 5 days after the report is submitted), with the remainder of the payment happening once the report is resolved. Another improvement that’s been especially popular has been our decision to increase bounties for ",[27,74,76],{"href":75},"/blog/were-increasing-bounties-in-our-bug-bounty-program/","critical and high severity reports",". But, we know it's not all about bounties and payouts. Other less exciting, but key, foundational components of our program like ",[27,79,81],{"href":80},"/blog/what-we-learned-by-taking-our-bug-bounty-program-public/","triage, response and overall communications"," stay top of mind to ensure we’re keeping hackers engaged.",[19,84,86],{"id":85},"and-what-does-the-next-million-dollars-in-bounties-paid-hold","And, what does the next million dollars in bounties paid hold?",[12,88,89,90,94],{},"We were proud to see the results of our most recent ",[27,91,93],{"href":92},"/blog/bugs-bounties-and-cherry-browns/","bug bounty contest"," (held October 1-November 30, 2019) include 279 reports from 123 different individuals (89 of them coming from new reporters!). We aim to keep reporters incentivized, motivated, and engaged to find bugs on our platform. Our public bug bounty program is as important to the security of our product and company as any other program we run within our Security Team here at GitLab, so we will continue to look at how we can strengthen and improve our processes and program, but also invite the feedback of our security research community for changes and updates they’d like to see.",[12,96,97],{},"Thank you to the security research community for your expertise, your innovative findings and techniques, and for making our product stronger and more secure!",[12,99,100],{},"Happy Hacking!",[12,102,103,104,109,110],{},"Photo by ",[27,105,108],{"href":106,"rel":107},"https://www.pexels.com/@joey-theswampboi-442839",[],"Joey Theswampboi"," on ",[27,111,114],{"href":112,"rel":113},"https://pexels.com/",[],"Pexels",{"title":116,"searchDepth":117,"depth":117,"links":118},"",2,[119,121,122],{"id":21,"depth":120,"text":22},3,{"id":34,"depth":120,"text":35},{"id":85,"depth":120,"text":86},"security","2020-01-14","Our bug bounty program has grown, expanded and matured in the past 5 years. A lot can happen in a million dollars’ time.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680992/Blog/Hero%20Images/silhouette-of-crowd-people-1486628.jpg",{},true,"/en-us/blog/celebrating-one-million-bug-bounties-paid",{"title":5,"description":125,"ogTitle":5,"ogDescription":125,"noIndex":128,"ogImage":129,"ogUrl":134,"ogSiteName":135,"ogType":136,"canonicalUrls":134},"https://about.gitlab.com/blog/celebrating-one-million-bug-bounties-paid","https://about.gitlab.com","article","celebrating-one-million-bug-bounties-paid","en-us/blog/celebrating-one-million-bug-bounties-paid",[123,140,141],"bug bounty","open source","BlogPost","sgO-yG39yVFpICr6VW9KsRNglc0_FUBiT9zY_7aghj8",{"logo":145,"freeTrial":150,"sales":155,"login":160,"items":165,"search":492,"minimal":523,"duo":542,"switchNav":551,"pricingDeployment":562},{"config":146},{"href":147,"dataGaName":148,"dataGaLocation":149},"/","gitlab logo","header",{"text":151,"config":152},"Get free trial",{"href":153,"dataGaName":154,"dataGaLocation":149},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":156,"config":157},"Request a demo",{"href":158,"dataGaName":159,"dataGaLocation":149},"/sales/?contact-topic=request-demo","sales",{"text":161,"config":162},"Sign in",{"href":163,"dataGaName":164,"dataGaLocation":149},"https://gitlab.com/users/sign_in/","sign in",[166,195,295,300,414,470],{"text":167,"config":168,"menu":170},"Platform",{"dataNavLevelOne":169},"platform",{"type":171,"columns":172},"cards",[173,179,187],{"title":167,"description":174,"link":175},"The intelligent orchestration platform for DevSecOps",{"text":176,"config":177},"Explore our Platform",{"href":178,"dataGaName":169,"dataGaLocation":149},"/platform/",{"title":180,"description":181,"link":182},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":183,"config":184},"Meet GitLab Duo",{"href":185,"dataGaName":186,"dataGaLocation":149},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":188,"description":189,"link":190},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":191,"config":192},"Learn more",{"href":193,"dataGaName":194,"dataGaLocation":149},"/why-gitlab/","why gitlab",{"text":196,"left":131,"config":197,"menu":199},"Product",{"dataNavLevelOne":198},"solutions",{"type":200,"link":201,"columns":205,"feature":274},"lists",{"text":202,"config":203},"View all Solutions",{"href":204,"dataGaName":198,"dataGaLocation":149},"/solutions/",[206,230,253],{"title":207,"description":208,"link":209,"items":214},"Automation","CI/CD and automation to accelerate deployment",{"config":210},{"icon":211,"href":212,"dataGaName":213,"dataGaLocation":149},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[215,219,222,226],{"text":216,"config":217},"CI/CD",{"href":218,"dataGaLocation":149,"dataGaName":216},"/solutions/continuous-integration/",{"text":180,"config":220},{"href":185,"dataGaLocation":149,"dataGaName":221},"gitlab duo agent platform - product menu",{"text":223,"config":224},"Source Code Management",{"href":225,"dataGaLocation":149,"dataGaName":223},"/solutions/source-code-management/",{"text":227,"config":228},"Automated Software Delivery",{"href":212,"dataGaLocation":149,"dataGaName":229},"Automated software delivery",{"title":231,"description":232,"link":233,"items":238},"Security","Deliver code faster without compromising security",{"config":234},{"href":235,"dataGaName":236,"dataGaLocation":149,"icon":237},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[239,243,248],{"text":240,"config":241},"Application Security Testing",{"href":235,"dataGaName":242,"dataGaLocation":149},"Application security testing",{"text":244,"config":245},"Software Supply Chain Security",{"href":246,"dataGaLocation":149,"dataGaName":247},"/solutions/supply-chain/","Software supply chain security",{"text":249,"config":250},"Software Compliance",{"href":251,"dataGaName":252,"dataGaLocation":149},"/solutions/software-compliance/","software compliance",{"title":254,"link":255,"items":260},"Measurement",{"config":256},{"icon":257,"href":258,"dataGaName":259,"dataGaLocation":149},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[261,265,269],{"text":262,"config":263},"Visibility & Measurement",{"href":258,"dataGaLocation":149,"dataGaName":264},"Visibility and Measurement",{"text":266,"config":267},"Value Stream Management",{"href":268,"dataGaLocation":149,"dataGaName":266},"/solutions/value-stream-management/",{"text":270,"config":271},"Analytics & Insights",{"href":272,"dataGaLocation":149,"dataGaName":273},"/solutions/analytics-and-insights/","Analytics and insights",{"title":275,"type":200,"items":276},"GitLab for",[277,283,289],{"text":278,"config":279},"Enterprise",{"icon":280,"href":281,"dataGaLocation":149,"dataGaName":282},"Building","/enterprise/","enterprise",{"text":284,"config":285},"Small Business",{"icon":286,"href":287,"dataGaLocation":149,"dataGaName":288},"Work","/small-business/","small business",{"text":290,"config":291},"Public Sector",{"icon":292,"href":293,"dataGaLocation":149,"dataGaName":294},"Organization","/solutions/public-sector/","public sector",{"text":296,"config":297},"Pricing",{"href":298,"dataGaName":299,"dataGaLocation":149,"dataNavLevelOne":299},"/pricing/","pricing",{"text":301,"config":302,"menu":304},"Resources",{"dataNavLevelOne":303},"resources",{"type":200,"link":305,"columns":309,"feature":403},{"text":306,"config":307},"View all resources",{"href":308,"dataGaName":303,"dataGaLocation":149},"/resources/",[310,343,370],{"title":311,"items":312},"Getting started",[313,318,323,328,333,338],{"text":314,"config":315},"Install",{"href":316,"dataGaName":317,"dataGaLocation":149},"/install/","install",{"text":319,"config":320},"Quick start guides",{"href":321,"dataGaName":322,"dataGaLocation":149},"/get-started/","quick setup checklists",{"text":324,"config":325},"Learn",{"href":326,"dataGaLocation":149,"dataGaName":327},"https://university.gitlab.com/","learn",{"text":329,"config":330},"Product documentation",{"href":331,"dataGaName":332,"dataGaLocation":149},"https://docs.gitlab.com/","product documentation",{"text":334,"config":335},"Best practice videos",{"href":336,"dataGaName":337,"dataGaLocation":149},"/getting-started-videos/","best practice videos",{"text":339,"config":340},"Integrations",{"href":341,"dataGaName":342,"dataGaLocation":149},"/integrations/","integrations",{"title":344,"items":345},"Discover",[346,351,356,361,365],{"text":347,"config":348},"Customer success stories",{"href":349,"dataGaName":350,"dataGaLocation":149},"/customers/","customer success stories",{"text":352,"config":353},"Blog",{"href":354,"dataGaName":355,"dataGaLocation":149},"/blog/","blog",{"text":357,"config":358},"Demo Hub",{"href":359,"dataGaName":360,"dataGaLocation":149},"/demo-hub/","demo hub",{"text":362,"config":363},"The Source",{"href":364,"dataGaName":355,"dataGaLocation":149},"/the-source/",{"text":366,"config":367},"Remote",{"href":368,"dataGaName":369,"dataGaLocation":149},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":371,"items":372},"Connect",[373,378,383,388,393,398],{"text":374,"config":375},"GitLab Services",{"href":376,"dataGaName":377,"dataGaLocation":149},"/services/","services",{"text":379,"config":380},"Contribute",{"href":381,"dataGaName":382,"dataGaLocation":149},"https://contributors.gitlab.com","contribute",{"text":384,"config":385},"Community",{"href":386,"dataGaName":387,"dataGaLocation":149},"/community/","community",{"text":389,"config":390},"Forum",{"href":391,"dataGaName":392,"dataGaLocation":149},"https://forum.gitlab.com/","forum",{"text":394,"config":395},"Events",{"href":396,"dataGaName":397,"dataGaLocation":149},"/events/","events",{"text":399,"config":400},"Partners",{"href":401,"dataGaName":402,"dataGaLocation":149},"/partners/","partners",{"config":404,"title":407,"text":408,"link":409},{"background":405,"textColor":406},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":410,"config":411},"Read the latest",{"href":412,"dataGaName":413,"dataGaLocation":149},"/whats-new/","whats new",{"text":415,"config":416,"menu":418},"Company",{"dataNavLevelOne":417},"company",{"type":200,"columns":419},[420],{"items":421},[422,427,433,435,440,445,450,455,460,465],{"text":423,"config":424},"About",{"href":425,"dataGaName":426,"dataGaLocation":149},"/company/","about",{"text":428,"config":429,"footerGa":432},"Jobs",{"href":430,"dataGaName":431,"dataGaLocation":149},"/jobs/","jobs",{"dataGaName":431},{"text":394,"config":434},{"href":396,"dataGaName":397,"dataGaLocation":149},{"text":436,"config":437},"Leadership",{"href":438,"dataGaName":439,"dataGaLocation":149},"/company/team/e-group/","leadership",{"text":441,"config":442},"Handbook",{"href":443,"dataGaName":444,"dataGaLocation":149},"https://handbook.gitlab.com/","handbook",{"text":446,"config":447},"Investor relations",{"href":448,"dataGaName":449,"dataGaLocation":149},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":451,"config":452},"Trust Center",{"href":453,"dataGaName":454,"dataGaLocation":149},"/security/","trust center",{"text":456,"config":457},"AI Transparency Center",{"href":458,"dataGaName":459,"dataGaLocation":149},"/ai-transparency-center/","ai transparency center",{"text":461,"config":462},"Newsletter",{"href":463,"dataGaName":464,"dataGaLocation":149},"/company/contact/#contact-forms","newsletter",{"text":466,"config":467},"Press",{"href":468,"dataGaName":469,"dataGaLocation":149},"/press/","press",{"text":471,"config":472,"menu":473},"Contact us",{"dataNavLevelOne":417},{"type":200,"columns":474},[475],{"items":476},[477,482,487],{"text":478,"config":479},"Talk to sales",{"href":480,"dataGaName":481,"dataGaLocation":149},"/sales/","talk to sales",{"text":483,"config":484},"Support portal",{"href":485,"dataGaName":486,"dataGaLocation":149},"https://support.gitlab.com/hc/en-us","support portal",{"text":488,"config":489},"Customer portal",{"href":490,"dataGaName":491,"dataGaLocation":149},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":493,"login":494,"suggestions":501},"Close",{"text":495,"link":496},"To search repositories and projects, login to",{"text":497,"config":498},"gitlab.com",{"href":163,"dataGaName":499,"dataGaLocation":500},"search login","search",{"text":502,"default":503},"Suggestions",[504,506,510,512,516,520],{"text":180,"config":505},{"href":185,"dataGaName":180,"dataGaLocation":500},{"text":507,"config":508},"Code Suggestions (AI)",{"href":509,"dataGaName":507,"dataGaLocation":500},"/solutions/code-suggestions/",{"text":216,"config":511},{"href":218,"dataGaName":216,"dataGaLocation":500},{"text":513,"config":514},"GitLab on AWS",{"href":515,"dataGaName":513,"dataGaLocation":500},"/partners/technology-partners/aws/",{"text":517,"config":518},"GitLab on Google Cloud",{"href":519,"dataGaName":517,"dataGaLocation":500},"/partners/technology-partners/google-cloud-platform/",{"text":521,"config":522},"Why GitLab?",{"href":193,"dataGaName":521,"dataGaLocation":500},{"freeTrial":524,"mobileIcon":529,"desktopIcon":534,"secondaryButton":537},{"text":525,"config":526},"Start free trial",{"href":527,"dataGaName":154,"dataGaLocation":528},"https://gitlab.com/-/trials/new/","nav",{"altText":530,"config":531},"Gitlab Icon",{"src":532,"dataGaName":533,"dataGaLocation":528},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":530,"config":535},{"src":536,"dataGaName":533,"dataGaLocation":528},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":538,"config":539},"Get Started",{"href":540,"dataGaName":541,"dataGaLocation":528},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":543,"mobileIcon":547,"desktopIcon":549},{"text":544,"config":545},"Learn more about GitLab Duo",{"href":185,"dataGaName":546,"dataGaLocation":528},"gitlab duo",{"altText":530,"config":548},{"src":532,"dataGaName":533,"dataGaLocation":528},{"altText":530,"config":550},{"src":536,"dataGaName":533,"dataGaLocation":528},{"button":552,"mobileIcon":557,"desktopIcon":559},{"text":553,"config":554},"/switch",{"href":555,"dataGaName":556,"dataGaLocation":528},"#contact","switch",{"altText":530,"config":558},{"src":532,"dataGaName":533,"dataGaLocation":528},{"altText":530,"config":560},{"src":561,"dataGaName":533,"dataGaLocation":528},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":563,"mobileIcon":568,"desktopIcon":570},{"text":564,"config":565},"Back to pricing",{"href":298,"dataGaName":566,"dataGaLocation":528,"icon":567},"back to pricing","GoBack",{"altText":530,"config":569},{"src":532,"dataGaName":533,"dataGaLocation":528},{"altText":530,"config":571},{"src":536,"dataGaName":533,"dataGaLocation":528},{"title":573,"titleMobile":574,"button":575,"config":580},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":191,"config":576},{"href":577,"dataGaName":578,"dataGaLocation":579},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":581,"disabled":128},"release",{"data":583},{"text":584,"source":585,"edit":591,"contribute":596,"config":601,"items":606,"minimal":816},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":586,"config":587},"View page source",{"href":588,"dataGaName":589,"dataGaLocation":590},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":592,"config":593},"Edit this page",{"href":594,"dataGaName":595,"dataGaLocation":590},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":597,"config":598},"Please contribute",{"href":599,"dataGaName":600,"dataGaLocation":590},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":602,"facebook":603,"youtube":604,"linkedin":605},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[607,654,708,752,784],{"title":296,"links":608,"subMenu":623},[609,613,618],{"text":610,"config":611},"View plans",{"href":298,"dataGaName":612,"dataGaLocation":590},"view plans",{"text":614,"config":615},"Why Premium?",{"href":616,"dataGaName":617,"dataGaLocation":590},"/pricing/premium/","why premium",{"text":619,"config":620},"Why Ultimate?",{"href":621,"dataGaName":622,"dataGaLocation":590},"/pricing/ultimate/","why ultimate",[624],{"title":625,"links":626},"Contact Us",[627,630,632,634,639,644,649],{"text":628,"config":629},"Contact sales",{"href":480,"dataGaName":159,"dataGaLocation":590},{"text":483,"config":631},{"href":485,"dataGaName":486,"dataGaLocation":590},{"text":488,"config":633},{"href":490,"dataGaName":491,"dataGaLocation":590},{"text":635,"config":636},"Status",{"href":637,"dataGaName":638,"dataGaLocation":590},"https://status.gitlab.com/","status",{"text":640,"config":641},"Terms of use",{"href":642,"dataGaName":643,"dataGaLocation":590},"/terms/","terms of use",{"text":645,"config":646},"Privacy statement",{"href":647,"dataGaName":648,"dataGaLocation":590},"/privacy/","privacy statement",{"text":650,"config":651},"Cookie preferences",{"dataGaName":652,"dataGaLocation":590,"id":653,"isOneTrustButton":131},"cookie preferences","ot-sdk-btn",{"title":196,"links":655,"subMenu":664},[656,660],{"text":657,"config":658},"DevSecOps platform",{"href":178,"dataGaName":659,"dataGaLocation":590},"devsecops platform",{"text":661,"config":662},"AI-Assisted Development",{"href":185,"dataGaName":663,"dataGaLocation":590},"ai-assisted development",[665],{"title":666,"links":667},"Topics",[668,673,678,683,688,693,698,703],{"text":669,"config":670},"CICD",{"href":671,"dataGaName":672,"dataGaLocation":590},"/topics/ci-cd/","cicd",{"text":674,"config":675},"GitOps",{"href":676,"dataGaName":677,"dataGaLocation":590},"/topics/gitops/","gitops",{"text":679,"config":680},"DevOps",{"href":681,"dataGaName":682,"dataGaLocation":590},"/topics/devops/","devops",{"text":684,"config":685},"Version Control",{"href":686,"dataGaName":687,"dataGaLocation":590},"/topics/version-control/","version control",{"text":689,"config":690},"DevSecOps",{"href":691,"dataGaName":692,"dataGaLocation":590},"/topics/devsecops/","devsecops",{"text":694,"config":695},"Cloud Native",{"href":696,"dataGaName":697,"dataGaLocation":590},"/topics/cloud-native/","cloud native",{"text":699,"config":700},"AI for Coding",{"href":701,"dataGaName":702,"dataGaLocation":590},"/topics/devops/ai-for-coding/","ai for coding",{"text":704,"config":705},"Agentic AI",{"href":706,"dataGaName":707,"dataGaLocation":590},"/topics/agentic-ai/","agentic ai",{"title":709,"links":710},"Solutions",[711,713,715,720,724,727,731,734,736,739,742,747],{"text":240,"config":712},{"href":235,"dataGaName":240,"dataGaLocation":590},{"text":229,"config":714},{"href":212,"dataGaName":213,"dataGaLocation":590},{"text":716,"config":717},"Agile development",{"href":718,"dataGaName":719,"dataGaLocation":590},"/solutions/agile-delivery/","agile delivery",{"text":721,"config":722},"SCM",{"href":225,"dataGaName":723,"dataGaLocation":590},"source code management",{"text":669,"config":725},{"href":218,"dataGaName":726,"dataGaLocation":590},"continuous integration & delivery",{"text":728,"config":729},"Value stream management",{"href":268,"dataGaName":730,"dataGaLocation":590},"value stream management",{"text":674,"config":732},{"href":733,"dataGaName":677,"dataGaLocation":590},"/solutions/gitops/",{"text":278,"config":735},{"href":281,"dataGaName":282,"dataGaLocation":590},{"text":737,"config":738},"Small business",{"href":287,"dataGaName":288,"dataGaLocation":590},{"text":740,"config":741},"Public sector",{"href":293,"dataGaName":294,"dataGaLocation":590},{"text":743,"config":744},"Education",{"href":745,"dataGaName":746,"dataGaLocation":590},"/solutions/education/","education",{"text":748,"config":749},"Financial services",{"href":750,"dataGaName":751,"dataGaLocation":590},"/solutions/finance/","financial services",{"title":301,"links":753},[754,756,758,760,763,765,768,770,772,774,776,778,780,782],{"text":314,"config":755},{"href":316,"dataGaName":317,"dataGaLocation":590},{"text":319,"config":757},{"href":321,"dataGaName":322,"dataGaLocation":590},{"text":324,"config":759},{"href":326,"dataGaName":327,"dataGaLocation":590},{"text":329,"config":761},{"href":331,"dataGaName":762,"dataGaLocation":590},"docs",{"text":352,"config":764},{"href":354,"dataGaName":355,"dataGaLocation":590},{"text":766,"config":767},"What's new",{"href":412,"dataGaName":413,"dataGaLocation":590},{"text":347,"config":769},{"href":349,"dataGaName":350,"dataGaLocation":590},{"text":366,"config":771},{"href":368,"dataGaName":369,"dataGaLocation":590},{"text":374,"config":773},{"href":376,"dataGaName":377,"dataGaLocation":590},{"text":379,"config":775},{"href":381,"dataGaName":382,"dataGaLocation":590},{"text":384,"config":777},{"href":386,"dataGaName":387,"dataGaLocation":590},{"text":389,"config":779},{"href":391,"dataGaName":392,"dataGaLocation":590},{"text":394,"config":781},{"href":396,"dataGaName":397,"dataGaLocation":590},{"text":399,"config":783},{"href":401,"dataGaName":402,"dataGaLocation":590},{"title":415,"links":785},[786,788,790,792,794,796,800,805,807,809,811],{"text":423,"config":787},{"href":425,"dataGaName":417,"dataGaLocation":590},{"text":428,"config":789},{"href":430,"dataGaName":431,"dataGaLocation":590},{"text":436,"config":791},{"href":438,"dataGaName":439,"dataGaLocation":590},{"text":441,"config":793},{"href":443,"dataGaName":444,"dataGaLocation":590},{"text":446,"config":795},{"href":448,"dataGaName":449,"dataGaLocation":590},{"text":797,"config":798},"Sustainability",{"href":799,"dataGaName":797,"dataGaLocation":590},"/sustainability/",{"text":801,"config":802},"Diversity, inclusion and belonging (DIB)",{"href":803,"dataGaName":804,"dataGaLocation":590},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":451,"config":806},{"href":453,"dataGaName":454,"dataGaLocation":590},{"text":461,"config":808},{"href":463,"dataGaName":464,"dataGaLocation":590},{"text":466,"config":810},{"href":468,"dataGaName":469,"dataGaLocation":590},{"text":812,"config":813},"Modern Slavery Transparency Statement",{"href":814,"dataGaName":815,"dataGaLocation":590},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":817},[818,821,824],{"text":819,"config":820},"Terms",{"href":642,"dataGaName":643,"dataGaLocation":590},{"text":822,"config":823},"Cookies",{"dataGaName":652,"dataGaLocation":590,"id":653,"isOneTrustButton":131},{"text":825,"config":826},"Privacy",{"href":647,"dataGaName":648,"dataGaLocation":590},[828],{"id":829,"title":7,"body":127,"config":830,"content":832,"description":127,"extension":836,"meta":837,"navigation":131,"path":838,"seo":839,"stem":840,"__hash__":841},"blogAuthors/en-us/blog/authors/heather-simpson.yml",{"template":831},"BlogAuthor",{"name":7,"config":833},{"headshot":834,"ctfId":835},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","hsimpson","yml",{},"/en-us/blog/authors/heather-simpson",{},"en-us/blog/authors/heather-simpson","4CpsZWXsBE_aB4RLpF20WPoTR1QnmwDhrVLV8WUGGTk",[843,851,859],{"title":844,"description":845,"heroImage":846,"category":123,"date":847,"authors":848,"slug":850,"externalUrl":127},"How GitLab tracks vulnerabilities through refactors and reformatting","Learn how GitLab's improved Scope+Offset fingerprinting keeps vulnerability tracking stable across comments, blank lines, and reformatting.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1759320418/xjmqcozxzt4frx0hori3.png","2026-08-12",[849],"Julian Thome","improved-scope-offset-fingerprinting",{"title":852,"description":853,"heroImage":846,"category":123,"date":854,"authors":855,"slug":858,"externalUrl":127},"GitLab Secrets Manager adds ESO, Terraform, API support","Simplify credential management across your stack. GitLab Secrets Manager provides secure retrieval in Kubernetes, Terraform, and external workflows.","2026-08-06",[856,857],"Erick Bajao","Joe Randazzo","gitlab-secrets-manager-add-eso-terraform-api-support",{"title":860,"description":861,"heroImage":862,"category":123,"date":863,"authors":864,"slug":866,"externalUrl":127},"Secure every commit to production with Claude and GitLab","Claude Security catches vulnerabilities inside a coding session. GitLab picks up from there, scanning, enforcing policy, and producing audit evidence for the software lifecycle. ","https://res.cloudinary.com/about-gitlab-com/image/upload/v1756122536/akivvcnafog9c4dhhzkp.png","2026-08-03",[865],"Alisa Ho","claude-security-and-gitlab",{"promotions":868},[869,883,895,906],{"id":870,"categories":871,"header":873,"text":874,"button":875,"image":880},"ai-modernization",[872],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":876,"config":877},"Get your AI maturity score",{"href":878,"dataGaName":879,"dataGaLocation":355},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":881},{"src":882},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":884,"categories":885,"header":887,"text":874,"button":888,"image":892},"devops-modernization",[886,692],"product","Are you just managing tools or shipping innovation?",{"text":889,"config":890},"Get your DevOps maturity score",{"href":891,"dataGaName":879,"dataGaLocation":355},"/assessments/devops-modernization-assessment/",{"config":893},{"src":894},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":896,"categories":897,"header":898,"text":874,"button":899,"image":903},"security-modernization",[123],"Are you trading speed for security?",{"text":900,"config":901},"Get your security maturity score",{"href":902,"dataGaName":879,"dataGaLocation":355},"/assessments/security-modernization-assessment/",{"config":904},{"src":905},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":907,"paths":908,"header":911,"text":912,"button":913,"image":918},"github-azure-migration",[909,910],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":914,"config":915},"See how GitLab compares to GitHub",{"href":916,"dataGaName":917,"dataGaLocation":355},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":919},{"src":894},{"header":921,"blurb":922,"button":923,"secondaryButton":928},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":924,"config":925},"Get your free trial",{"href":926,"dataGaName":154,"dataGaLocation":927},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":628,"config":929},{"href":480,"dataGaName":159,"dataGaLocation":927},1786803748135]