A major revelation has rocked the cybersecurity world, with researchers discovering that Easyjson, an essential open-source Go library responsible for JSON serialization, is now fully controlled by developers based in Moscow, employed by VK Group, one of Russia’s largest tech conglomerates.
Easyjson is deeply embedded in core cloud-native technologies, such as Kubernetes, Helm, and Istio, meaning its shift in control to foreign hands raises significant concerns across global industries.
This unsettling discovery prompts urgent questions about the security of software supply chains, especially considering Easyjson’s extensive use in critical U.S. government systems, Fortune 500 corporations, and vital Cloud Native Computing Foundation (CNCF) projects. Its role in enhancing the speed and efficiency of JSON encoding and decoding has made it indispensable, particularly in high-performance environments like financial platforms and data analytics systems.
Researchers at Hunted Labs made the alarming connection between VK Group and Easyjson during a security audit for a U.S. government client. Their findings revealed that over 85% of all code contributions to the Easyjson repository were made by Moscow-based developers tied to VK Group—a company that is under scrutiny for its ties to Russian state security and is currently subject to international sanctions.
The situation is particularly concerning given VK’s known history of cooperating with the Kremlin and sharing user data with Russian authorities. As a company controlled by state-owned entities via Gazprom Media, VK’s leadership is also subject to both U.S. and E.U. sanctions, further intensifying concerns over potential security risks.
The scale of foreign control over this critical open-source library raises red flags about potential vulnerabilities in national security, especially in the context of Russia’s ongoing cyber operations targeting Western institutions. The library’s pervasive integration into key infrastructure means that removing or replacing it would cause significant disruption to dependent systems.
Potential Exploitation Risks
Easyjson’s role as a Go-based serializer places it in a particularly sensitive position within software architectures, opening up numerous exploitation possibilities.
While no direct evidence of malicious activity has been found, the library’s strategic placement in critical systems presents unique security challenges. For example, Easyjson’s ability to generate custom data marshalers provides deep access to sensitive data structures, such as user credentials and private tokens. These marshalers could be subtly manipulated to exfiltrate specific data fields while allowing normal functionality, making detection incredibly difficult.
Here’s an example of how Easyjson can generate customized marshaling functions with access to highly sensitive data:
go
// Example of how Easyjson generates custom marshalers
// that have deep access to data structures
func (j *SensitiveData) MarshalJSON() ([]byte, error) {
// Custom generated code that processes all data fields
// with potential for subtle manipulation
return json.Marshal(&struct{
UserID string json:"user_id"
AuthToken string json:"auth_token"
PrivateData string json:"private_data"
}{
UserID: j.UserID,
AuthToken: j.AuthToken,
PrivateData: j.PrivateData,
})
}
In this case, the serialized data might contain sensitive information like authentication tokens or proprietary details. A compromised Easyjson library could quietly exfiltrate this information without triggering alerts, making the risk even more significant.
Hunted Labs warns that the primary concern is not necessarily the integrity of the current code, but the ongoing, trusted access provided by developers linked to entities that are under international sanctions.
To mitigate these risks, experts suggest forking and independently maintaining the library, switching to alternative JSON serialization solutions with more diverse development communities, or supporting the creation of a community-driven alternative with transparent governance.




