CVE-2017-1000097
https://notcve.org/view.php?id=CVE-2017-1000097
On Darwin, user's trust preferences for root certificates were not honored. If the user had a root certificate loaded in their Keychain that was explicitly not trusted, a Go program would still verify a connection using that root certificate. En Darwin, no se verifican las preferencias de confianza del usuario para certificados root. Si el usuario tiene un certificado root cargado en su Keychain que se ha definido explícitamente como no fiable, un programa Go podría aun verificar una conexión utilizando ese certificado root. • https://github.com/golang/go/issues/18141 https://go-review.googlesource.com/c/33721 https://groups.google.com/forum/#%21msg/golang-dev/4NdLzS8sls8/uIz8QlnIBQAJ • CWE-295: Improper Certificate Validation •
CVE-2017-8932 – golang: Elliptic curves carry propagation issue in x86-64 P-256
https://notcve.org/view.php?id=CVE-2017-8932
A bug in the standard library ScalarMult implementation of curve P-256 for amd64 architectures in Go before 1.7.6 and 1.8.x before 1.8.2 causes incorrect results to be generated for specific input points. An adaptive attack can be mounted to progressively extract the scalar input to ScalarMult by submitting crafted points and observing failures to the derive correct output. This leads to a full key recovery attack against static ECDH, as used in popular JWT libraries. Un error en la implementación de la biblioteca estándar ScalarMult de curve P-256 para arquitecturas amd64 en Go anterior a versión 1.7.6 y 1.8.x anterior a versión 1.8.2, causa resultados incorrectos para ser generados por puntos de entrada específicos. Se puede montar un ataque adaptativo para extraer progresivamente la entrada scalar hacia ScalarMult mediante el envío de puntos creados y observando fallos para la salida correcta derivada. • http://lists.opensuse.org/opensuse-updates/2017-06/msg00079.html http://lists.opensuse.org/opensuse-updates/2017-06/msg00080.html https://access.redhat.com/errata/RHSA-2017:1859 https://bugzilla.redhat.com/show_bug.cgi?id=1455191 https://github.com/golang/go/commit/9294fa2749ffee7edbbb817a0ef9fe633136fa9c https://github.com/golang/go/issues/20040 https://go-review.googlesource.com/c/41070 https://groups.google.com/d/msg/golang-announce/B5ww0iFt1_Q/TgUFJV14BgAJ https://lists.fedoraproject.org • CWE-682: Incorrect Calculation •
CVE-2016-5386 – Go: sets environmental variable based on user supplied Proxy request header
https://notcve.org/view.php?id=CVE-2016-5386
The net/http package in Go through 1.6 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and therefore does not protect CGI applications from the presence of untrusted client data in the HTTP_PROXY environment variable, which might allow remote attackers to redirect a CGI application's outbound HTTP traffic to an arbitrary proxy server via a crafted Proxy header in an HTTP request, aka an "httpoxy" issue. El paquete net/http en Go hasta la versión 1.6 no intenta abordar los conflictos de espacio de nombres de RFC 3875 sección 4.1.18 y por lo tanto no protege aplicaciones CGI de la presencia de datos de clientes no confiables en ambiente variable de HTTP_PROXY, lo que podría permitir a atacantes remotos redireccionar el tráfico HTTP saliente de una aplicación CGI a un servidor proxy arbitrario a través de una cabecera Proxy manipulada en una petición HTTP, también conocido como un problema "httpoxy". An input-validation flaw was discovered in the Go programming language built in CGI implementation, which set the environment variable "HTTP_PROXY" using the incoming "Proxy" HTTP-request header. The environment variable "HTTP_PROXY" is used by numerous web clients, including Go's net/http package, to specify a proxy server to use for HTTP and, in some cases, HTTPS requests. This meant that when a CGI-based web application ran, an attacker could specify a proxy server which the application then used for subsequent outgoing requests, allowing a man-in-the-middle attack. • http://rhn.redhat.com/errata/RHSA-2016-1538.html http://www.kb.cert.org/vuls/id/797896 http://www.oracle.com/technetwork/security-advisory/cpujul2017-3236622.html http://www.oracle.com/technetwork/topics/security/linuxbulletinjul2016-3090544.html https://bugzilla.redhat.com/show_bug.cgi?id=1353798 https://h20566.www2.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbhf03770en_us https://httpoxy.org https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproje • CWE-20: Improper Input Validation CWE-284: Improper Access Control •
CVE-2016-3959 – golang: infinite loop in several big integer routines
https://notcve.org/view.php?id=CVE-2016-3959
The Verify function in crypto/dsa/dsa.go in Go before 1.5.4 and 1.6.x before 1.6.1 does not properly check parameters passed to the big integer library, which might allow remote attackers to cause a denial of service (infinite loop) via a crafted public key to a program that uses HTTPS client certificates or SSH server libraries. La función Verify en crypto/dsa/dsa.go en Go en versiones anteriores a 1.5.4 y 1.6.x en versiones anteriores a 1.6.1 no comprueba correctamente los parámetros pasados a la gran librería de entero, lo que podría permitir a atacantes remotos provocar una denegación de servicio (bucle infinito) a través de una clave pública manipulada a un programa que usa certificados de clientes HTTPS o servidores de librerías SSH. A denial of service vulnerability was found in Go's verification of DSA public keys. An attacker could provide a crafted key to HTTPS client or SSH server libraries which would cause the application to enter an infinite loop. • http://lists.fedoraproject.org/pipermail/package-announce/2016-April/182526.html http://lists.fedoraproject.org/pipermail/package-announce/2016-April/183106.html http://lists.fedoraproject.org/pipermail/package-announce/2016-April/183137.html http://lists.opensuse.org/opensuse-updates/2016-05/msg00077.html http://rhn.redhat.com/errata/RHSA-2016-1538.html http://www.openwall.com/lists/oss-security/2016/04/05/1 http://www.openwall.com/lists/oss-security/2016/04/05/2 https://go-review& • CWE-20: Improper Input Validation CWE-835: Loop with Unreachable Exit Condition ('Infinite Loop') •