내 상황은 일반적이지 않을 수 있습니다. 이것은 내가 얻는 반대 셸입니다. 나는 루트 디렉토리에 갇혀 있음을 발견했습니다. "cd"를 통해 현재 디렉토리를 다른 곳으로 변경할 수 없었습니다. 그러나 다른 디렉터리의 파일을 나열/읽고 전체 경로를 제공할 수 있습니다.
또한 어떤 식으로든 쉘을 업그레이드하려고 하면 리버스 쉘이 죽습니다.
예: python -c "import pty;pty.spawn('/bin/bash')"
아니면 그냥/bin/bash
passwd 파일에서 내 사용자는 "mark"이고 쉘 필드가 누락되었습니다.
mark:x:1001:1001::/home/mark:
그러나 쉘 필드를 제거한 후 로컬 PC에서 동일한 사용자를 다시 생성했으며 /bin/sh
쉘 기본값을 제외하고 모든 기능이 정상적으로 작동합니다.
이 이상한 행동의 이유는 무엇입니까?
답변1
cd
내장 쉘 명령입니다. 사용자에게 쉘이 없습니다. 사용자에게 쉘을 추가하려면 다음에서 실행하십시오.뿌리사용자
usermod -s /bin/bash mark