Arch Linux Security Advisory ASA-202107-18
=========================================
Severity: High
Date    : 2021-07-06
CVE-ID  : CVE-2021-22223 CVE-2021-22224 CVE-2021-22225 CVE-2021-22226
          CVE-2021-22227 CVE-2021-22228 CVE-2021-22229 CVE-2021-22230
          CVE-2021-22231 CVE-2021-22232 CVE-2021-31799
Package : gitlab
Type    : multiple issues
Remote  : Yes
Link    : https://security.archlinux.org/AVG-2125

Summary
======
The package gitlab before version 14.0.3-1 is vulnerable to multiple
issues including cross-site request forgery, access restriction bypass,
arbitrary code execution, arbitrary command execution, cross-site
scripting, information disclosure, content spoofing and denial of
service.

Resolution
=========
Upgrade to 14.0.3-1.

# pacman -Syu "gitlab>=14.0.3-1"

The problems have been fixed upstream in version 14.0.3.

Workaround
=========
None.

Description
==========
- CVE-2021-22223 (cross-site scripting)

Client-Side code injection through a Feature Flag name in GitLab CE/EE
starting with 11.9 and before version 14.0.2 allows a specially crafted
feature flag name to PUT requests on behalf of other users via clicking
on a link.

- CVE-2021-22224 (cross-site request forgery)

A cross-site request forgery vulnerability in the GraphQL API in GitLab
since version 13.12 and before version 14.0.2 allowed an attacker to
call mutations as the victim.

- CVE-2021-22225 (cross-site scripting)

Insufficient input sanitization in markdown in GitLab version 13.11 and
up before version 14.0.2 allows an attacker to exploit a stored cross-site scripting vulnerability via specially-crafted markdown.

- CVE-2021-22226 (access restriction bypass)

Under certain conditions, some users were able to push to protected
branches that were restricted to deploy keys in GitLab CE/EE since
version 13.9 and before version 14.0.2.

- CVE-2021-22227 (cross-site scripting)

A reflected cross-site script vulnerability in GitLab before version
14.0.2 allowed an attacker to send a malicious link to a victim and
trigger actions on their behalf if they clicked it.

- CVE-2021-22228 (information disclosure)

An issue has been discovered in GitLab affecting all versions before
14.0.2. Improper access control allows unauthorised users to access
project details using Graphql.

- CVE-2021-22229 (information disclosure)

An issue has been discovered in GitLab CE/EE affecting all versions
starting with 12.8 and before 14.0.2. Under a special condition it was
possible to access data of an internal repository through a project
fork done by a project member.

- CVE-2021-22230 (arbitrary code execution)

Improper code rendering while rendering merge requests could be
exploited to submit malicious code. This vulnerability affects GitLab
CE/EE 9.3 and later up to 14.0.2.

- CVE-2021-22231 (denial of service)

A denial of service on the user's profile page is found starting with
GitLab CE/EE 8.0 and before 14.0.2 that allows an attacker to reject
access to their profile page by using a specially crafted username.

- CVE-2021-22232 (content spoofing)

HTML injection was possible via the full name field before version
14.0.2 in GitLab CE.

- CVE-2021-31799 (arbitrary command execution)

RDoc before version 6.3.1, as bundled with Ruby before version 2.7.4
and 2.6.8 as well as GitLab before version 14.0.2, used to call
Kernel#open to open a local file. If a Ruby project has a file whose
name starts with "|" and ends with "tags", the command following the
pipe character is executed. A malicious Ruby project could exploit it
to run an arbitrary command execution against a user who attempts to
run the rdoc command.

Impact
=====
A remote attacker could execute arbitrary code, disclose sensitive
information, bypass access restrictions, or spoof content.

References
=========
https://about.gitlab.com/releases/2021/07/01/security-release-gitlab-14-0-2-released/
https://gitlab.com/gitlab-org/gitlab/-/issues/293946
https://hackerone.com/users/sign_in
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22223.json
https://gitlab.com/gitlab-org/gitlab/-/issues/324397
https://hackerone.com/reports/1122408
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22224.json
https://gitlab.com/gitlab-org/gitlab/-/issues/331051
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22225.json
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22226.json
https://gitlab.com/gitlab-org/gitlab/-/issues/212887
https://hackerone.com/users/sign_in
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22227.json
https://gitlab.com/gitlab-org/gitlab/-/issues/332605
https://hackerone.com/reports/1192460
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22228.json
https://gitlab.com/gitlab-org/gitlab/-/issues/332609
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22229.json
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22230.json
https://gitlab.com/gitlab-org/gitlab/-/issues/26295
https://hackerone.com/reports/475098
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22231.json
https://gitlab.com/gitlab-org/gitlab/-/issues/300713
https://hackerone.com/users/sign_in
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22232.json
https://www.ruby-lang.org/en/news/2021/05/02/os-command-injection-in-rdoc/
https://github.com/ruby/rdoc/commit/a7f5d6ab88632b3b482fe10611382ff73d14eed7
https://github.com/ruby/ruby/commit/483f303d02e768b69e476e0b9be4ab2f26389522
https://github.com/ruby/ruby/commit/fe3c49c9baeeab58304ede915b7edd18ecf360fc
https://security.archlinux.org/CVE-2021-22223
https://security.archlinux.org/CVE-2021-22224
https://security.archlinux.org/CVE-2021-22225
https://security.archlinux.org/CVE-2021-22226
https://security.archlinux.org/CVE-2021-22227
https://security.archlinux.org/CVE-2021-22228
https://security.archlinux.org/CVE-2021-22229
https://security.archlinux.org/CVE-2021-22230
https://security.archlinux.org/CVE-2021-22231
https://security.archlinux.org/CVE-2021-22232
https://security.archlinux.org/CVE-2021-31799

ArchLinux: 202107-18: gitlab: multiple issues

July 9, 2021

Summary

- CVE-2021-22223 (cross-site scripting) Client-Side code injection through a Feature Flag name in GitLab CE/EE starting with 11.9 and before version 14.0.2 allows a specially crafted feature flag name to PUT requests on behalf of other users via clicking on a link.
- CVE-2021-22224 (cross-site request forgery)
A cross-site request forgery vulnerability in the GraphQL API in GitLab since version 13.12 and before version 14.0.2 allowed an attacker to call mutations as the victim.
- CVE-2021-22225 (cross-site scripting)
Insufficient input sanitization in markdown in GitLab version 13.11 and up before version 14.0.2 allows an attacker to exploit a stored cross-site scripting vulnerability via specially-crafted markdown.
- CVE-2021-22226 (access restriction bypass)
Under certain conditions, some users were able to push to protected branches that were restricted to deploy keys in GitLab CE/EE since version 13.9 and before version 14.0.2.
- CVE-2021-22227 (cross-site scripting)
A reflected cross-site script vulnerability in GitLab before version 14.0.2 allowed an attacker to send a malicious link to a victim and trigger actions on their behalf if they clicked it.
- CVE-2021-22228 (information disclosure)
An issue has been discovered in GitLab affecting all versions before 14.0.2. Improper access control allows unauthorised users to access project details using Graphql.
- CVE-2021-22229 (information disclosure)
An issue has been discovered in GitLab CE/EE affecting all versions starting with 12.8 and before 14.0.2. Under a special condition it was possible to access data of an internal repository through a project fork done by a project member.
- CVE-2021-22230 (arbitrary code execution)
Improper code rendering while rendering merge requests could be exploited to submit malicious code. This vulnerability affects GitLab CE/EE 9.3 and later up to 14.0.2.
- CVE-2021-22231 (denial of service)
A denial of service on the user's profile page is found starting with GitLab CE/EE 8.0 and before 14.0.2 that allows an attacker to reject access to their profile page by using a specially crafted username.
- CVE-2021-22232 (content spoofing)
HTML injection was possible via the full name field before version 14.0.2 in GitLab CE.
- CVE-2021-31799 (arbitrary command execution)
RDoc before version 6.3.1, as bundled with Ruby before version 2.7.4 and 2.6.8 as well as GitLab before version 14.0.2, used to call Kernel#open to open a local file. If a Ruby project has a file whose name starts with "|" and ends with "tags", the command following the pipe character is executed. A malicious Ruby project could exploit it to run an arbitrary command execution against a user who attempts to run the rdoc command.

Resolution

Upgrade to 14.0.3-1. # pacman -Syu "gitlab>=14.0.3-1"
The problems have been fixed upstream in version 14.0.3.

References

https://about.gitlab.com/releases/2021/07/01/security-release-gitlab-14-0-2-released/ https://gitlab.com/gitlab-org/gitlab/-/issues/293946 https://hackerone.com/users/sign_in https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22223.json https://gitlab.com/gitlab-org/gitlab/-/issues/324397 https://hackerone.com/reports/1122408 https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22224.json https://gitlab.com/gitlab-org/gitlab/-/issues/331051 https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22225.json https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22226.json https://gitlab.com/gitlab-org/gitlab/-/issues/212887 https://hackerone.com/users/sign_in https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22227.json https://gitlab.com/gitlab-org/gitlab/-/issues/332605 https://hackerone.com/reports/1192460 https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22228.json https://gitlab.com/gitlab-org/gitlab/-/issues/332609 https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22229.json https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22230.json https://gitlab.com/gitlab-org/gitlab/-/issues/26295 https://hackerone.com/reports/475098 https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22231.json https://gitlab.com/gitlab-org/gitlab/-/issues/300713 https://hackerone.com/users/sign_in https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22232.json https://www.ruby-lang.org/en/news/2021/05/02/os-command-injection-in-rdoc/ https://github.com/ruby/rdoc/commit/a7f5d6ab88632b3b482fe10611382ff73d14eed7 https://github.com/ruby/ruby/commit/483f303d02e768b69e476e0b9be4ab2f26389522 https://github.com/ruby/ruby/commit/fe3c49c9baeeab58304ede915b7edd18ecf360fc https://security.archlinux.org/CVE-2021-22223 https://security.archlinux.org/CVE-2021-22224 https://security.archlinux.org/CVE-2021-22225 https://security.archlinux.org/CVE-2021-22226 https://security.archlinux.org/CVE-2021-22227 https://security.archlinux.org/CVE-2021-22228 https://security.archlinux.org/CVE-2021-22229 https://security.archlinux.org/CVE-2021-22230 https://security.archlinux.org/CVE-2021-22231 https://security.archlinux.org/CVE-2021-22232 https://security.archlinux.org/CVE-2021-31799

Severity
CVE-2021-22227 CVE-2021-22228 CVE-2021-22229 CVE-2021-22230
CVE-2021-22231 CVE-2021-22232 CVE-2021-31799
Package : gitlab
Type : multiple issues
Remote : Yes
Link : https://security.archlinux.org/AVG-2125

Workaround

None.

Related News