Apache Tomcat: Lỗ hổng RCE mới đã có POC

Nam Anh Mai D.Nam Anh Mai D.
3 min read

Vừa qua, một lỗ hổng RCE mới trên Apache Tomcat đã được phát hiện, đồng thời POC khai thác của lỗ hổng này đã được công khai rộng rãi trên không gian mạng.

Thông tin chi tiết:

  • Định danh lỗ hổng: CVE-2025-24813

  • Điểm CVSS(3.1): 9.8

  • Mức độ nghiêm trọng: Critical (Theo NIST)

  • Phiên bản bị ảnh hưởng: Các phiên bản của Apache Tomcat từ 11.0.0-M1 đến 11.0.2, từ 10.1.0-M1 đến 10.1.34 và từ 9.0.0.M1 đến 9.0.98

  • Bản vá bảo mật: Các phiên bản 11.0.3, 10.1.359.0.99

  • Mô tả: CVE-2025-24813 liên quan tới khai thác đường dẫn tương đương (Path Equivalence) của đường dẫn trong file (ví dụ: file.Name) chứa dấu chấm (.) có thể bị lợi dụng cho các kỹ thuật tấn công như thực thi mã từ xa, gây rò rỉ thông tin nhạy cảm hoặc tiêm các đoạn mã độc hại vào các file đã tải lên trên hệ thống.

Kỹ thuật khai thác

Dựa theo bài viết của Cyber Advising, CVE-2025-24813 liên quan tới đường dẫn tương đương (path equivalence) trong servlet mặc định của Tomcat, dẫn tới xử lý sai việc tải lên tệp thông qua các request như HTTP PUT.

Tuy nhiên, điều kiện để khai thác cũng yêu cầu một số cấu hình nhất định trên Tomcat như:

  • Cho phép ghi trong tham số của servlet mặc định (default servlet). (Tham số readonly bị đặt thành false)

  • Partial PUT requests (sử dụng tiêu đề Content-Range) được cấp phép (được bật theo mặc định).

  • Tomcat được cấu hình để lưu session dưới dạng file (đây không phải là cấu hình mặc định).

  • Ứng dụng có sử dụng thư viện dễ bị tấn công thông qua deserialization (giải nén đối tượng từ dữ liệu không đáng tin cậy).

  • Kẻ tấn công biết quy tắc đặt tên và vị trí lưu trữ của các file nhạy cảm.

Kẻ tấn công gửi một yêu cầu PUT với payload được tạo sẵn dưới dạng Java serialized, nhắm vào thư mục lưu trữ phiên (session) của máy chủ. Ví dụ:

PUT /webapps/ROOT/WEB-INF/sessions/SESSIONID.ser HTTP/1.1  
Host: vulnerable-tomcat  
Content-Range: bytes 0-99/100  
Content-Type: application/octet-stream  

<payload được tuần tự hóa độc hại>

Kẻ tấn công sau đó gửi một yêu cầu GET với cookie trỏ đến tệp phiên đã được tải lên:

GET / HTTP/1.1  
Host: vulnerable-tomcat  
Cookie: JSESSIONID=SESSIONID

Khi Tomcat giải tuần tự hóa (deserialize) tệp phiên độc hại này, mã độc sẽ được thực thi với quyền của tiến trình Tomcat hiện tại.

Khuyến nghị & Khắc phục

Tuy yêu cầu các điều kiện cấu hình nhất định trên Tomcat, việc CVE-2025-24813 được công bố POC rộng rãi trên không gian mạng có thể tạo cơ hội cho những kẻ tấn công lợi dụng và tuỳ biến quá trình khai thác với mỗi mục tiêu các nhau.

Các chuyên gia bảo mật trên toàn thế giới và đội ngũ FPT Threat Intelligence khuyến nghị người dùng nên thực hiện các biện pháp sau nhằm giảm thiểu khả năng đối diện với nguy cơ mất an toàn thông tin từ lỗ hổng này:

  • Cập nhật bản vá bảo mật: Lập tức cập nhật các bản vá bảo mật mới nhất của nhà phát hành Apache Tomcat, bao gồm các phiên bản: 11.0.3, 10.1.359.0.99.

  • Thay đổi tham số default servlet: Thiết lập tham số servlet mặc định (default servlet) thành readonly true nhằm ngăn chặn quyền ghi qua PUT.

  • Vô hiệu hoá Partial PUT requests: vô hiệu hoá thành phần này nếu không sử dụng tới.

  • Hạn chế lưu trữ phiên dưới dạng tệp: Kiểm tra cơ chế lưu phiên (session persistence), loại bỏ các thư mục có thể ghi khỏi bộ lưu trữ phiên (session storage).

  • Loại bỏ các thư viện deserialization: loại bỏ các thư viện không cần thiết khỏi classpath.

Tham khảo

  1. https://nvd.nist.gov/vuln/detail/CVE-2025-24813

  2. Apache Tomcat RCE Vulnerability Exposed with PoC Released

0
Subscribe to my newsletter

Read articles from Nam Anh Mai D. directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Nam Anh Mai D.
Nam Anh Mai D.