Arch Linux disables AUR package adoption
Security Alert: Arch Linux Halts AUR Orphan Adoption

The Arch Linux DevOps team has officially suspended the ability for users to adopt orphaned packages within the AUR (Arch User Repository). This decision stems from a surge in malicious adoptions and the subsequent injection of harmful commits into the repository.
The Nature of the Attack
According to an analysis by Michael Taggart, a significant number of packages were targeted. The primary payload identified is a Remote-Access Trojan (RAT).
Key characteristics of the malware:
- Command & Control: Utilizes the Tor network to receive instructions.
- Objective: Attempts to exfiltrate a broad spectrum of sensitive user data.
The attack pattern followed a specific lifecycle:
- Attackers registered new accounts.
- They identified and adopted "orphaned" packages (those without a current maintainer).
- They pushed malicious updates to these packages to infect end-user systems.
Timeline and Failed Mitigations
The DevOps team attempted to mitigate these issues previously, but the results were underwhelming.
| Date | Action Taken | Result |
|---|---|---|
| July 13, 2026 | Reopened AUR registration with email verification | |
| July 31, 2026 | Disabled adoption of orphaned packages | Active Mitigation |
The registration process now requires a time-limited token sent via email. However, these tokens remain valid for 24 hours, a window that attackers have successfully exploited.
"the current influx of malicious package adoptions and follow-up commits made via the AUR" — Arch Linux DevOps
Community Discourse
The news sparked a discussion among subscribers regarding how to better secure the repository.
1. Improving Token Logic
User archaic argued that the current token system is too permissive. They suggested that bots can be identified by their speed. If a token is used almost instantly after generation, it is likely not a human.
Mathematically, the system should verify that: (Where represents the minimum reasonable time for a human to check email and enter a code).
A hypothetical check might look like this in code:
def verify_token(token_data):
current_time = time.now()
if (current_time - token_data.created_at) < MIN_HUMAN_DELAY:
return False, "Action too fast; suspected bot."
return True, "Verified."
2. The "Defense in Depth" Philosophy
User davecb emphasized that no single fix is a silver bullet. They referenced the "Orange Book" (Trusted Computer System Evaluation Criteria), which advocated for multiple layers of security:
- Secure login channels
- Blocking of covert channels
- Categorization (e.g., organizational boundaries)
- Security levels (e.g., Unclassified Confidential Secret)
To achieve a truly robust system, the community suggests a checklist of guards:
- Disable orphaned package adoption
- Shorten token expiration windows
- Implement minimum delay for token usage
- Enhance account verification requirements
By implementing a comprehensive suite of protections, the Arch team can move beyond a simple "cat-and-mouse" game with attackers.