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

6.1 KiB
Raw Blame History

Zmienne środowiskowe w systemie Linux

Nauka hakerskiego ataku na AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Try Hard Security Group

{% embed url="https://discord.gg/tryhardsecurity" %}


Zmienne globalne

Zmienne globalne będą dziedziczone przez procesy potomne.

Możesz utworzyć zmienną globalną dla bieżącej sesji, wykonując:

export MYGLOBAL="hello world"
echo $MYGLOBAL #Prints: hello world

Ta zmienna będzie dostępna w bieżących sesjach i procesach potomnych.

Możesz usunąć zmienną wykonując:

unset MYGLOBAL

Zmienne lokalne

Zmienne lokalne mogą być dostępne tylko przez bieżącą powłokę/skrypt.

LOCAL="my local"
echo $LOCAL
unset LOCAL

Lista bieżących zmiennych

set
env
printenv
cat /proc/$$/environ
cat /proc/`python -c "import os; print(os.getppid())"`/environ

Wspólne zmienne

Z: https://geek-university.com/linux/common-environment-variables/

  • DISPLAY wyświetlacz używany przez X. Zmienna ta zazwyczaj jest ustawiona na :0.0, co oznacza pierwszy wyświetlacz na bieżącym komputerze.
  • EDITOR preferowany edytor tekstu użytkownika.
  • HISTFILESIZE maksymalna liczba linii zawartych w pliku historii.
  • HISTSIZE Liczba linii dodawanych do pliku historii po zakończeniu sesji użytkownika.
  • HOME katalog domowy.
  • HOSTNAME nazwa hosta komputera.
  • LANG bieżący język.
  • MAIL lokalizacja skrzynki odbiorczej użytkownika. Zazwyczaj /var/spool/mail/USER.
  • MANPATH lista katalogów do wyszukiwania stron podręcznika.
  • OSTYPE typ systemu operacyjnego.
  • PS1 domyślny znak zachęty w bashu.
  • PATH przechowuje ścieżkę do wszystkich katalogów zawierających pliki binarne, które chcesz wykonać, podając tylko nazwę pliku, a nie ścieżkę względną lub bezwzględną.
  • PWD bieżący katalog roboczy.
  • SHELL ścieżka do bieżącego powłoki poleceń (na przykład /bin/bash).
  • TERM bieżący typ terminala (na przykład xterm).
  • TZ strefa czasowa.
  • USER bieżąca nazwa użytkownika.

Interesujące zmienne do hakowania

HISTFILESIZE

Zmień wartość tej zmiennej na 0, aby po zakończeniu sesji plik historii (~/.bash_history) został usunięty.

export HISTFILESIZE=0

HISTSIZE

Zmień wartość tej zmiennej na 0, aby po zakończeniu sesji żadne polecenie nie było dodane do pliku historii (~/.bash_history).

export HISTSIZE=0

http_proxy & https_proxy

Procesy będą korzystać z zadeklarowanego tutaj serwera proxy do połączenia z internetem za pośrednictwem protokołów http lub 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

Procesy będą ufać certyfikatom wskazanym w tych zmiennych środowiskowych.

export SSL_CERT_FILE=/path/to/ca-bundle.pem
export SSL_CERT_DIR=/path/to/ca-certificates

PS1

Zmień wygląd swojego wiersza poleceń.

To jest przykład

Root:

Zwykły użytkownik:

Jeden, dwa i trzy procesy w tle:

Jeden proces w tle, jeden zatrzymany i ostatnie polecenie nie zakończyło się poprawnie:

Try Hard Security Group

{% embed url="https://discord.gg/tryhardsecurity" %}

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks: