Skip to content

GHSA-52h8-c876-989c CVE-2023-4127 GO-2023-1995

Answer has Race Condition within a Thread

Medium Go
Severity
6.5 / 10
Medium · CVSS 3.0
Exploit chance (EPSS)
0.48%
Chance of exploitation in the next 30 days. Higher than 41.75% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
CWE-366 Race Condition within a Thread
Fix
1.1.1
Upgrade github.com/answerdev/answer to this version or later

Description

Race Condition within a Thread in GitHub repository answerdev/answer prior to v1.1.1.

Affected versions

Go

PackageVulnerableFixed in
github.com/answerdev/answer
< 1.1.1
1.1.1

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

github.com/answerdev/answer Go → 1.1.1

go
go get github.com/answerdev/answer@v1.1.1 && go mod tidy

Severity breakdown

CVSS 3.0 6.5

CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
None

Weakness

CWE-366: Race Condition within a Thread

If two threads of execution use a resource simultaneously, there exists the possibility that resources may be used while invalid, in turn making the state of execution undefined.

How to prevent it
  • Architecture and Design: Use locking functionality. This is the recommended solution. Implement some form of locking mechanism around code which alters or reads persistent data in a multithreaded environment.
  • Architecture and Design: Create resource-locking validation checks. If no inherent locking mechanisms exist, use flags and signals to enforce your own blocking scheme when resources are being used by other threads of execution.

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-pj2h-85jq-g5vg
Answer Missing Authentication for Critical Function
High Also affects github.com/answerdev/answer
GHSA-ggcf-hwxp-rc77
Answer Insufficient Session Expiration vulnerability
High Also affects github.com/answerdev/answer
GHSA-j63x-f657-2m9g
Answer has Weak Password Requirements
High Also affects github.com/answerdev/answer
GHSA-v9vc-7x69-c2x8
Answer Missing Authorization vulnerability
Medium Also affects github.com/answerdev/answer
GHSA-qmqw-r4x6-3w2q
Answer Missing Authorization vulnerability
Low Also affects github.com/answerdev/answer
GHSA-j97g-77fj-9c4p
Answer vulnerable to account takeover because password reset links do not expire
High Also affects github.com/answerdev/answer
GHSA-65v8-6pvw-jwvq
Answer vulnerable to Insertion of Sensitive Information Into Sent Data
Medium Also affects github.com/answerdev/answer
GHSA-8jg3-rx43-3fv4
Answer vulnerable to Exposure of Sensitive Information Through Metadata
Medium Also affects github.com/answerdev/answer
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor