Malicious Code Injection in rowrap Package - Adware Distribution

rowrap Updated 18 Mar 2026

Summary

18/03/2026
CRITICAL
No i
Critical
Not published

MAL-2026-1544: Malicious code in rowrap (PyPI). Affects rowrap versions 1.0.0 – 1.21. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

Background

The rowrap package, available on PyPI, is designed for specific functionalities within Python applications. However, it has been compromised to include malicious code that downloads and executes harmful scripts. This vulnerability poses a significant risk to users, as it can lead to the installation of adware and other malicious software on their systems.

Vulnerability Detail

The vulnerability originates from a malicious actor, identified as kam193, who has embedded code within the rowrap package that triggers the download and execution of a remote script containing malware. This script is activated by specific file types, such as PTH files, although the presence of these files is not always necessary for the exploit to occur. The malicious activity is part of a broader campaign aimed at distributing adware, which can compromise user privacy and system integrity.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

pip uninstall rowrap

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary workaround, users can avoid using the rowrap package until a secure version is confirmed. Additionally, users should monitor their systems for any unusual activity and consider using security software to detect and remove potential adware.

Conclusion

The rowrap package has been compromised to include malicious code that can lead to adware installation. Users are advised to update to the latest version and monitor their systems for any unusual activity. Utilizing tools like Vulert can provide additional security by alerting users to potential vulnerabilities in their applications.

See every vulnerability recorded for rowrap →

Share this vulnerability

FAQ

rowrap is a Python package available on PyPI that serves specific functionalities in Python applications.

The vulnerability allows malicious code to be executed, which can lead to the installation of adware and compromise user privacy.

You can use Vulert, which monitors and alerts for open-source vulnerabilities in real-time. Visit Vulert Scanner to check your application without needing to sign up.

If you have installed an affected version of rowrap, immediately update to the latest patched version using pip install --upgrade rowrap.

Regularly updating packages, using tools like Vulert for monitoring vulnerabilities, and reviewing package sources before installation can help mitigate risks.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

pip uninstall rowrap

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback