Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

zwan_cal_jan1RubyGems

Advisory published Updated

zwan_cal_jan1 is a confirmed malicious RubyGems package (MAL-2026-9837) that executes malicious code on install (malicious version 0.0.131). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in zwan_cal_jan1 (RubyGems)

MAL-2026-9837
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
gem uninstall zwan_cal_jan1

Malicious versions

1 flagged
0.0.131

Indicators of compromise (SHA-256)

5d13df4dd29eb0277390a1accb79dbcaa7195410d604cf519f6a2252102a0cc3
b3880bd4d4eb31a32fd9595882e148a549e9dcfb6c3a7c2968eede2e6ec30abf

Detection & response playbook

Malicious package
  1. Find it

    Search your lockfiles and build artifacts for zwan_cal_jan1 (version 0.0.131).

  2. If you installed it — respond

    Remove zwan_cal_jan1 from your project and lockfile, then assume any secrets accessible to the build or runtime were exposed: rotate API keys, tokens, and credentials, and audit for unexpected outbound activity or persistence.

  3. Did it already run?

    If zwan_cal_jan1 was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.

Frequently asked questions

No. zwan_cal_jan1 on RubyGems has been identified as a malicious package (version 0.0.131 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

RLMA-2026-04488RLUA-2026-10426

References

Credits

  • ReversingLabs · finder

Detect & block this

O3 blocks zwan_cal_jan1-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the malicious outbound activity and severs the channel.

Explore

zwan_cal_jan1 (RubyGems) malicious package — MAL-2026-9837 | O3 Security