[Hackthebox] Horizontall
Bài đăng này đã không được cập nhật trong 3 năm
Tiếp tục series về các bài hackthebox. Bài lần này là horizontall.
I. Thông tin chung về box
Các thông tin về box tại thời điểm mình giải được box này
II. Reconnaissance
Kết quả nmap scan của box:
Hiện tại có thể thấy box chạy 2 service là ssh
và http
. Trước hết, vào check trước cổng 80 của box.
Truy cập theo IP của box, ta sẽ được điều hướng sang domain horizontall.htb
. Thêm domain này vào /etc/hosts
sẽ có trang chúng ta cần
Tuy nhiên, tìm thử các đường dẫn theo domain này thì không có gì đặc sắc lắm.
Bên phía service ssh
cũng không có gì đặc biệt. Sau một hồi khá bối rối thì mình nghĩ tới chuyện cũng ở cổng 80 có thể truy cập với domain khác. Sau khi scan thử thì tìm được domain api-prod.horizontall.htb
.
Truy cập vào domain api-prod.horizontall.htb
ta có 1 trang web khác
Trang này sử dụng strapy CMS
Phiên bản của CMS được sử dụng là 3.0.0-beta.17.4
III. User Flag
Phiên bản strapi mà box sử dụng có 2 lỗi liên kết tới nhau, trước tiên là lỗi đổi mật khẩu không cần xác thực và RCE với chức năng install plugin. Đầu tiên, sử dụng lỗi đầu tiên mình truy cập được vào tài khoản admin và có được jwt xác thực của tài khoản này. Mã khai thác có thể xem tại exploit.db.
Sau khi reset mật khẩu của tài khoản và đăng nhập, mình có được token xác thực của admin
Tiếp theo, sử dụng bug còn lại để tiến hành RCE.
Sau khi gửi request, mình có 1 reverse shell tại máy mình
Từ đây, có thể lấy được user flag tại /home/developer/user.txt
.
IV. Root Flag
Tiếp theo là đến việc leo quyền. Đầu tiên, mình chú ý tới phiên bản hệ điều hành của box
Tuy nhiên việc khai thác điểm này có vẻ không khả thi, khả năng đây cũng là thông tin đánh lạc hướng của box. Tiếp đó, tìm các service chạy trên local
Ở đây, tại port 8000 đang chạy laravel. Mình sẽ forward port này tới port 8000 trên máy mình.
Đầu tiên là sử dụng netcat
để setup một cổng lắng nghe
Tiếp theo, kết nối tới cổng này từ box
Tiếp theo là port forwarding
giờ truy cập vào cổng 8000 tại localhost
Phiên bản này có một lỗi RCE với id là CVE-2021-3129
. Có khá nhiều mã khai thác cho lỗi này và mình sử dụng mã tại https://github.com/nth347/CVE-2021-3129_exploit.
Đánh giá
Box này nằm ở mức tương đối trong các box dễ, không yêu cầu quá nhiều về khai thác, custom hay recon mà tập trung vào việc biết sử dụng các mã khai thác có sẵn.
All rights reserved