Enumeration
Zenmap:
Kiểm tra webstite:Tạo tài khoản và upload một file bất kỳ.Gaining access martin
Gaining access tom
Trước đó khi đọc file với id 101:
Tôi biết rằng có một số file backup database được lập lịch để lưu lại. Lấy chúng về máy:Sau khi tải về mở nó lên và giải nén tôi thấy file được bảo về bắt password. Kiểm tra và tìm kiếm password cho các file vì tôi biết rằng cần một dịch vụ lập lịch để thực hiện backup các file này. Khi đó tại các port được mở và tôi thấy server trên port 3000 hoạt động private:Forwalk Port 3000 và truy cập nó:
Đây là một website gitea, thử login nó với user và password mà tôi đã lấy được trước đó:Tôi đã login thành công gitea với user và password có sẵn. Tôi thấy tồn tại file db_backup.sh với nội dung như sau:
Từ đây tôi thấy rằng tất cả các file 7z được mã hóa với password ở trên, giải mã chúng và đọc database tôi thấy:Crack chúng với hashcat tôi thu được một password cho user tom. Login với ssh:
Privilege escalation
Tôi thấy file doodleGrive-cli có đặc quyền root, tải nó về và decomplit nó:
Tại đây tôi thấy được username và password của file doodleGrive-cli. Sau khi nhập thành công user và password:
Kiểm tra từng dòng mã. Tôi thấy rằng, tại lựa chọn số 5:Tại đây tôi thấy rằng chương trình chỉ thay thế %s bằng user đã truyền vào, Tôi nghĩ rằng mình có thể trèn sqli
Function Edit
Trong sqlite có function edit: edit() SQL function
Kiểm tra file /bin/bash và lấy root:Khi đó tôi tạo một file exploit có nội dung sau:
Khi đó trong doodleGrive-cli sẽ được thực hiện như sau:Function load_extension
Tôi có thể lợi dụng load_extension để thực hiện khai thác: Run-Time Loadable Extensions
Tôi có mã khai thác như sau:
Build file thành file yu.so, sau đó tôi thực hiện khai thác như sau:
Sau đó kiểm tra /bin/bash và tôi có người dùng root.Còn một số con đường khác để khai thác root, tôi sẽ bổ sung sau. Tuần này sẽ là tuần khá bận rộn đối với tôi. Tôi sẽ cố gắng update nó.




















