환경 변수는 얼마나 안전합니까?

환경 변수는 얼마나 안전합니까?

export FOO=var내가 껍질 안에 있다고 가정 해 봅시다 .

다른 사람(루트 또는 다른 사람)이 변수의 키가 설정되었음을 감지하고 해당 값을 배우려면 무엇이 필요합니까?

답변1

루트는 실제로 모든 프로세스의 메모리를 읽을 수 있습니다. 전혀 노력이 필요하지 않습니다. 변수를 설정하는 프로세스(귀하의 경우 셸)를 중지하고 libc 함수를 실행하여 변수 값을 얻거나 메모리 *envp자체를 직접 읽을 수 있습니다.

당신은 말 그대로할 수 없다소프트웨어가 비밀에 액세스할 수 있는 한 루트 비밀을 유지하십시오. 이는 실제로 하드웨어 설계를 통해 달성됩니다.

Unixoid에서는 일반적으로 다른 사람들이 프로세스 중 하나의 환경을 읽어서는 안 됩니다. 이것은 Linux가 아닌 UNIXoid의 이전 버전에서 액세스할 수 있지만 1990년대 AIX에 대해서는 관심이 없다고 생각하십니까?

관련 정보