[{"data":1,"prerenderedAt":1078},["ShallowReactive",2],{"/blog/why-2022-was-a-record-breaking-year-in-bug-bounty-awards":3,"navigation-en-us":293,"banner-en-us":720,"footer-en-us":730,"blog-post-authors-en-us-Nick Malcolm":975,"blog-related-posts-en-us-why-2022-was-a-record-breaking-year-in-bug-bounty-awards":990,"blog-promotions-en-us":1015,"next-steps-en-us":1068},{"id":4,"title":5,"authors":6,"body":8,"category":272,"date":273,"description":274,"extension":275,"externalUrl":276,"faq":276,"featured":277,"heroImage":278,"meta":279,"navigation":280,"path":281,"seo":282,"slug":286,"stem":287,"tags":288,"template":291,"updatedDate":276,"__hash__":292},"blogPosts/en-us/blog/why-2022-was-a-record-breaking-year-in-bug-bounty-awards.md","Why 2022 was a record-breaking year in bug bounty awards",[7],"Nick Malcolm",{"type":9,"value":10,"toc":265},"minimark",[11,15,29,32,37,59,65,74,78,90,102,120,152,164,173,177,228,231,254,262],[12,13,14],"p",{},"Each year, GitLab's Application Security team likes to recap the highlights from GitLab's bug bounty program.",[12,16,17,18,23,24,28],{},"It's been a busy 2022 for security teams across the industry, and we have been fortunate to receive a huge number of excellent reports that help us keep GitLab and its customers secure. With the ",[19,20,22],"a",{"href":21},"/blog/3rd-annual-bug-bounty-contest/#-increased-bounties-across-all-bounty-ranges-","increase we made to our bug bounty award amounts"," in November 2021 and increased researcher engagement, we've broken a new record by ",[25,26,27],"strong",{},"awarding over $1 million USD"," in bounties during 2022!",[12,30,31],{},"We wouldn't be where we are without the collaboration of our bug bounty community, and we consider these awards as hugely beneficial and money well spent.",[33,34,36],"h2",{"id":35},"_2022-by-the-numbers","2022 by the numbers",[38,39,40,44,47,50,53,56],"ul",{},[41,42,43],"li",{},"Awarded a total of $1,055,770 USD in bounties across 221 valid reports, up from $337,780 last year!",[41,45,46],{},"Three researchers earned $100,000+ USD across their multiple reports, and another seven earned over $20,000 USD.",[41,48,49],{},"Received a total of 920 reports from 424 researchers in 2022.",[41,51,52],{},"Resolved 158 valid reports and made 94 public - this year, we received a number of information leak reports which, unlike vulnerabilities, don't need a public GitLab issue.",[41,54,55],{},"Had 138 security researchers submit more than one report this year, signaling a positive commitment to our program.",[41,57,58],{},"Awarded eight GitLab Ultimate licenses to researchers who submitted three or more valid reports.",[12,60,61],{},[62,63,64],"em",{},"Note: Data is accurate as of December 16, 2022.",[12,66,67,68,73],{},"You can see program statistics updated daily on our ",[19,69,72],{"href":70,"rel":71},"https://hackerone.com/gitlab",[],"HackerOne program page",". That's also the place to get started with our program if you want in on the action!",[33,75,77],{"id":76},"reports-and-reporters-that-stood-out","Reports and reporters that stood out",[12,79,80,83,84,89],{},[25,81,82],{},"Most valid reports to our program."," Congratulations to ",[19,85,88],{"href":86,"rel":87},"https://hackerone.com/joaxcar",[],"@joaxcar"," who made 22 valid and now-resolved reports in 2022.",[12,91,92,95,96,101],{},[25,93,94],{},"Most valid reports from a newcomer to our program."," Welcome and congratulations to ",[19,97,100],{"href":98,"rel":99},"https://hackerone.com/albatraoz",[],"@albatraoz"," who made seven valid and now-resolved reports in 2022.",[12,103,104,107,108,113,114,119],{},[25,105,106],{},"Best written report."," Well done and thank you ",[19,109,112],{"href":110,"rel":111},"https://hackerone.com/yvvdwf",[],"@yvvdwf"," for writing up a really interesting ",[19,115,118],{"href":116,"rel":117},"https://gitlab.com/gitlab-org/gitlab/-/issues/371098",[],"remote code execution bug",". The walkthrough of the code and root cause, the scripts to create a dummy malicious server, and the collaboration with our AppSec team during validation was fantastic!",[12,121,122,125,126,131,132,142,143,148,149,151],{},[25,123,124],{},"Most innovative report."," High five, ",[19,127,130],{"href":128,"rel":129},"https://hackerone.com/vakzz",[],"@vakzz",", who captured the flag with a ",[19,133,136,137,141],{"href":134,"rel":135},"https://gitlab.com/gitlab-org/gitlab/-/issues/372165",[],"novel local ",[138,139,140],"code",{},"git"," read vulnerability","! He also did ",[19,144,147],{"href":145,"rel":146},"https://gitlab.com/gitlab-org/gitlab/-/issues/371884",[],"a neat followup"," to ",[138,150,112],{},"'s RCE mentioned above.",[12,153,154,157,158,163],{},[25,155,156],{},"Most impactful finding."," We're thrilled to recognize ",[19,159,162],{"href":160,"rel":161},"https://hackerone.com/taraszelyk",[],"@taraszelyk",", whose back-to-back information disclosure submissions led to a lot of positive security changes within GitLab. Thanks, Taras!",[12,165,166,167,172],{},"We will be getting in touch with these researchers to send out ",[19,168,171],{"href":169,"rel":170},"https://shop.gitlab.com",[],"GitLab Swag Shop"," vouchers as a token of our appreciation.",[33,174,176],{"id":175},"changes-made-in-2022","Changes made in 2022",[38,178,179,188,201,210,213],{},[41,180,181,182,187],{},"We adopted HackerOne's Gold Standard Safe Harbor statement. See ",[19,183,186],{"href":184,"rel":185},"https://www.hackerone.com/press-release/hackerone-announces-gold-standard-safe-harbor-improve-protections-good-faith-security",[],"this announcement from HackerOne",".",[41,189,190,191,196,197,187],{},"We introduced ",[19,192,195],{"href":193,"rel":194},"https://hackerone.com/gitlab#user-content-capture-the-flag-for-20000",[],"a $20,000 USD capture the flag bonus",", which was ",[19,198,200],{"href":134,"rel":199},[],"captured once",[41,202,203,204,209],{},"We created ",[19,205,208],{"href":206,"rel":207},"https://gitlab.com/gitlab-com/gl-security/appsec/hackerone-questions/",[],"HackerOne Questions",", a dedicated space for getting in touch with the AppSec team outside of HackerOne reports.",[41,211,212],{},"Created \"Reproducible Vulnerabilities\", a brand-new learning resource in our handbook structured with expandable hint sections so that you can challenge yourself and learn how to find real security bugs.",[41,214,215,216,221,222,227],{},"Continued to iterate transparently on our ",[19,217,220],{"href":218,"rel":219},"https://gitlab.com/gitlab-com/www-gitlab-com/-/commits/master/sites/handbook/source/handbook/security/security-engineering-and-research/application-security/runbooks/hackerone-process.html.md",[],"HackerOne triage process",", and on our ",[19,223,226],{"href":224,"rel":225},"https://gitlab.com/gitlab-com/gl-security/appsec/cvss-calculator/-/commits/master",[],"Bug Bounty Calculator",", including standardized amounts for non-vulnerability reports like information leaks.",[12,229,230],{},"This year, we also continued to provide content that helps both researchers and other organizations running bug bounty programs:",[38,232,233,240,246],{},[41,234,235,236],{},"GitLab Blog: ",[19,237,239],{"href":238},"/blog/cracking-our-bug-bounty-top-10/","\"Want to start hacking? Here's how to quickly dive in\"",[41,241,235,242],{},[19,243,245],{"href":244},"/blog/how-gitlab-handles-security-bugs/","\"How GitLab handles security bugs (and why it matters)\"",[41,247,248,249],{},"YouTube: ",[19,250,253],{"href":251,"rel":252},"https://www.youtube.com/watch?v=uqvai-ml1iV4",[],"NullCon 2022 Video Panel: \"CXO Panel: Bug Bounty? Great! Now What?\"",[12,255,256,257,261],{},"As always, it is a real pleasure to work with the best security researchers our industry has to offer, including many newcomers. GitLab's AppSec team is committed to being an industry leader when it comes to the transparency of our bug bounty program and the awards given. ",[19,258,260],{"href":206,"rel":259},[],"Let us know how we're doing"," so we can iterate on our program processes.",[12,263,264],{},"Here's to 2023 - happy hacking!",{"title":266,"searchDepth":267,"depth":267,"links":268},"",2,[269,270,271],{"id":35,"depth":267,"text":36},{"id":76,"depth":267,"text":77},{"id":175,"depth":267,"text":176},"security","2022-12-19","Find out about the researchers who together earned more than $1 million USD in prizes and their bug hunting contributions.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679034/Blog/Hero%20Images/inside-gitLab-public-bug-bounty-program.png",{},true,"/en-us/blog/why-2022-was-a-record-breaking-year-in-bug-bounty-awards",{"title":5,"description":274,"ogTitle":5,"ogDescription":274,"noIndex":277,"ogImage":278,"ogUrl":283,"ogSiteName":284,"ogType":285,"canonicalUrls":283},"https://about.gitlab.com/blog/why-2022-was-a-record-breaking-year-in-bug-bounty-awards","https://about.gitlab.com","article","why-2022-was-a-record-breaking-year-in-bug-bounty-awards","en-us/blog/why-2022-was-a-record-breaking-year-in-bug-bounty-awards",[272,289,290],"bug bounty","community","BlogPost","LO8bUDMued4U5Fa_7ko5Qp7aitwpa0AxfJ3zy1MebAw",{"logo":294,"freeTrial":299,"sales":304,"login":309,"items":314,"search":640,"minimal":671,"duo":690,"switchNav":699,"pricingDeployment":710},{"config":295},{"href":296,"dataGaName":297,"dataGaLocation":298},"/","gitlab logo","header",{"text":300,"config":301},"Get free trial",{"href":302,"dataGaName":303,"dataGaLocation":298},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":305,"config":306},"Request a demo",{"href":307,"dataGaName":308,"dataGaLocation":298},"/sales/?contact-topic=request-demo","sales",{"text":310,"config":311},"Sign in",{"href":312,"dataGaName":313,"dataGaLocation":298},"https://gitlab.com/users/sign_in/","sign in",[315,344,444,449,562,618],{"text":316,"config":317,"menu":319},"Platform",{"dataNavLevelOne":318},"platform",{"type":320,"columns":321},"cards",[322,328,336],{"title":316,"description":323,"link":324},"The intelligent orchestration platform for DevSecOps",{"text":325,"config":326},"Explore our Platform",{"href":327,"dataGaName":318,"dataGaLocation":298},"/platform/",{"title":329,"description":330,"link":331},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":332,"config":333},"Meet GitLab Duo",{"href":334,"dataGaName":335,"dataGaLocation":298},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":337,"description":338,"link":339},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":340,"config":341},"Learn more",{"href":342,"dataGaName":343,"dataGaLocation":298},"/why-gitlab/","why gitlab",{"text":345,"left":280,"config":346,"menu":348},"Product",{"dataNavLevelOne":347},"solutions",{"type":349,"link":350,"columns":354,"feature":423},"lists",{"text":351,"config":352},"View all Solutions",{"href":353,"dataGaName":347,"dataGaLocation":298},"/solutions/",[355,379,402],{"title":356,"description":357,"link":358,"items":363},"Automation","CI/CD and automation to accelerate deployment",{"config":359},{"icon":360,"href":361,"dataGaName":362,"dataGaLocation":298},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[364,368,371,375],{"text":365,"config":366},"CI/CD",{"href":367,"dataGaLocation":298,"dataGaName":365},"/solutions/continuous-integration/",{"text":329,"config":369},{"href":334,"dataGaLocation":298,"dataGaName":370},"gitlab duo agent platform - product menu",{"text":372,"config":373},"Source Code Management",{"href":374,"dataGaLocation":298,"dataGaName":372},"/solutions/source-code-management/",{"text":376,"config":377},"Automated Software Delivery",{"href":361,"dataGaLocation":298,"dataGaName":378},"Automated software delivery",{"title":380,"description":381,"link":382,"items":387},"Security","Deliver code faster without compromising security",{"config":383},{"href":384,"dataGaName":385,"dataGaLocation":298,"icon":386},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[388,392,397],{"text":389,"config":390},"Application Security Testing",{"href":384,"dataGaName":391,"dataGaLocation":298},"Application security testing",{"text":393,"config":394},"Software Supply Chain Security",{"href":395,"dataGaLocation":298,"dataGaName":396},"/solutions/supply-chain/","Software supply chain security",{"text":398,"config":399},"Software Compliance",{"href":400,"dataGaName":401,"dataGaLocation":298},"/solutions/software-compliance/","software compliance",{"title":403,"link":404,"items":409},"Measurement",{"config":405},{"icon":406,"href":407,"dataGaName":408,"dataGaLocation":298},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[410,414,418],{"text":411,"config":412},"Visibility & Measurement",{"href":407,"dataGaLocation":298,"dataGaName":413},"Visibility and Measurement",{"text":415,"config":416},"Value Stream Management",{"href":417,"dataGaLocation":298,"dataGaName":415},"/solutions/value-stream-management/",{"text":419,"config":420},"Analytics & Insights",{"href":421,"dataGaLocation":298,"dataGaName":422},"/solutions/analytics-and-insights/","Analytics and insights",{"title":424,"type":349,"items":425},"GitLab for",[426,432,438],{"text":427,"config":428},"Enterprise",{"icon":429,"href":430,"dataGaLocation":298,"dataGaName":431},"Building","/enterprise/","enterprise",{"text":433,"config":434},"Small Business",{"icon":435,"href":436,"dataGaLocation":298,"dataGaName":437},"Work","/small-business/","small business",{"text":439,"config":440},"Public Sector",{"icon":441,"href":442,"dataGaLocation":298,"dataGaName":443},"Organization","/solutions/public-sector/","public sector",{"text":445,"config":446},"Pricing",{"href":447,"dataGaName":448,"dataGaLocation":298,"dataNavLevelOne":448},"/pricing/","pricing",{"text":450,"config":451,"menu":453},"Resources",{"dataNavLevelOne":452},"resources",{"type":349,"link":454,"columns":458,"feature":551},{"text":455,"config":456},"View all resources",{"href":457,"dataGaName":452,"dataGaLocation":298},"/resources/",[459,492,519],{"title":460,"items":461},"Getting started",[462,467,472,477,482,487],{"text":463,"config":464},"Install",{"href":465,"dataGaName":466,"dataGaLocation":298},"/install/","install",{"text":468,"config":469},"Quick start guides",{"href":470,"dataGaName":471,"dataGaLocation":298},"/get-started/","quick setup checklists",{"text":473,"config":474},"Learn",{"href":475,"dataGaLocation":298,"dataGaName":476},"https://university.gitlab.com/","learn",{"text":478,"config":479},"Product documentation",{"href":480,"dataGaName":481,"dataGaLocation":298},"https://docs.gitlab.com/","product documentation",{"text":483,"config":484},"Best practice videos",{"href":485,"dataGaName":486,"dataGaLocation":298},"/getting-started-videos/","best practice videos",{"text":488,"config":489},"Integrations",{"href":490,"dataGaName":491,"dataGaLocation":298},"/integrations/","integrations",{"title":493,"items":494},"Discover",[495,500,505,510,514],{"text":496,"config":497},"Customer success stories",{"href":498,"dataGaName":499,"dataGaLocation":298},"/customers/","customer success stories",{"text":501,"config":502},"Blog",{"href":503,"dataGaName":504,"dataGaLocation":298},"/blog/","blog",{"text":506,"config":507},"Demo Hub",{"href":508,"dataGaName":509,"dataGaLocation":298},"/demo-hub/","demo hub",{"text":511,"config":512},"The Source",{"href":513,"dataGaName":504,"dataGaLocation":298},"/the-source/",{"text":515,"config":516},"Remote",{"href":517,"dataGaName":518,"dataGaLocation":298},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":520,"items":521},"Connect",[522,527,532,536,541,546],{"text":523,"config":524},"GitLab Services",{"href":525,"dataGaName":526,"dataGaLocation":298},"/services/","services",{"text":528,"config":529},"Contribute",{"href":530,"dataGaName":531,"dataGaLocation":298},"https://contributors.gitlab.com","contribute",{"text":533,"config":534},"Community",{"href":535,"dataGaName":290,"dataGaLocation":298},"/community/",{"text":537,"config":538},"Forum",{"href":539,"dataGaName":540,"dataGaLocation":298},"https://forum.gitlab.com/","forum",{"text":542,"config":543},"Events",{"href":544,"dataGaName":545,"dataGaLocation":298},"/events/","events",{"text":547,"config":548},"Partners",{"href":549,"dataGaName":550,"dataGaLocation":298},"/partners/","partners",{"config":552,"title":555,"text":556,"link":557},{"background":553,"textColor":554},"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":558,"config":559},"Read the latest",{"href":560,"dataGaName":561,"dataGaLocation":298},"/whats-new/","whats new",{"text":563,"config":564,"menu":566},"Company",{"dataNavLevelOne":565},"company",{"type":349,"columns":567},[568],{"items":569},[570,575,581,583,588,593,598,603,608,613],{"text":571,"config":572},"About",{"href":573,"dataGaName":574,"dataGaLocation":298},"/company/","about",{"text":576,"config":577,"footerGa":580},"Jobs",{"href":578,"dataGaName":579,"dataGaLocation":298},"/jobs/","jobs",{"dataGaName":579},{"text":542,"config":582},{"href":544,"dataGaName":545,"dataGaLocation":298},{"text":584,"config":585},"Leadership",{"href":586,"dataGaName":587,"dataGaLocation":298},"/company/team/e-group/","leadership",{"text":589,"config":590},"Handbook",{"href":591,"dataGaName":592,"dataGaLocation":298},"https://handbook.gitlab.com/","handbook",{"text":594,"config":595},"Investor relations",{"href":596,"dataGaName":597,"dataGaLocation":298},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":599,"config":600},"Trust Center",{"href":601,"dataGaName":602,"dataGaLocation":298},"/security/","trust center",{"text":604,"config":605},"AI Transparency Center",{"href":606,"dataGaName":607,"dataGaLocation":298},"/ai-transparency-center/","ai transparency center",{"text":609,"config":610},"Newsletter",{"href":611,"dataGaName":612,"dataGaLocation":298},"/company/contact/#contact-forms","newsletter",{"text":614,"config":615},"Press",{"href":616,"dataGaName":617,"dataGaLocation":298},"/press/","press",{"text":619,"config":620,"menu":621},"Contact us",{"dataNavLevelOne":565},{"type":349,"columns":622},[623],{"items":624},[625,630,635],{"text":626,"config":627},"Talk to sales",{"href":628,"dataGaName":629,"dataGaLocation":298},"/sales/","talk to sales",{"text":631,"config":632},"Support portal",{"href":633,"dataGaName":634,"dataGaLocation":298},"https://support.gitlab.com/hc/en-us","support portal",{"text":636,"config":637},"Customer portal",{"href":638,"dataGaName":639,"dataGaLocation":298},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":641,"login":642,"suggestions":649},"Close",{"text":643,"link":644},"To search repositories and projects, login to",{"text":645,"config":646},"gitlab.com",{"href":312,"dataGaName":647,"dataGaLocation":648},"search login","search",{"text":650,"default":651},"Suggestions",[652,654,658,660,664,668],{"text":329,"config":653},{"href":334,"dataGaName":329,"dataGaLocation":648},{"text":655,"config":656},"Code Suggestions (AI)",{"href":657,"dataGaName":655,"dataGaLocation":648},"/solutions/code-suggestions/",{"text":365,"config":659},{"href":367,"dataGaName":365,"dataGaLocation":648},{"text":661,"config":662},"GitLab on AWS",{"href":663,"dataGaName":661,"dataGaLocation":648},"/partners/technology-partners/aws/",{"text":665,"config":666},"GitLab on Google Cloud",{"href":667,"dataGaName":665,"dataGaLocation":648},"/partners/technology-partners/google-cloud-platform/",{"text":669,"config":670},"Why GitLab?",{"href":342,"dataGaName":669,"dataGaLocation":648},{"freeTrial":672,"mobileIcon":677,"desktopIcon":682,"secondaryButton":685},{"text":673,"config":674},"Start free trial",{"href":675,"dataGaName":303,"dataGaLocation":676},"https://gitlab.com/-/trials/new/","nav",{"altText":678,"config":679},"Gitlab Icon",{"src":680,"dataGaName":681,"dataGaLocation":676},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":678,"config":683},{"src":684,"dataGaName":681,"dataGaLocation":676},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":686,"config":687},"Get Started",{"href":688,"dataGaName":689,"dataGaLocation":676},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":691,"mobileIcon":695,"desktopIcon":697},{"text":692,"config":693},"Learn more about GitLab Duo",{"href":334,"dataGaName":694,"dataGaLocation":676},"gitlab duo",{"altText":678,"config":696},{"src":680,"dataGaName":681,"dataGaLocation":676},{"altText":678,"config":698},{"src":684,"dataGaName":681,"dataGaLocation":676},{"button":700,"mobileIcon":705,"desktopIcon":707},{"text":701,"config":702},"/switch",{"href":703,"dataGaName":704,"dataGaLocation":676},"#contact","switch",{"altText":678,"config":706},{"src":680,"dataGaName":681,"dataGaLocation":676},{"altText":678,"config":708},{"src":709,"dataGaName":681,"dataGaLocation":676},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":711,"mobileIcon":716,"desktopIcon":718},{"text":712,"config":713},"Back to pricing",{"href":447,"dataGaName":714,"dataGaLocation":676,"icon":715},"back to pricing","GoBack",{"altText":678,"config":717},{"src":680,"dataGaName":681,"dataGaLocation":676},{"altText":678,"config":719},{"src":684,"dataGaName":681,"dataGaLocation":676},{"title":721,"titleMobile":722,"button":723,"config":728},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":340,"config":724},{"href":725,"dataGaName":726,"dataGaLocation":727},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":729,"disabled":277},"release",{"data":731},{"text":732,"source":733,"edit":739,"contribute":744,"config":749,"items":754,"minimal":964},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":734,"config":735},"View page source",{"href":736,"dataGaName":737,"dataGaLocation":738},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":740,"config":741},"Edit this page",{"href":742,"dataGaName":743,"dataGaLocation":738},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":745,"config":746},"Please contribute",{"href":747,"dataGaName":748,"dataGaLocation":738},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":750,"facebook":751,"youtube":752,"linkedin":753},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[755,802,856,900,932],{"title":445,"links":756,"subMenu":771},[757,761,766],{"text":758,"config":759},"View plans",{"href":447,"dataGaName":760,"dataGaLocation":738},"view plans",{"text":762,"config":763},"Why Premium?",{"href":764,"dataGaName":765,"dataGaLocation":738},"/pricing/premium/","why premium",{"text":767,"config":768},"Why Ultimate?",{"href":769,"dataGaName":770,"dataGaLocation":738},"/pricing/ultimate/","why ultimate",[772],{"title":773,"links":774},"Contact Us",[775,778,780,782,787,792,797],{"text":776,"config":777},"Contact sales",{"href":628,"dataGaName":308,"dataGaLocation":738},{"text":631,"config":779},{"href":633,"dataGaName":634,"dataGaLocation":738},{"text":636,"config":781},{"href":638,"dataGaName":639,"dataGaLocation":738},{"text":783,"config":784},"Status",{"href":785,"dataGaName":786,"dataGaLocation":738},"https://status.gitlab.com/","status",{"text":788,"config":789},"Terms of use",{"href":790,"dataGaName":791,"dataGaLocation":738},"/terms/","terms of use",{"text":793,"config":794},"Privacy statement",{"href":795,"dataGaName":796,"dataGaLocation":738},"/privacy/","privacy statement",{"text":798,"config":799},"Cookie preferences",{"dataGaName":800,"dataGaLocation":738,"id":801,"isOneTrustButton":280},"cookie preferences","ot-sdk-btn",{"title":345,"links":803,"subMenu":812},[804,808],{"text":805,"config":806},"DevSecOps platform",{"href":327,"dataGaName":807,"dataGaLocation":738},"devsecops platform",{"text":809,"config":810},"AI-Assisted Development",{"href":334,"dataGaName":811,"dataGaLocation":738},"ai-assisted development",[813],{"title":814,"links":815},"Topics",[816,821,826,831,836,841,846,851],{"text":817,"config":818},"CICD",{"href":819,"dataGaName":820,"dataGaLocation":738},"/topics/ci-cd/","cicd",{"text":822,"config":823},"GitOps",{"href":824,"dataGaName":825,"dataGaLocation":738},"/topics/gitops/","gitops",{"text":827,"config":828},"DevOps",{"href":829,"dataGaName":830,"dataGaLocation":738},"/topics/devops/","devops",{"text":832,"config":833},"Version Control",{"href":834,"dataGaName":835,"dataGaLocation":738},"/topics/version-control/","version control",{"text":837,"config":838},"DevSecOps",{"href":839,"dataGaName":840,"dataGaLocation":738},"/topics/devsecops/","devsecops",{"text":842,"config":843},"Cloud Native",{"href":844,"dataGaName":845,"dataGaLocation":738},"/topics/cloud-native/","cloud native",{"text":847,"config":848},"AI for Coding",{"href":849,"dataGaName":850,"dataGaLocation":738},"/topics/devops/ai-for-coding/","ai for coding",{"text":852,"config":853},"Agentic AI",{"href":854,"dataGaName":855,"dataGaLocation":738},"/topics/agentic-ai/","agentic ai",{"title":857,"links":858},"Solutions",[859,861,863,868,872,875,879,882,884,887,890,895],{"text":389,"config":860},{"href":384,"dataGaName":389,"dataGaLocation":738},{"text":378,"config":862},{"href":361,"dataGaName":362,"dataGaLocation":738},{"text":864,"config":865},"Agile development",{"href":866,"dataGaName":867,"dataGaLocation":738},"/solutions/agile-delivery/","agile delivery",{"text":869,"config":870},"SCM",{"href":374,"dataGaName":871,"dataGaLocation":738},"source code management",{"text":817,"config":873},{"href":367,"dataGaName":874,"dataGaLocation":738},"continuous integration & delivery",{"text":876,"config":877},"Value stream management",{"href":417,"dataGaName":878,"dataGaLocation":738},"value stream management",{"text":822,"config":880},{"href":881,"dataGaName":825,"dataGaLocation":738},"/solutions/gitops/",{"text":427,"config":883},{"href":430,"dataGaName":431,"dataGaLocation":738},{"text":885,"config":886},"Small business",{"href":436,"dataGaName":437,"dataGaLocation":738},{"text":888,"config":889},"Public sector",{"href":442,"dataGaName":443,"dataGaLocation":738},{"text":891,"config":892},"Education",{"href":893,"dataGaName":894,"dataGaLocation":738},"/solutions/education/","education",{"text":896,"config":897},"Financial services",{"href":898,"dataGaName":899,"dataGaLocation":738},"/solutions/finance/","financial services",{"title":450,"links":901},[902,904,906,908,911,913,916,918,920,922,924,926,928,930],{"text":463,"config":903},{"href":465,"dataGaName":466,"dataGaLocation":738},{"text":468,"config":905},{"href":470,"dataGaName":471,"dataGaLocation":738},{"text":473,"config":907},{"href":475,"dataGaName":476,"dataGaLocation":738},{"text":478,"config":909},{"href":480,"dataGaName":910,"dataGaLocation":738},"docs",{"text":501,"config":912},{"href":503,"dataGaName":504,"dataGaLocation":738},{"text":914,"config":915},"What's new",{"href":560,"dataGaName":561,"dataGaLocation":738},{"text":496,"config":917},{"href":498,"dataGaName":499,"dataGaLocation":738},{"text":515,"config":919},{"href":517,"dataGaName":518,"dataGaLocation":738},{"text":523,"config":921},{"href":525,"dataGaName":526,"dataGaLocation":738},{"text":528,"config":923},{"href":530,"dataGaName":531,"dataGaLocation":738},{"text":533,"config":925},{"href":535,"dataGaName":290,"dataGaLocation":738},{"text":537,"config":927},{"href":539,"dataGaName":540,"dataGaLocation":738},{"text":542,"config":929},{"href":544,"dataGaName":545,"dataGaLocation":738},{"text":547,"config":931},{"href":549,"dataGaName":550,"dataGaLocation":738},{"title":563,"links":933},[934,936,938,940,942,944,948,953,955,957,959],{"text":571,"config":935},{"href":573,"dataGaName":565,"dataGaLocation":738},{"text":576,"config":937},{"href":578,"dataGaName":579,"dataGaLocation":738},{"text":584,"config":939},{"href":586,"dataGaName":587,"dataGaLocation":738},{"text":589,"config":941},{"href":591,"dataGaName":592,"dataGaLocation":738},{"text":594,"config":943},{"href":596,"dataGaName":597,"dataGaLocation":738},{"text":945,"config":946},"Sustainability",{"href":947,"dataGaName":945,"dataGaLocation":738},"/sustainability/",{"text":949,"config":950},"Diversity, inclusion and belonging (DIB)",{"href":951,"dataGaName":952,"dataGaLocation":738},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":599,"config":954},{"href":601,"dataGaName":602,"dataGaLocation":738},{"text":609,"config":956},{"href":611,"dataGaName":612,"dataGaLocation":738},{"text":614,"config":958},{"href":616,"dataGaName":617,"dataGaLocation":738},{"text":960,"config":961},"Modern Slavery Transparency Statement",{"href":962,"dataGaName":963,"dataGaLocation":738},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":965},[966,969,972],{"text":967,"config":968},"Terms",{"href":790,"dataGaName":791,"dataGaLocation":738},{"text":970,"config":971},"Cookies",{"dataGaName":800,"dataGaLocation":738,"id":801,"isOneTrustButton":280},{"text":973,"config":974},"Privacy",{"href":795,"dataGaName":796,"dataGaLocation":738},[976],{"id":977,"title":7,"body":276,"config":978,"content":980,"description":276,"extension":984,"meta":985,"navigation":280,"path":986,"seo":987,"stem":988,"__hash__":989},"blogAuthors/en-us/blog/authors/nick-malcolm.yml",{"template":979},"BlogAuthor",{"name":7,"config":981},{"headshot":982,"ctfId":983},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679150/Blog/Author%20Headshots/nmalcolm-headshot.jpg","nmalcolm","yml",{},"/en-us/blog/authors/nick-malcolm",{},"en-us/blog/authors/nick-malcolm","9OVpEN4aiaP50TS9Y8sq9VjEFwAj5PhYSyvxRcpQkaQ",[991,999,1007],{"title":992,"description":993,"heroImage":994,"category":272,"date":995,"authors":996,"slug":998,"externalUrl":276},"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",[997],"Julian Thome","improved-scope-offset-fingerprinting",{"title":1000,"description":1001,"heroImage":994,"category":272,"date":1002,"authors":1003,"slug":1006,"externalUrl":276},"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",[1004,1005],"Erick Bajao","Joe Randazzo","gitlab-secrets-manager-add-eso-terraform-api-support",{"title":1008,"description":1009,"heroImage":1010,"category":272,"date":1011,"authors":1012,"slug":1014,"externalUrl":276},"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",[1013],"Alisa Ho","claude-security-and-gitlab",{"promotions":1016},[1017,1031,1043,1054],{"id":1018,"categories":1019,"header":1021,"text":1022,"button":1023,"image":1028},"ai-modernization",[1020],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":1024,"config":1025},"Get your AI maturity score",{"href":1026,"dataGaName":1027,"dataGaLocation":504},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":1029},{"src":1030},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1032,"categories":1033,"header":1035,"text":1022,"button":1036,"image":1040},"devops-modernization",[1034,840],"product","Are you just managing tools or shipping innovation?",{"text":1037,"config":1038},"Get your DevOps maturity score",{"href":1039,"dataGaName":1027,"dataGaLocation":504},"/assessments/devops-modernization-assessment/",{"config":1041},{"src":1042},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1044,"categories":1045,"header":1046,"text":1022,"button":1047,"image":1051},"security-modernization",[272],"Are you trading speed for security?",{"text":1048,"config":1049},"Get your security maturity score",{"href":1050,"dataGaName":1027,"dataGaLocation":504},"/assessments/security-modernization-assessment/",{"config":1052},{"src":1053},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1055,"paths":1056,"header":1059,"text":1060,"button":1061,"image":1066},"github-azure-migration",[1057,1058],"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":1062,"config":1063},"See how GitLab compares to GitHub",{"href":1064,"dataGaName":1065,"dataGaLocation":504},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1067},{"src":1042},{"header":1069,"blurb":1070,"button":1071,"secondaryButton":1076},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":1072,"config":1073},"Get your free trial",{"href":1074,"dataGaName":303,"dataGaLocation":1075},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":776,"config":1077},{"href":628,"dataGaName":308,"dataGaLocation":1075},1786803739276]