8.4 KiB
Variables d'environnement Linux
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Travaillez-vous dans une entreprise de cybersécurité ? Voulez-vous voir votre entreprise annoncée dans HackTricks ? ou voulez-vous avoir accès à la dernière version de PEASS ou télécharger HackTricks en PDF ? Consultez les PLANS D'ABONNEMENT !
- Découvrez The PEASS Family, notre collection exclusive de NFTs
- Obtenez le swag officiel PEASS & HackTricks
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez moi sur Twitter 🐦@carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR au repo hacktricks et au repo hacktricks-cloud.
Variables globales
Les variables globales seront héritées par les processus enfants.
Vous pouvez créer une variable globale pour votre session actuelle en faisant :
export MYGLOBAL="hello world"
echo $MYGLOBAL #Prints: hello world
Cette variable sera accessible par vos sessions actuelles et ses processus enfants.
Vous pouvez supprimer une variable en faisant :
unset MYGLOBAL
Variables locaux
Les variables locales ne peuvent être accédées que par le shell/script courant.
LOCAL="my local"
echo $LOCAL
unset LOCAL
Liste des variables actuelles
set
env
printenv
cat /proc/$$/environ
cat /proc/`python -c "import os; print(os.getppid())"`/environ
Variables d'environnement persistantes
Fichiers qui affectent le comportement de chaque utilisateur :
- /etc/bash.bashrc : Ce fichier est lu chaque fois qu'un shell interactif est démarré (terminal normal) et toutes les commandes spécifiées ici sont exécutées.
- /etc/profile et /etc/profile.d/*: Ce fichier est lu chaque fois qu'un utilisateur se connecte. Ainsi, toutes les commandes exécutées ici ne seront exécutées qu'une seule fois au moment de la connexion de l'utilisateur.
-
**Exemple : **
/etc/profile.d/somescript.sh
#!/bin/bash TEST=$(cat /var/somefile) export $TEST
-
Fichiers qui affectent le comportement d'un utilisateur spécifique :
- ~/.bashrc : Ce fichier fonctionne de la même manière que le fichier /etc/bash.bashrc, mais il est exécuté uniquement pour un utilisateur spécifique. Si vous voulez créer un environnement pour vous-même, modifiez ou créez ce fichier dans votre répertoire personnel.
- ~/.profile, ~/.bash_profile, ~/.bash_login: Ces fichiers sont identiques à /etc/profile. La différence réside dans la manière dont il est exécuté. Ce fichier est exécuté uniquement lorsqu'un utilisateur dans le répertoire personnel duquel ce fichier existe se connecte.
Variables courantes
De : https://geek-university.com/linux/common-environment-variables/
- DISPLAY – l'affichage utilisé par X. Cette variable est généralement définie sur :0.0, ce qui signifie le premier affichage sur l'ordinateur actuel.
- EDITOR – l'éditeur de texte préféré de l'utilisateur.
- HISTFILESIZE – le nombre maximum de lignes contenues dans le fichier d'historique.
- **HISTSIZE - **Nombre de lignes ajoutées au fichier d'historique lorsque l'utilisateur termine sa session.
- HOME – votre répertoire personnel.
- HOSTNAME – le nom d'hôte de l'ordinateur.
- LANG – votre langue actuelle.
- MAIL – l'emplacement du spool de courrier de l'utilisateur. Généralement /var/spool/mail/USER.
- MANPATH – la liste des répertoires à rechercher pour les pages de manuel.
- OSTYPE – le type de système d'exploitation.
- PS1 – l'invite par défaut dans bash.
- **PATH - **stocke le chemin de tous les répertoires qui contiennent des fichiers binaires que vous souhaitez exécuter simplement en spécifiant le nom du fichier et non le chemin relatif ou absolu.
- PWD – le répertoire de travail actuel.
- SHELL – le chemin vers le shell de commande actuel (par exemple, /bin/bash).
- TERM – le type de terminal actuel (par exemple, xterm).
- TZ – votre fuseau horaire.
- USER – votre nom d'utilisateur actuel.
Variables intéressantes pour le piratage
HISTFILESIZE
Modifiez la valeur de cette variable à 0, de sorte que lorsque vous terminez votre session, le fichier d'historique (~/.bash_history) sera supprimé.
export HISTFILESIZE=0
HISTSIZE
Changez la valeur de cette variable à 0, ainsi lorsque vous terminez votre session, toute commande ne sera pas ajoutée au fichier d'historique (~/.bash_history).
export HISTSIZE=0
http_proxy & https_proxy
Les processus utiliseront le proxy déclaré ici pour se connecter à Internet via http ou https.
export http_proxy="http://10.10.10.10:8080"
export https_proxy="http://10.10.10.10:8080"
SSL_CERT_FILE & SSL_CERT_DIR
Les processus feront confiance aux certificats indiqués dans ces variables d'environnement.
export SSL_CERT_FILE=/path/to/ca-bundle.pem
export SSL_CERT_DIR=/path/to/ca-certificates
PS1
Modifiez l'apparence de votre invite de commande.
J'ai créé celle-ci (basée sur une autre, lisez le code).
Root:
Utilisateur régulier:
Un, deux et trois travaux en arrière-plan:
Un travail en arrière-plan, un arrêté et la dernière commande n'a pas fini correctement:
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Travaillez-vous dans une entreprise de cybersécurité? Voulez-vous voir votre entreprise annoncée dans HackTricks? ou voulez-vous avoir accès à la dernière version de PEASS ou télécharger HackTricks en PDF? Consultez les PLANS D'ABONNEMENT!
- Découvrez The PEASS Family, notre collection exclusive de NFTs
- Obtenez le swag officiel PEASS & HackTricks
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez moi sur Twitter 🐦@carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR au repo hacktricks et au repo hacktricks-cloud.