Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Supports SSH and NFS clients. Uses D-Bus inhibit to prevent sleep/suspend.
Note: For full functionality you must run this as root to allow access to /proc/.... in order to determine if SSH sessions are active or idle. Depending on Linux configuration, access to the system D-Bus may also require root. In this case the program must be run as root. Installation instructions are for a service running as root.
Tested on Fedora 39 with NFSv4.
sudo dnf install python3-pystemd
prevent-sleep
cd /opt
sudo python -m venv prevent_sleep --system-site-packages --upgrade-deps
sudo prevent_sleep/bin/python -m pip install --upgrade prevent-sleep # or use path to sourcedir
prevent_sleep/bin/prevent-sleep --version
sudo prevent_sleep/bin/prevent-sleep --install-service
sudo systemctl daemon-reload
sudo systemctl enable --now prevent-sleep
Note: Use systemd-inhibit
to check if this or other programs are preventing suspend.
[xxx@yyy opt]$ systemd-inhibit
WHO UID USER PID COMM WHAT WHY MODE
ModemManager 0 root 1197 ModemManager sleep ModemManager needs to reset devices delay
NetworkManager 0 root 1239 NetworkManager sleep NetworkManager needs to turn off networks delay
UPower 0 root 1794 upowerd sleep Pause device polling delay
prevent-sleep 0 root 4678 prevent-sleep sleep SSH: 2 active clients [(3567, 'john'), (4007, 'jane')] block
gdm 42 gdm 1846 gsd-power handle-lid-switch External monitor attached or configuration changed recently block
gdm 42 gdm 1846 gsd-power sleep GNOME needs to lock the screen delay
6 inhibitors listed.
[xxx@yyy opt]$ systemd-inhibit
WHO UID USER PID COMM WHAT WHY MODE
ModemManager 0 root 1197 ModemManager sleep ModemManager needs to reset devices delay
NetworkManager 0 root 1239 NetworkManager sleep NetworkManager needs to turn off networks delay
UPower 0 root 1794 upowerd sleep Pause device polling delay
prevent-sleep 0 root 4678 prevent-sleep sleep NFS: 1 clients [('4', '192.168.4.107, Linux NFSv4.2 mylaptop')] block
prevent-sleep 0 root 4678 prevent-sleep sleep SSH: No activity. Will remove block at 2024-01-28T19:36:51 block
gdm 42 gdm 1846 gsd-power handle-lid-switch External monitor attached or configuration changed recently block
gdm 42 gdm 1846 gsd-power sleep GNOME needs to lock the screen delay
7 inhibitors listed.
Note that only SSH clients with traffic during the last check period will prevent sleep!
sudo dnf install systemd-devel python3{.10,.11,.12}-devel # For all python versions listen in noxfile.py
pip install nox
nox # In root of checked out sources
Note that the test is rather rudimentary. It is not mocked (yet) so running it will require D-Bus access and it will fail if being run on a server with NFS clients (if not run as root).
This program [https://pypi.org/project/sleep-inhibitor/], which I found after writing prevent-sleep
, does a similar thing.
FAQs
Prevent sleep/suspend when there are (active) SSH or NFS clients.
We found that prevent-sleep 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.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.