sh: line 61: cd: HOME not set 오류가 발생했습니다.
배포판: Metasploitable 2(Ubuntu 8.04)
/root/.bashrc
(주석 및 공백 제거):
[ -z "$PS1" ] && return
shopt -s checkwinsize
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"
if [ -z "$debian_chroot" -a -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
case "$TERM" in
xterm-color)
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
;;
*)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
;;
esac
case "$TERM" in
xterm*|rxvt*)
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
;;
*)
;;
esac
if [ "$TERM" != "dumb" ]; then
eval "`dircolors -b`"
alias ls='ls --color=auto'
fi
고양이/루트/.profile
# ~/.profile: executed by Bourne-compatible login shells.
if [ "$BASH" ]; then
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
fi
mesg n
ps -p $$ -ocomm=
sh
내 kali에서 이 컴퓨터로 "rlogin -l root xxxx"를 사용해 보았지만 작동하지 않습니다. .rhosts 파일은 괜찮지만 이 오류 메시지가 표시되므로 작동하지 않는 것일 수도 있습니다.
1) 1524 백도어를 이용하여 텔넷으로 로그인
2) Samba userman 스크립트를 사용하여 로그인합니다.
3) 비밀번호를 사용하여 ssh(cd가 작동 중):
답변1
일반적인 방법(콘솔, SSH 등)을 통해 로그인하면 로그인을 처리하는 프로그램은 HOME
로그인을 통하지 않고 프로그램의 취약점을 악용하여 셸에 액세스하는 경우 . , 일반적으로 항상 포함되는 것은 아니지만 프로그램 환경을 가져올 수 있습니다 HOME
.
Bash에서는 어떤 이유로 cd
인수가 없는 명령이 해당 값을 HOME
대상으로 사용합니다. 그러나 설정하지 않으면 물결표 확장이 사용자 데이터베이스에서 홈 디렉터리(예 /etc/passwd
: )로 대체됩니다. HOME
따라서 HOME
설정하지 않으면 cd
불평하지만 cd ~
사용자의 홈 디렉터리가 변경됩니다. 설정하지 않은 경우 매개변수 없이 실행합니다 cd $HOME
.cd
HOME
취약점을 악용할 때 환경이 익숙할 것이라고 기대할 수 없습니다. 이는 코드 실행(예: 셸 보유)부터 표준 코드를 실행하기 위한 편리한 환경 설정에 이르기까지 쉬운 부분인 기술 활용의 일부입니다.