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

5.2 KiB
Raw Blame History

Linux 环境变量

{% hint style="success" %} 学习与实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE)
学习与实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)

支持 HackTricks
{% endhint %}

全局变量

全局变量 将被 子进程 继承

您可以通过以下方式为当前会话创建全局变量:

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

这个变量将可以被您当前的会话及其子进程访问。

您可以通过以下方式删除一个变量:

unset MYGLOBAL

Local variables

局部变量只能被当前的 shell/脚本访问。

LOCAL="my local"
echo $LOCAL
unset LOCAL

列出当前变量

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

Common variables

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

  • DISPLAY X 使用的显示器。此变量通常设置为 :0.0,这意味着当前计算机上的第一个显示器。
  • EDITOR 用户首选的文本编辑器。
  • HISTFILESIZE 历史文件中包含的最大行数。
  • HISTSIZE 用户完成会话时添加到历史文件的行数。
  • HOME 你的主目录。
  • HOSTNAME 计算机的主机名。
  • LANG 你当前的语言。
  • MAIL 用户邮件存储的位置。通常是 /var/spool/mail/USER
  • MANPATH 搜索手册页的目录列表。
  • OSTYPE 操作系统的类型。
  • PS1 bash 中的默认提示符。
  • PATH 存储所有目录的路径,这些目录包含你想通过指定文件名而不是相对或绝对路径执行的二进制文件。
  • PWD 当前工作目录。
  • SHELL 当前命令 shell 的路径(例如,/bin/bash)。
  • TERM 当前终端类型(例如,xterm)。
  • TZ 你的时区。
  • USER 你当前的用户名。

Interesting variables for hacking

HISTFILESIZE

此变量的值更改为 0,这样当你 结束会话 时,历史文件~/.bash_history将被删除

export HISTFILESIZE=0

HISTSIZE

将此变量的值更改为 0,这样当您结束会话时,任何命令都将被添加到历史文件~/.bash_history中。

export HISTSIZE=0

http_proxy & https_proxy

进程将使用此处声明的 proxy 通过 http 或 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

进程将信任这些环境变量中指示的证书。

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

PS1

更改提示的外观。

这是一个示例

Root:

普通用户:

一个、两个和三个后台作业:

一个后台作业,一个已停止,最后一个命令未正确完成:

{% hint style="success" %} 学习和实践 AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

支持 HackTricks
{% endhint %}