Privilege Escalation 실습

김동현·2024년 10월 17일

문제

조건

  • 2개의 VM인 CJU, Goal이 있다. 모두 OpenSSH 서버가 동작 중이며, 같은 네트워크에 있다.

과정 (단, 과정 1,3,5는 필수)

  1. CJU VM에 침투
  2. Privilege Escalation하기 위한 Discovery
  3. CVE-2024-1086를 이용하여 root 사용자로 Privilege Escalation
  4. CJU VM에서 Goal VM으로 Lateral Movement하기 위한 Discovery (Discovery는 CJU VM에서 수행)
  5. CJU VM에서 Goal VM으로 Lateral Movement (Lateral Movement는 CJU VM ⇒ Goal VM)
힌트
  1. 사회공학적 기법
  2. 숨겨진 역사

풀이

먼저 힌트를 봤을 때 '사회공학적 기법'을 보자마자 비밀번호 '1111'이 떠올랐다.
지금까지 수업 때 마다 만들어왔던 ID와 PWD는 'cju'와 '1111'이었기 때문이다.
바로 cju VM에 1111을 대입하여 접속하니 계정에 침투 할 수 있었다.

그 다음 과정 3을 위해 구글 검색을 통해 한 깃헙 페이지의 CVE-2024-1086의 exploit 파일을 얻을 수 있었다.
이렇게 얻은 바이너리 파일을 Privilege Escalation을 하기 위해 칼리 리눅스를 사용하여 cju VM으로 옮겨주었다.

https://github.com/Notselwyn/CVE-2024-1086

그 후 exploit를 실행하기 위해 cju에 접속해서 ./exploit을 사용했지만 Permission denied로 더이상 진행할 수 없었다.

계속 방법을 찾아 나갔지만 결국 풀지 못했다..


2차 시도

Permission denied의 오류를 해결하기 위해 생각하던중 chmod로 권한을 준 뒤 다시 시도하였더니 성공
그 후 ./expliot을 실행시켜봤다.

결과는 성공! 루트 권한을 얻었다.

두 번째 힌트를 참고하여 /root 에 숨겨져있는 .ash_history를 찾아 cat으로 출력시켜보았다.
결과로 goal의 ssh 유저가 proxynova라는 것을 알 수 있었다.

proxynova 사이트를 이용하여 비밀번호를 유추해보았다.

이렇게 proxynova의 비밀번호가 d9vrzkeb인 것을 알 수 있었다.

이제 goal를 들어가서 flag를 확인할 수 있었다.

profile
코딩

0개의 댓글