Eran Orzel
May 18 · 4 min read
Codecov hackers gained access to Monday.com source code
Monday.com has recently disclosed that it was impacted by the Codecov supply-chain attack according to BleepingComputer. After their investigation into the Codecov breach, monday.com found that unauthorized actors had gained access to a read-only copy of their source code.
Monday.com is the latest victim of this attack which has already affected hundreds of companies including HashiCorp, Confluent, Twilio and Rapid7, and others.
The breach allowed a malicious third-party to alter a version of the bash uploader script to potentially export information subject to continuous integration (CI) to a third-party server, which according to Codecov, could potentially affect:
One of the main contributors to the weak security posture of development environments is the complexity and knowledge gap created by the number of tools and services taking part in this process. With more than a hundred CI/CD tools to choose from and hundreds of plugins and services connected to those tools, no wonder security teams are having a hard time grasping the amount of information and security requirements of these environments.
It is not rare to see a CI/CD pipeline which is built with 10 to 20 different tools and services, some are cloud services, some open-source tools, and a variety of plugins. It is impossible to manually keep track of this complexity, which might result in an exposure of your environment, code, secrets, and network through those tools and plugins’ vulnerabilities.
The DevOps tools’ sprawl continues as more and more companies introduce their DevOps products and services. Development teams take advantage of these new CI/CD tools and services to build their pipelines and enhance the process but by that they also increase the exposure of their pipeline to risks. Add to it the limited collaboration between development and security teams; and the lack of visibility and control over these services and there is no surprise that CISOs and application security managers look puzzled when asked about their CI/CD pipelines security.
The recent series of supply chain attacks affected tens of thousands of companies. Nowadays, CI/CD pipelines form the backbone of modern-day DevOps operations and as we see this trend continues, we cannot ignore the urgency in protecting customer’s development environments from these pervasive attacks.
The complexity and collaborative nature of these environments provide an easy target for attackers, who can take advantage of vulnerabilities and misconfigurations within pipeline plugins and services. By gaining access to the CI/CD pipelines attackers can hijack your updates, inject malicious code and get a backdoor to your and your customers’ environments.
The latest Codecov and SolarWinds attacks taught us two alarming facts:
Organizations must take proactive action to secure their software supply chain from such attacks and prevent attackers from using these backdoors to their environment. This requires taking into account the complexity of the development environments, the various 3rd party plugins, and services connected to it, and the sophisticated nature of today’s supply chain attacks.
Security and DevOps teams need to watch their pipeline dependencies closely to identify and respond to vulnerabilities and attacks against those addons services and tools.
Whenever a new service is connected to your pipeline, these services need to be checked and monitored constantly for any vulnerability or suspicious activity. Any suspicion should automatically trigger an alert to the appropriate stakeholders that need to verify the integrity of the service and ensure there is no risk associated with it.
The way Argon detect and prevent supply chain attacks like the one that happened to Codecov is through a multi-layered security approach:
Eran Orzel, Argon’s Chief Revenue Officer
Topics: Supply Chain Attack, Codecov breach, SolarWinds Sunburst attack, DevOps Pipeline Breach, DevOps, Codecov, DevSecOps, CI/CD Pipeline Security, CICD security best practices, Codecov leak
DevOps has evolved into a standard practice of software development. According to…
Logging in to websites to access your accounts isn’t as secure as…
Today’s businesses and enterprises are heavily dependent on software and applications for…
Cookie | Duration | Description |
---|---|---|
__hssrc | session | This cookie is set by Hubspot whenever it changes the session cookie. The __hssrc cookie set to 1 indicates that the user has restarted the browser, and if the cookie does not exist, it is assumed to be a new session. |
cookielawinfo-checkbox-advertisement | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category . |
cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
elementor | never | This cookie is used by the website's WordPress theme. It allows the website owner to implement or change the website's content in real-time. |
JSESSIONID | session | Used by sites written in JSP. General purpose platform session cookies that are used to maintain users' state across page requests. |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
Cookie | Duration | Description |
---|---|---|
__cf_bm | 30 minutes | This cookie, set by Cloudflare, is used to support Cloudflare Bot Management. |
__hssc | 30 minutes | HubSpot sets this cookie to keep track of sessions and to determine if HubSpot should increment the session number and timestamps in the __hstc cookie. |
bcookie | 2 years | LinkedIn sets this cookie from LinkedIn share buttons and ad tags to recognize browser ID. |
lang | session | This cookie is used to store the language preferences of a user to serve up content in that stored language the next time user visit the website. |
lidc | 1 day | LinkedIn sets the lidc cookie to facilitate data center selection. |
messagesUtk | 1 year 24 days | This cookie is set by hubspot. This cookie is used to recognize the user who have chatted using the messages tool. This cookies is stored if the user leaves before they are added as a contact. If the returning user visits again with this cookie on the browser, the chat history with the user will be loaded. |
Cookie | Duration | Description |
---|---|---|
__hstc | 1 year 24 days | This is the main cookie set by Hubspot, for tracking visitors. It contains the domain, initial timestamp (first visit), last timestamp (last visit), current timestamp (this visit), and session number (increments for each subsequent session). |
_ga | 2 years | The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors. |
_ga_1HW5JYG3DC | 2 years | This cookie is installed by Google Analytics. |
_gat_UA-191589358-1 | 1 minute | A variation of the _gat cookie set by Google Analytics and Google Tag Manager to allow website owners to track visitor behaviour and measure site performance. The pattern element in the name contains the unique identity number of the account or website it relates to. |
_gcl_au | 3 months | Provided by Google Tag Manager to experiment advertisement efficiency of websites using their services. |
_gid | 1 day | Installed by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously. |
hubspotutk | 1 year 24 days | This cookie is used by HubSpot to keep track of the visitors to the website. This cookie is passed to Hubspot on form submission and used when deduplicating contacts. |
Cookie | Duration | Description |
---|---|---|
bscookie | 2 years | This cookie is a browser ID cookie set by Linked share Buttons and ad tags. |
test_cookie | 15 minutes | The test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies. |
Cookie | Duration | Description |
---|---|---|
AnalyticsSyncHistory | 1 month | No description |
li_gc | 2 years | No description |
UserMatchHistory | 1 month | Linkedin - Used to track visitors on multiple websites, in order to present relevant advertisement based on the visitor's preferences. |