Security Research

High-risk Linux server commands: a comprehensive security guide

Know what to block outright, what to send for approval, and what to alert on — before the incident.

Marcus Chen5 min read

Linux administration requires powerful commands. Security requires those commands to be attributable, policy-governed, and recoverable when someone runs them at 02:00 from the wrong account. This reference groups high-risk commands by category and suggests default actions for gateway command control.

Destructive commands are legitimate in maintenance — catastrophic in the wrong hands. Classify risk, assign actions, and enforce at the gateway before the incident.

Session recording tells you what happened after the fact. Command filtering can prevent or pause execution before damage occurs. Pair deny rules with JIT change tickets so maintenance windows have pre-approved scope.

Filesystem and disk

Command              | Risk                          | Suggested action
rm, rm -rf           | Irreversible data deletion    | Deny on production tags
mv (bulk/rename root)| Data loss or path hijack      | Review during change windows
mkfs, fdisk, parted  | Destroys partition tables     | Deny on production
wipefs, dd           | Raw disk overwrite            | Deny on production
shred                | Secure delete                 | Review with approver

System lifecycle

Command                    | Risk                    | Suggested action
shutdown, reboot, halt     | Service outage          | Review; Alert SOC on prod
init 0, init 6             | Immediate state change  | Review with approver
systemctl isolate          | Drops to rescue target  | Deny on production
kill -9 on pid 1           | Kernel panic risk       | Deny on production

Users and permissions

Command                    | Risk                    | Suggested action
userdel, groupdel          | Account removal         | Review based on role
usermod -aG wheel/sudo     | Privilege escalation    | Deny or Review
passwd (other users)       | Credential takeover     | Review with approver
chmod -R 777               | ACL destruction         | Deny on production
chattr -i                  | Removes immutability    | Deny on production

Network

Command                    | Risk                    | Suggested action
iptables -F, nft flush     | Opens firewall          | Deny on production
ip link set down           | Interface blackout      | Deny on production
ufw disable                | Disables host firewall  | Deny; Alert always
route del default          | Connectivity loss       | Review with approver

Package and service management

Command                    | Risk                    | Suggested action
yum remove / apt purge *   | Removes critical packages| Review during windows
systemctl stop sshd        | Locks out admin access  | Deny on production
systemctl disable firewalld| Persistent exposure     | Deny on production

Data exfiltration indicators

Command                    | Risk                    | Suggested action
nc -l, python -m http.server| Covert transfer        | Alert SOC
tar cf - / | ssh external | Bulk export             | Alert; Review
curl -T /etc/shadow        | Credential exfil        | Deny; Alert SOC

Action matrix

  • Deny — irreversible or widely destructive; block at gateway before execution.
  • Review — context-dependent; pause for human approval with ticket reference.
  • Alert — allow but notify SOC and attach to session export.
  • Accept — explicit exception with documented business reason and expiry.

Implementation in Ixiea

Navigation: Admin console → Access Control → Command Filter → Create. Build command groups with literal matches first — rm -rf, mkfs, iptables -F — before regex. Enable case-insensitive matching for mixed-case evasion attempts.

Bind groups to access policies targeting production asset tags. Start two weeks in Alert mode to observe false positives, then promote confirmed destructive patterns to Deny. Keep Review for ambiguous operations like ALTER TABLE or package upgrades during maintenance windows.

Pair command rules with JIT tickets: Admin console → Access Control → Access Policy → enable Just-in-Time with change ticket ID as a required field during approved windows.

Tuning and false positives

  • Developers grep-ing rm in scripts should not trigger Deny — scope rules to interactive shells where possible.
  • DBAs running mkfs in staging need Review, not Deny — use environment tags.
  • Document accepted exceptions with expiry dates; review quarterly.
  • Export blocked command attempts to SIEM for trend analysis.
More postsSecurity Research