Home Cyber Security News GitLab API Vulnerability Leaked Confidential Data On Public Projects

GitLab API Vulnerability Leaked Confidential Data On Public Projects

by Abeerah Hashim
Gitlab Elasticsearch API flaw

GitLab – a web-based repository manager – has recently patched a critical flaw in its API that posed a security threat to its services. As disclosed, a GitLab API vulnerability allegedly exposed confidential information on public projects. The glitch appeared in the events API that was leaking data for about a year.

GitLab API Vulnerability Exposed Sensitive Data

A HackerOne researcher with the alias ngalog discovered the flaw last month. Later, he reported the matter to GitLab. He discovered a bug in the code of the GitLab Event API. (According to GitLab, they have a “track record of great engagements” with this hacker.)

After receiving the alert, GitLab began investigating the matter only to confirm the glitch. The bug reportedly appeared in June 2017, at the time of the release of GitLab 9.3. Further, explaining the impact of this vulnerability, GitLab stated in their disclosure,

“The Events API was introduced with the release of GitLab 9.3, and it enabled users to programmatically access the activity log of projects and users… Unfortunately, a bug was introduced at release time and the API would not honor the private flag of events related to numerous target types that belonged to public projects. As a result, events for said target types were exposed to potentially unauthenticated and unauthorized parties.”

As reported, the bug resulted in exposure of private information related to projects. This includes private milestones, private merge requests, private snippets, private notes, and the confidential issues.

Patched GitLab Version Released

The GitLab API vulnerability affected all GitLab versions between 9.3 and 11.3, where the exposure of information happened “only through the API”. After the investigations, GitLab patched the flaw and deployed the hotfix across the GitLab infrastructure by September 24, 2018.

Although, GitLab did not state the exact impact of this vulnerability, they did confirm that the bug remained unexploited.

“Given the wide time window during which the issue was present (more than a year), we are unable to determine with accuracy the extent of the impact… We investigated four months of retained GitLab.com logs, and found no evidence that unauthorized parties accessed any of your private events.”

Gitlab have apologized for this security incident to their customers. They also pledge to improve their security posture.

You may also like

Latest Hacking News

Privacy Preference Center


The __cfduid cookie is used to identify individual clients behind a shared IP address and apply security settings on a per-client basis.

cookie_notice_accepted and gdpr[allowed_cookies] are used to identify the choices made from the user regarding cookie consent.

For example, if a visitor is in a coffee shop where there may be several infected machines, but the specific visitor's machine is trusted (for example, because they completed a challenge within your Challenge Passage period), the cookie allows Cloudflare to identify that client and not challenge them again. It does not correspond to any user ID in your web application, and does not store any personally identifiable information.

__cfduid, cookie_notice_accepted, gdpr[allowed_cookies]


DoubleClick by Google refers to the DoubleClick Digital Marketing platform which is a separate division within Google. This is Google’s most advanced advertising tools set, which includes five interconnected platform components.

DoubleClick Campaign Manager: the ad-serving platform, called an Ad Server, that delivers ads to your customers and measures all online advertising, even across screens and channels.

DoubleClick Bid Manager – the programmatic bidding platform for bidding on high-quality ad inventory from more than 47 ad marketplaces including Google Display Network.

DoubleClick Ad Exchange: the world’s largest ad marketplace for purchasing display, video, mobile, Search and even Facebook inventory.

DoubleClick Search: is more powerful than AdWords and used for purchasing search ads across Google, Yahoo, and Bing.

DoubleClick Creative Solutions: for designing, delivering and measuring rich media (video) ads, interactive and expandable ads.



The _ga is asssociated with Google Universal Analytics - which is a significant update to Google's more commonly used analytics service. This cookie is used to distinguish unique users by assigning a randomly generated number as a client identifier. It is included in each page request in a site and used to calculate visitor, session and campaign data for the sites analytics reports. By default it is set to expire after 2 years, although this is customisable by website owners.

The _gat global object is used to create and retrieve tracker objects, from which all other methods are invoked. Therefore the methods in this list should be run only off a tracker object created using the _gat global variable. All other methods should be called using the _gaq global object for asynchronous tracking.

_gid works as a user navigates between web pages, they can use the gtag.js tagging library to record information about the page the user has seen (for example, the page's URL) in Google Analytics. The gtag.js tagging library uses HTTP Cookies to "remember" the user's previous interactions with the web pages.

_ga, _gat, _gid