1 distinct threat actor Mallory has associated with this family across public reporting. Open in Mallory to see the full evidence chain and overlapping campaigns.
Persistence: .claude/ , .vscode/ , and the gh-token-monitor dead-hand mechanism (the monitor must be removed before rotating tokens, otherwise it may execute rm -rf ~/ ).
14 distinct techniques documented for this family, organized by ATT&CK tactic.
~/.config/systemd/user/gh-token-monitor.service ~/Library/LaunchAgents/com.user.gh-token-monitor.plist ~/.local/share/updater/update.py ~/.local/share/updater/ update-monitor.service
systemctl --user stop gh-token-monitor.service ... rm -f ~/.config/systemd/user/gh-token-monitor.service
~/.config/systemd/user/gh-token-monitor.service ~/Library/LaunchAgents/com.user.gh-token-monitor.plist ~/.local/share/updater/update.py ~/.local/share/updater/ update-monitor.service
systemctl --user stop gh-token-monitor.service ... rm -f ~/.config/systemd/user/gh-token-monitor.service
Install a background service named "gh-token-monitor"
Dead-man’s switch : service systemd (Linux) ou LaunchAgent macOS (com.user.gh-token-monitor) qui surveille le token GitHub volé toutes les 60 secondes
Dead-man’s switch : service systemd (Linux)... qui surveille le token GitHub volé toutes les 60 secondes et exécute un handler distant via eval lors de la révocation
On macOS, unload gh-token-monitor with launchctl bootout ... ~/Library/LaunchAgents/com.user.gh-token-monitor.plist ... On macOS, unload kitty-monitor ... ~/Library/LaunchAgents/com.user.kitty-monitor.plist
npm, PyPI, RubyGems, JFrog/Artifactory, GitHub Actions, and AI-tool persistence logic. gh-token-monitor dead-man switch behavior. GitHub Actions secret-dump workflow logic using VARIABLE_STORE and format-results.txt .
~/.config/systemd/user/gh-token-monitor.service ~/Library/LaunchAgents/com.user.gh-token-monitor.plist ~/.local/share/updater/update.py ~/.local/share/updater/ update-monitor.service
systemctl --user stop gh-token-monitor.service ... rm -f ~/.config/systemd/user/gh-token-monitor.service
Install a background service named "gh-token-monitor"
Dead-man’s switch : service systemd (Linux) ou LaunchAgent macOS (com.user.gh-token-monitor) qui surveille le token GitHub volé toutes les 60 secondes
Dead-man’s switch : service systemd (Linux)... qui surveille le token GitHub volé toutes les 60 secondes et exécute un handler distant via eval lors de la révocation
On macOS, unload gh-token-monitor with launchctl bootout ... ~/Library/LaunchAgents/com.user.gh-token-monitor.plist ... On macOS, unload kitty-monitor ... ~/Library/LaunchAgents/com.user.kitty-monitor.plist
If the token is revoked (HTTP 40x), it executes rm -rf ~/.
npm, PyPI, RubyGems, JFrog/Artifactory, GitHub Actions, and AI-tool persistence logic. gh-token-monitor dead-man switch behavior. GitHub Actions secret-dump workflow logic using VARIABLE_STORE and format-results.txt .
Independent malware analysis... indicates that the encrypted second stage targets GitHub and npm tokens... It also reports a gh-token-monitor persistence mechanism that watches a stolen GitHub token and executes a supplied handler when the token stops working.
Large-scale credential and secret leakage, including CI/CD, cloud API keys, SSH keys, and more, is probable for any environment exposed.
npm, PyPI, RubyGems, JFrog/Artifactory, GitHub Actions, and AI-tool persistence logic. gh-token-monitor dead-man switch behavior. GitHub Actions secret-dump workflow logic using VARIABLE_STORE and format-results.txt .
...using GitHub Actions cache poisoning and token exfiltration techniques... to steal CI/CD, cloud, and developer credentials.
The worm installs a background process (identified as gh-token-monitor in some variants) that polls the GitHub API every 60 seconds using the stolen token.
Attacker C2 infrastructure includes custom domains. Session messaging, and GitHub repo exfiltration, with redundant failovers ensures persistence and stealth.
Install a background service named "gh-token-monitor" that acts as a wiper by removing all data ("rm -rf ~/; rm -rf ~/Documents") if the stolen GitHub token is revoked by the developer.
6 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.