로컬 네트워크를 스캔하여 공격할 대상의 IP 주소를 얻습니다.
얻은 IP 주소의 포트를 스캔합니다.
웹 서비스와 ssh가 동작하고 있습니다.
웹 브라우저로 웹 사이트를 살펴봅니다.
로그인 페이지를 lotuscms에서 제공합니다.
searchsploit으로 lotuscms에 대한 exploit을 검색합니다.
Metasploit 모듈을 통해 사용할 수 있는 원격 명령 실행 exploit이 있습니다.
MSFconsole을 실행합니다.LotusCMS 익스플로잇 모듈을 검색하고 선택합니다.
익스플로잇 설정 후 실행합니다.
www-data 사용자로 쉘을 획득했습니다.
쉘에서 할 수 있는 것이 많지 않았지만 netcat이 설치되어있는 것을 발견했습니다. -e 옵션이 컴파일 되어있다면 바인드 쉘을 시도해볼 수 있습니다.
netcat의 -e 옵션을 통해 바인드 쉘을 엽니다.
공격자 pc에서 타겟 서버로 접속합니다.
홈 디렉토리를 둘러보니 loneferret 사용자의 .bash_history 파일에 sudo ht라는 명령을 입력한 기록이 있습니다.
CompanyPolicy.README를 읽어보면 ht는 텍스트, 실행 파일을 편집하는 소프트웨어 같습니다. sudo 명령을 사용해서 실행이 가능한 것 같습니다.
www-data로는 실행이 불가능 하므로 다른 사용자의 권한이 필요합니다.
웹 서버의 파일에는 접근이 가능하니 MySQL의 config.php 파일을 찾습니다.
root 사용자의 비밀번호를 획득했습니다. phpMyAdmin 사용이 가능하므로 접속해서 로그인합니다.
해시처리 된 loneferret의 비밀번호를 온라인 해시 크래킹 사이트를 통해 평문으로 변환을 시도합니다.
평문 비밀번호를 얻었습니다.
얻은 비밀번호를 사용하여 SSH를 통해 loneferret으로 로그인합니다.
sudo ht 명령을 실행 하려고 했지만 터미널에서 사용된 색상과 관련된 오류가 있습니다.
다음 명령으로 해결합니다.
export TERM=xterm
ht로 /etc/passwd 파일을 엽니다.
user3 유저를 추가하고 uid에 0(root)을 할당합니다. "x" 대신 사용할 비밀번호를 해시 처리한 값을 넣어줍니다.
ssh를 통해 user3으로 접속합니다.
root 쉘을 획득했습니다.