Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
This package contains the asynchat module as found in Python versions prior to 3.12.
It is provided so that existing code relying on import asynchat
is able to continue being used without significant refactoring.
The module's source code is taken directly from the Python standard library[1]. The specific version of asynchat that is provided is the last update before the addition of deprecation/removal warnings at import time, and is identical to the version bundled with Python 3.9 (which was the last time the module was meaningfully updated).
Please note that new projects should prefer asyncio.
This version of asynchat
is intended for Python 3.12 or later. Install the module using pip
:
python -m pip install pyasynchat
The module can be installed for earlier Python versions, but it will have no effect, and the standard library version of asynchat
will be used in its place.
Note that installing pyasynchat
will not remove deprecation warnings in Python versions 3.10 and 3.11.
Instead, use the warnings
package:
import warnings
with warnings.catch_warnings():
warnings.simplefilter('ignore', DeprecationWarning)
import asynchat
The module is imported in exactly the same way as the standard library component it replaces:
import asynchat
Note that the PyPI module is named pyasynchat
because creating modules with the same name as those provided by the standard library is not permitted.
For guidance about using the asynchat
module, see the official documentation.
The previous standard library tests have also been replicated into this module. Run them using:
python -m unittest
Due to the fact that this previously built-in module is no-longer supported by the Python core development team, no further maintenance of the asynchat code is intended. This project is only intended to be updated to make changes or improvements to the module packaging.
Python Software Foundation License Version 2
1. Verify this if needed via: diff <(curl --location https://github.com/python/cpython/raw/3.9/Lib/asynchat.py) <(curl --location https://github.com/simonrob/pyasynchat/raw/master/asynchat/__init__.py)
⏎
FAQs
Make asynchat available for Python 3.12 onwards
We found that pyasynchat demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.