github.com/gin-gonic/gin known bugs
go8 known bugs in github.com/gin-gonic/gin, with affected versions, fixes and workarounds. Sourced from upstream issue trackers.
8
bugs
Known bugs
| Severity | Affected | Fixed in | Title | Status | Source |
|---|---|---|---|---|---|
| high | any | 1.7.7 | Inconsistent Interpretation of HTTP Requests in github.com/gin-gonic/gin When gin is exposed directly to the internet, a client's IP can be spoofed by setting the X-Forwarded-For header. This affects all versions of package github.com/gin-gonic/gin under 1.7.7. | fixed | osv:GHSA-h395-qcrw-5vmq |
| high | any | 1.6.0 | Gin's default logger allows unsanitized input that can allow remote attackers to inject arbitrary log lines Gin is a HTTP web framework written in Go (Golang). Unsanitized input in the default logger in github.com/gin-gonic/gin before v1.6.0 allows remote attackers to inject arbitrary log lines. | fixed | osv:GHSA-6vm3-jj99-7229 |
| medium | 1.3.1-0.20190301021747-ccb9e902956d | 1.9.1 | Improper handling of filenames in Content-Disposition HTTP header in github.com/gin-gonic/gin The filename parameter of the Context.FileAttachment function is not properly sanitized. A maliciously crafted filename can cause the Content-Disposition header to be sent with an unexpected filename value or otherwise modify the Content-Disposition header. For example, a filename of "setup.bat";x=.txt" will be sent as a file named "setup.bat".
If the FileAttachment function is called with names provided by an untrusted source, this may permit an attacker to cause a file to be served with a name different than provided. Maliciously crafted attachment file name can modify the Content-Disposition header. | fixed | osv:GO-2023-1737 |
| medium | any | 1.7.7 | Inconsistent interpretation of HTTP Requests in github.com/gin-gonic/gin Due to improper HTTP header sanitization, a malicious user can spoof their source IP address by setting the X-Forwarded-For header. This may allow a user to bypass IP based restrictions, or obfuscate their true source. | fixed | osv:GO-2021-0052 |
| medium | any | 1.6.0 | Arbitrary log line injection in github.com/gin-gonic/gin The default Formatter for the Logger middleware (LoggerConfig.Formatter), which is included in the Default engine, allows attackers to inject arbitrary log entries by manipulating the request path. | fixed | osv:GO-2020-0001 |
| medium | any | 1.9.0 | Improper input validation in github.com/gin-gonic/gin Versions of the package github.com/gin-gonic/gin before version 1.9.0 are vulnerable to Improper Input Validation by allowing an attacker to use a specially crafted request via the X-Forwarded-Prefix header, potentially leading to cache poisoning.
**Note:** Although this issue does not pose a significant threat on its own it can serve as an input vector for other more impactful vulnerabilities. However, successful exploitation may depend on the server configuration and whether the header is used in the application logic. | fixed | osv:GHSA-3vp4-m3rf-835h |
| medium | 1.3.1-0.20190301021747-ccb9e902956d | 1.9.1 | Gin Web Framework does not properly sanitize filename parameter of Context.FileAttachment function The filename parameter of the Context.FileAttachment function is not properly sanitized. A maliciously crafted filename can cause the Content-Disposition header to be sent with an unexpected filename value or otherwise modify the Content-Disposition header. For example, a filename of "setup.bat";x=.txt" will be sent as a file named "setup.bat".
If the FileAttachment function is called with names provided by an untrusted source, this may permit an attacker to cause a file to be served with a name different than provided. Maliciously crafted attachment file name can modify the Content-Disposition header. | fixed | osv:GHSA-2c4m-59x9-fr2g |
| critical | any | 1.6.0 | Gin mishandles a wildcard at the end of an origin string parseWildcardRules in Gin-Gonic CORS middleware before 1.6.0 mishandles a wildcard at the end of an origin string, e.g., https://example.community/* is allowed when the intention is that only https://example.com/* should be allowed, and http://localhost.example.com/* is allowed when the intention is that only http://localhost/* should be allowed. | fixed | osv:GHSA-869c-j7wc-8jqv |
API access
Get this data programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/bugs/go/github.com/gin-gonic/gin