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

147 lines
6.2 KiB
Markdown
Raw Normal View History

2024-02-10 21:30:13 +00:00
# Linux 환경 변수
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>htARTE (HackTricks AWS Red Team Expert)를 통해 제로부터 영웅이 되는 AWS 해킹을 배우세요</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 21:30:13 +00:00
HackTricks를 지원하는 다른 방법:
2024-02-02 12:19:57 +00:00
* **회사가 HackTricks에 광고되길 원하거나** **HackTricks를 PDF로 다운로드**하려면 [**구독 요금제**](https://github.com/sponsors/carlospolop)를 확인하세요!
* [**공식 PEASS & HackTricks 스왜그**](https://peass.creator-spring.com)를 구매하세요
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요, 당사의 독점 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션
* **💬 [**Discord 그룹**](https://discord.gg/hRep4RUj7f) 또는 [**텔레그램 그룹**](https://t.me/peass)에 **가입**하거나 **트위터** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**를 팔로우**하세요.
* **해킹 트릭을 공유하려면 PR을** [**HackTricks**](https://github.com/carlospolop/hacktricks) **및** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **깃허브 저장소에 제출**하세요.
2022-04-28 16:01:33 +00:00
</details>
**Try Hard Security Group**
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
{% embed url="https://discord.gg/tryhardsecurity" %}
***
2024-02-10 21:30:13 +00:00
## 전역 변수
전역 변수는 **자식 프로세스에게 상속**됩니다.
현재 세션에 대한 전역 변수를 만들려면 다음을 수행할 수 있습니다:
```bash
export MYGLOBAL="hello world"
echo $MYGLOBAL #Prints: hello world
```
이 변수는 현재 세션 및 해당 하위 프로세스에서 접근할 수 있습니다.
다음을 수행하여 변수를 **제거**할 수 있습니다:
```bash
unset MYGLOBAL
```
2024-02-10 21:30:13 +00:00
## 로컬 변수
**로컬 변수**는 **현재 쉘/스크립트**에서만 **액세스**할 수 있습니다.
```bash
LOCAL="my local"
echo $LOCAL
unset LOCAL
```
2024-02-10 21:30:13 +00:00
## 현재 변수 목록
```bash
set
env
printenv
cat /proc/$$/environ
cat /proc/`python -c "import os; print(os.getppid())"`/environ
```
## 일반 변수
From: [https://geek-university.com/linux/common-environment-variables/](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** 현재 명령 셸의 경로 (예: **/bin/bash**).
* **TERM** 현재 터미널 유형 (예: **xterm**).
* **TZ** 사용자의 시간대.
* **USER** 현재 사용자 이름.
2024-02-10 21:30:13 +00:00
## 해킹에 흥미로운 변수
2022-10-05 22:34:56 +00:00
### **HISTFILESIZE**
**이 변수의 값을 0으로 변경**하여 세션을 **종료할 때 히스토리 파일** (\~/.bash\_history) **이 삭제**되도록합니다.
```bash
export HISTFILESIZE=0
```
2022-10-05 22:34:56 +00:00
### **HISTSIZE**
**이 변수의 값을 0으로 변경**하여 세션을 **종료할 때** 어떤 명령이든 **히스토리 파일**(\~/.bash\_history)에 추가되지 않도록 합니다.
```bash
export HISTSIZE=0
```
2023-01-18 13:30:35 +00:00
### http\_proxy & https\_proxy
이곳에 선언된 **프록시**를 사용하여 프로세스는 **http 또는 https**를 통해 인터넷에 연결됩니다.
```bash
export http_proxy="http://10.10.10.10:8080"
2023-01-18 13:30:35 +00:00
export https_proxy="http://10.10.10.10:8080"
```
2023-01-18 13:30:35 +00:00
### SSL\_CERT\_FILE & SSL\_CERT\_DIR
프로세스는 **이 환경 변수에서** 지정된 인증서를 신뢰합니다.
```bash
2023-01-18 13:30:35 +00:00
export SSL_CERT_FILE=/path/to/ca-bundle.pem
export SSL_CERT_DIR=/path/to/ca-certificates
```
2022-10-05 22:34:56 +00:00
### PS1
2024-02-10 21:30:13 +00:00
프롬프트의 모양을 변경합니다.
2024-02-10 21:30:13 +00:00
[**이것은 예시입니다**](https://gist.github.com/carlospolop/43f7cd50f3deea972439af3222b68808)
루트:
![](<../.gitbook/assets/image (87).png>)
2024-02-10 21:30:13 +00:00
일반 사용자:
2022-12-24 12:23:14 +00:00
![](<../.gitbook/assets/image (88).png>)
하나, 둘, 셋이 백그라운드로 실행 중인 작업:
![](<../.gitbook/assets/image (89).png>)
하나의 백그라운드 작업, 하나는 중지되었고 마지막 명령이 올바르게 완료되지 않았습니다:
2022-12-24 12:23:14 +00:00
![](<../.gitbook/assets/image (90).png>)
2022-04-28 16:01:33 +00:00
**Try Hard Security Group**
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
{% embed url="https://discord.gg/tryhardsecurity" %}
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>제로부터 히어로가 되기까지 AWS 해킹 배우기</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 21:30:13 +00:00
HackTricks를 지원하는 다른 방법:
2024-02-02 12:19:57 +00:00
* **회사가 HackTricks에 광고되길 원하거나 HackTricks를 PDF로 다운로드하길 원한다면** [**구독 요금제**](https://github.com/sponsors/carlospolop)를 확인하세요!
* [**공식 PEASS & HackTricks 스왜그**](https://peass.creator-spring.com)를 구매하세요
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요, 당사의 독점 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션
* **💬 [**Discord 그룹**](https://discord.gg/hRep4RUj7f) 또는 [**텔레그램 그룹**](https://t.me/peass)에 가입하거나** Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)를 팔로우하세요.
* **HackTricks** 및 **HackTricks Cloud** github 저장소에 PR을 제출하여 해킹 트릭을 공유하세요.
2022-04-28 16:01:33 +00:00
</details>