1. Một chút kiến thức chia sẻ
What is "Serialisation"?
Thế nào là tuần tự hóa (Serialisation). Tuần tự hóa hiểu là là quá trình chuyển đổi dữ liệu - cụ thể là "Đối tượng" trong ngôn ngữ Lập trình hướng đối tượng (OOP) như Java sang định dạng cấp thấp hơn được gọi là "luồng byte(byte streams)", nơi nó có thể được lưu trữ để sử dụng sau này chẳng hạn như trong tệp, cơ sở dữ liệu, và/hoặc được truyền qua mạng. Sau đó nó được chuyển đổi từ "luồng byte" này trở lại thành "Đối tượng" cấp cao hơn. Chuyển đổi cuối cùng này được gọi là "Hủy tuần tự hóa(De-serialisation)"
So what is an "Object"?
Đối tượng là gì. "Đối tượng" trong ngữ cảnh lập trình có thể được so sánh với các ví dụ trong cuộc sống thực. Đơn giản, một "Đối tượng" chỉ là - một thứ. "Đối tượng" có thể chứa nhiều loại thông tin khác nhau như trạng thái hoặc tính năng. Để tương quan với một ví dụ trong thế giới thực ... Hãy lấy một chiếc đèn.
Một chiếc đèn là một "Vật thể". đèn có thể bật hoặc tắt, đèn có thể có nhiều loại bóng khác nhau - nhưng cuối cùng nó vẫn là đèn. Loại bóng đèn sử dụng và đèn "bật" hay "tắt" trong trường hợp này đều được lưu trữ trong một "Đối tượng".
How can we exploit this process?
Cách tấn công vào tiến trình tuần tự. Tấn công "tuần tự hóa" là việc đưa vào và/hoặc sửa đổi dữ liệu trong suốt giai đoạn "luồng byte(byte streams)". Khi dữ liệu này sau đó được truy cập, mã độc có thể gây ra nhiều hệ lụy nghiêm trọng ... từ DoS, rò rỉ dữ liệu hay nhiều cuộc tấn công bất chính hơn như bị leo thang "root"!
2. Khai thác một lab
Thu thập thông tin máy victim
Mình thấy một cổng 8080 đặc biệt chạy dịch vụ Apache Tomcat/Coyote JSP engine 1.1 và với tiêu đề website JBoss AS
Mình vô website xem sao
Mình thấy có một bức ảnh hay hay tải về
Thu được cờ đầu tiên. Tiếp theo đó có một thông tin có một lỗ hổng RCE CVE-2015-7501
Bài này có link tải một tệp tin khai thác lỗ hổng có tên jboss.zip (48.3MB~)
Trong này có những tệp tin sau:
Sau đó mình giải nén ra và chạy thực hiện RCE khai thác tới máy victim
Thành công kết nối tới máy victim mình thực hiện một số lệnh
python -c 'import pty; pty.spawn("/bin/bash")' export TERM=xtermls -la |
Thấy tệp tin to-do.txt, .config và jboss mình kiểm tra hết cũng không có gì đặc biệt, mình vào thư mục home xem các user có hiện tại
Thấy được ngoài user cmnatic còn jboss và tony. Vào từng user, ở jboss có một tệp note đọc thấy một mật khẩu mình lưu lại
Tiếp tục vào user tony không có gì cả, mình thử dùng mật khẩu thu được liền đăng nhập vào jboss thử và thành công, mình thử dùng lệnh sau xem có leo thang được không
Phát hiện lệnh find có quyền dưới quyền root không cần mật khẩu. Mình thực hiện leo thang
Thành công leo thang việc cuối cùng là đọc cờ cuối 😋😋😋












0 Comments