hacktricks/src/linux-hardening/linux-environment-variables.md

109 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Linux Environment Variables
{{#include ../banners/hacktricks-training.md}}
## Global variables
Globalne promenljive **će biti** nasledjene od **dečijih procesa**.
Možete kreirati globalnu promenljivu za vašu trenutnu sesiju tako što ćete uraditi:
```bash
export MYGLOBAL="hello world"
echo $MYGLOBAL #Prints: hello world
```
Ova promenljiva će biti dostupna vašim trenutnim sesijama i njihovim podprocesima.
Možete **ukloniti** promenljivu koristeći:
```bash
unset MYGLOBAL
```
## Lokalne promenljive
**Lokalne promenljive** mogu biti **pristupne** samo od strane **trenutne ljuske/skripte**.
```bash
LOCAL="my local"
echo $LOCAL
unset LOCAL
```
## Lista trenutnih varijabli
```bash
set
env
printenv
cat /proc/$$/environ
cat /proc/`python -c "import os; print(os.getppid())"`/environ
```
## Uobičajene promenljive
From: [https://geek-university.com/linux/common-environment-variables/](https://geek-university.com/linux/common-environment-variables/)
- **DISPLAY** prikaz koji koristi **X**. Ova promenljiva je obično postavljena na **:0.0**, što znači prvi prikaz na trenutnom računaru.
- **EDITOR** omiljeni tekstualni editor korisnika.
- **HISTFILESIZE** maksimalan broj linija sadržanih u datoteci istorije.
- **HISTSIZE** Broj linija dodatih u datoteku istorije kada korisnik završi svoju sesiju.
- **HOME** vaš kućni direktorijum.
- **HOSTNAME** ime računara.
- **LANG** vaš trenutni jezik.
- **MAIL** lokacija korisničkog mail spoola. Obično **/var/spool/mail/USER**.
- **MANPATH** lista direktorijuma za pretragu priručnika.
- **OSTYPE** tip operativnog sistema.
- **PS1** podrazumevani prompt u bash-u.
- **PATH** čuva putanju svih direktorijuma koji sadrže binarne datoteke koje želite da izvršite samo navođenjem imena datoteke, a ne relativnom ili apsolutnom putanjom.
- **PWD** trenutni radni direktorijum.
- **SHELL** putanja do trenutne komandne ljuske (na primer, **/bin/bash**).
- **TERM** trenutna vrsta terminala (na primer, **xterm**).
- **TZ** vaša vremenska zona.
- **USER** vaše trenutno korisničko ime.
## Zanimljive promenljive za hakovanje
### **HISTFILESIZE**
Promenite **vrednost ove promenljive na 0**, tako da kada **završite svoju sesiju** **datoteka istorije** (\~/.bash_history) **će biti obrisana**.
```bash
export HISTFILESIZE=0
```
### **HISTSIZE**
Promenite **vrednost ove promenljive na 0**, tako da kada **završite svoju sesiju** bilo koja komanda bude dodata u **datoteku istorije** (\~/.bash_history).
```bash
export HISTSIZE=0
```
### http_proxy & https_proxy
Procesi će koristiti **proxy** deklarisan ovde da se povežu na internet preko **http ili https**.
```bash
export http_proxy="http://10.10.10.10:8080"
export https_proxy="http://10.10.10.10:8080"
```
### SSL_CERT_FILE & SSL_CERT_DIR
Procesi će verovati sertifikatima navedenim u **ovim env varijablama**.
```bash
export SSL_CERT_FILE=/path/to/ca-bundle.pem
export SSL_CERT_DIR=/path/to/ca-certificates
```
### PS1
Promenite izgled vašeg prompta.
[**Ovo je primer**](https://gist.github.com/carlospolop/43f7cd50f3deea972439af3222b68808)
Root:
![](<../images/image (897).png>)
Redovni korisnik:
![](<../images/image (740).png>)
Jedan, dva i tri pozadinska zadatka:
![](<../images/image (145).png>)
Jedan pozadinski zadatak, jedan zaustavljen i poslednja komanda nije završila ispravno:
![](<../images/image (715).png>)
{{#include ../banners/hacktricks-training.md}}