GitHub gathers friends for a security code cleanse to scrub that software up to spec
Rallies partners and shares tools to reduce software bugs
GitHub, Microsoft's cloud version control service and gripe forum, has joined with a handful of like-minded partners to form GitHub Security Lab (GSL) to better find bugs in open source software.
Consisting of GitHub security researchers, third-party code maintainers and interested parties from partner companies, GSL aspires to provide a bit more organization to the daunting task of securing open source code.
In a phone interview with The Register, Jamie Cool, VP of product security at GitHub, said the overall theme of GitHub's security announcements involves focusing the power of community.
"We recognize this is a problem that no one company can solve, including GitHub," he said. "But it's incredibly important, which is why we're investing so much in it."
The core of the Security Lab is an internal GitHub security team. The partner companies, said Cool, all share a common interest in better software.
"We basically wanted to combine the energy these companies have to secure open source software," he said, explaining that they all have something tangible to contribute, such as expertise, research or tools.
For example, Google, he said, is bringing software fuzzing tools, while Trail of Bits, a security consultancy, has committed to devoting time to open source bug hunting when not otherwise engaged.
Initially, GSL intends to lead by example, having already driven the creation of more than 100 CVEs detailing flaws that need fixing. The hope is other companies signed on as partners will participate by contributing security research findings to the open source community.
These partners include: F5, Google, HackerOne, IOActive, JP Morgan, LinkedIn, Microsoft, Mozilla, NCC Group, Oracle, Trail of Bits, Uber, and VMWare.
GSL brings with it two practical tools: CodeQL, a language for querying databases generated from source code to find variations of vulnerable code patterns, and the GitHub Advisories Database, a public data set of security advisories from GitHub and accompanying remediation info.
Back in September, GitHub bought software analysis biz Semmle for its LGTM (Looks Good To Me) vulnerability query platform. CodeQL, used to search data from LGTM, represents the reconsidered branding for that tool.
With CodeQL now open to the public, any developer able to recognize a vulnerable code pattern can search for variations on that theme in source files converted to a CodeQL database. And Mozilla is offering an incentive for doing so: Firefox's maker, a GSL partner and admitted user of Semmle's tech, has just expanded its bug bounty program to accept static analysis queries crafted in CodeQL or as Clang-based checkers.
Cool said the hope is that CodeQL will not only help people find vulnerabilities but also avoid re-implementing those same flawed patterns.
In a blog post on Thursday, Cool explained the need to make security information easier to find and more comprehensive.
If you've wanted to lazily merge code on GitHub from the pub, couch or beach, there's now a mobile app for thatREAD MORE
"Forty per cent of new vulnerabilities in open source don’t have a CVE identifier when they’re announced, meaning they’re not included in any public database," Cool said. "Seventy per cent of critical vulnerabilities remain unpatched 30 days after developers have been notified."
To help address that gap, GitHub has a service called Security Advisories, just promoted from beta to general availability, that lets developers draft advisories, coordinate private discussion in the applicable project, collaborate on a fix in a temporary private project fork, and then publish the advisory, with a CVE number bestowed by GitHub, alongside patched code.
Along similar lines, Github's automated security update scheme, by which auto-detected vulnerabilities elicit a pull request fix, has graduated to general availability.
Also, Token scanning, introduced last fall in public beta, has attracted still more partners: GoCardless, HashiCorp, Postman, and Tencent. The service, which helps developers avoid publishing sensitive tokens in git commits, previously marked the participation of Alibaba Cloud, Atlassian, AWS, Azure, Discord, Dropbox, Google Cloud, Mailgun, npm, Proctorio, Pulumi, Slack, Stripe, and Twilio. ®