portage-ng / portage / dev-lang / ocaml / 4.14.2
portage-ng glsa
3 advisories reference dev-lang/ocaml · none place version 4.14.2 in a vulnerable range
▸ GLSA 202007-48 OCaml: Arbitrary code execution this version unaffected normal remote 2020-07-27

An integer overflow was discovered in OCaml's standard library, possibly allowing arbitrary execution of code.

Announced
2020-07-27
Revised
2020-07-27 (revision 2)
Access
remote
Bugs
#719134
Advisory
https://security.gentoo.org/glsa/202007-48

Affected packages

PackageArchVulnerableUnaffected
dev-lang/ocaml*< 4.09.0>= 4.09.0

Background

OCaml is a high-level, strongly-typed, functional, and object-oriented programming language from the ML family of languages

Description

The caml_ba_deserialize function in byterun/bigarray.c in the standard library of OCaml has an integer overflow.

Impact

A remote attacker could possibly execute arbitrary code with the privileges of the process, or cause a Denial of Service condition.

Workaround

There is no known workaround at this time.

Resolution

All OCaml users should upgrade to the latest version:

# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-lang/ocaml-4.09.0"

References

▸ GLSA 201710-07 OCaml: Privilege escalation this version unaffected high remote 2017-10-08

A vulnerability in OCaml may allow local users to gain root privileges.

Announced
2017-10-08
Revised
2017-10-08
Access
remote
Bugs
#622544
Advisory
https://security.gentoo.org/glsa/201710-07

Affected packages

PackageArchVulnerableUnaffected
dev-lang/ocaml*< 4.04.2>= 4.04.2

Background

OCaml is a high-level, strongly-typed, functional, and object-oriented programming language from the ML family of languages.

Description

A bad sanitization of environment variables: CAML_CPLUGINS, CAML_NATIVE_CPLUGINS and CAML_BYTE_CPLUGINS in the OCaml compiler allows the execution of raised privileges via external code.

Impact

A local attacker, by using specially crafted environment variables, could possibly escalate privileges to the root group.

Workaround

There is no known workaround at this time.

Resolution

All OCaml users should upgrade to the latest version:

# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-lang/ocaml-4.04.2"

References

▸ GLSA 201702-15 OCaml: Buffer overflow and information disclosure this version unaffected normal remote 2017-02-20

A buffer overflow in OCaml might allow remote attackers to obtain sensitive information or crash an OCaml-based application.

Announced
2017-02-20
Revised
2017-02-20
Access
remote
Bugs
#581946
Advisory
https://security.gentoo.org/glsa/201702-15

Affected packages

PackageArchVulnerableUnaffected
dev-lang/ocaml*< 4.04.0>= 4.04.0

Background

OCaml is a high-level, strongly-typed, functional, and object-oriented programming language from the ML family of languages.

Description

It was discovered that OCaml was vulnerable to a runtime bug that, on 64-bit platforms, causes size arguments to internal memmove calls to be sign-extended from 32- to 64-bits before being passed to the memmove function. This leads to arguments between 2GiB and 4GiB being interpreted as larger than they are (specifically, a bit below 2^64), causing a buffer overflow. Further, arguments between 4GiB and 6GiB are interpreted as 4GiB smaller than they should be causing a possible information leak.

Impact

A remote attacker, able to interact with an OCaml-based application, could possibly obtain sensitive information or cause a Denial of Service condition.

Workaround

There is no known workaround at this time.

Resolution

All OCaml users should upgrade to the latest version:

# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-lang/ocam-4.04.0"

Packages which depend on OCaml may need to be recompiled. Tools such as qdepends (included in app-portage/portage-utils) may assist in identifying these packages:

# emerge --oneshot --ask --verbose $(qdepends -CQ dev-lang/ocaml | sed
's/^/=/')

References