You are in: Home Joomla Blog Lỗ hổng bảo mật trong Joomla 1.5.7 ?

Download Joomla 1.0.15

joomla-1-0-back-end.png

Download Joomla 1.5.8

joomla-1-5-front-end.png
Lỗ hổng bảo mật trong Joomla 1.5.7 ?
User Rating: / 4
PoorBest 

Joomla and JoomlaToolsChỉ vài ngày trước khi kết quả chính thức của cuộc bầu chọn CMS tốt nhất năm 2008 được công bố thì vào ngày 20/10 vừa qua, Website joomlatools.org (nơi cung cấp sản phẩm DocMan nổi tiếng) đã đưa ra cảnh báo về một lỗ hổng mức cao (high level security vulnerability) của Joomla. Không biết vô tình hay cố ý, nhưng một cuộc tranh cãi với những lời lẽ khá gay gắt đã xảy ra.

Về phía JoomlaTools.org

Theo tác giả, tất cả các phiên bản từ Joomla 1.5.2 cho tới Joomla 1.5.7 đều bị dính một lỗ hổng mức cao và được xếp vào loại "lỗ hổng kịch bản chéo" (cross-site scripting). Tác hại của lỗi là cho phép hacker lợi dụng để chèn các đoạn mã javascript độc vào Website.

Cũng theo tác giả, lỗi này đã được thông báo với Nhóm Bảo Mật Joomla (Joomla Security Strike Team) vào ngày 4/10, sau đó được thông báo trên "Trang theo dõi lỗi" (bug tracker) nhưng đã bị xóa bỏ mà không có bất cứ một lời giải thích nào và chẳng có có một bản vá nào được phát hành. Vì thế, tác giả và Joomlatools đã quyết định tự phát hành bản vá cho riêng mình.

Chi tiết về lỗi:

Lỗ hổng bảo mật Joomla 1.5.7Nguyên nhân là kể từ Joomla 1.5.2, một loạt các tùy chọn đã được bổ sung vào danh sách các tham số đối với bài viết (Parameters Article). Những tùy chọn này cho phép thiết lập một quy tắc lọc đối với các đoạn mã nhạy cảm áp dụng cho các nhóm khác nhau (thí dụ cho phép nhóm "Manager" có quyền chèn iframe vào bài viết). Tuy nhiên theo mặc định không có nhóm nào được đánh dấu. Điều đó có nghĩa là chẳng có bài viết nào bị lọc mã cả. Vì thế sẽ cho phép các hacker có thể lợi dụng để thực hiện tấn công kịch bản chéo (cross-site scripting).

Cách khắc phục của JoomlaTools

  • Mở trang quản trị, sau đó mở menu Content -> Article Manager
  • Nhấn vào nút [Parameters]
  • Cuộn xuống phía dưới cùng của cửa sổ pop-up vừa xuất hiện
  • Chọn tất cả các nhóm trong mục "Filter Groups" (Giữ phím Ctrl để chọn nhiều đối tượng)
  • Chọn 'Blacklist' trong mục "FilterType"
  • Nhấn nút [Save] để lưu lại

Phản ứng từ phía Joomla.

Gần như ngay sau đó, trên Joomla.org đã cho đăng một bài viết với tựa đề "Một cảnh báo vô trách nhiệm từ một nhà phát triển thứ ba" (Nguyên văn: An Irresponsible Post by a Third Party Developer). Tác giả viết:

"Một công ty có tiếng, có truyền thống trong việc hỗ trợ và tham gia phát triển Joomla lại tiết lộ chi tiết về một lỗi được coi là lỗ hổng bảo mật mức cao của Joomla trên trang web của họ. Chúng tôi sẽ không chỉ đích danh công ty nào, nhưng chúng tôi cảm thấy thất vọng tràn trề khi mà trong số những người đó có 02 người đã từng giữ vị trí chủ chốt của Joomla lại không cố gắng thực hiện đúng quy trình lại đi đăng lỗi này trên website của họ và phát hành một bản vá không chính xác"

Phía Joomla cũng xác nhận thêm: "Khoảng 2 tuần trước, họ đã gửi báo cáo chi tiết về lỗ hổng tiềm tàng trên cho Nhóm Bảo Mật Joomla. Theo đúng chính sách bảo mật của chúng tôi, chúng tôi đã tiến hành thảo luận với nhà phát triển thứ ba và xác định vấn đề đó không có tính chất nghiêm trọng và không cần thiết phải tức thì phát hành một bản vá mới. Chúng tôi có thể khẳng định rằng vấn đề đó sẽ được sửa trong phiên bản Joomla 1.5.8 theo đúng chu kỳ phát hành bình thường. Và sau khi tham khảo ý kiến riêng với từng nhóm Joomla, chúng tôi quyết định "vấn đề" được nói tới hoàn toàn là nội bộ (kẻ tấn công phải đạt được quyền 'author' hoặc cao hơn). Nó không có tính chất "nghiêm trọng" như họ đã nói".

Về việc bài viết (của JoomlaTools) bị xóa:

Joomla cho rằng: "Đó là chính sách của chúng tôi, để đảm bảo rằng các vấn đề bảo mật khi được công khai sẽ không gây ảnh hưởng tới những người sử dụng"

Về bản vá lỗi mà phía JoomlaTools cung cấp:

Joomla khuyến cáo, không nên dùng các bản vá lỗi của các bên thứ ba. Nó chỉ nên được dùng để tham khảo trước trong khi đợi bản vá hoặc bản phát hành chính thức từ phía Joomla.

Trong tình huống này, họ đã gỡ bỏ một tính năng quan trọng cho phép website tự bảo vệ khỏi các cuộc tấn công độc hại. Đây là một gợi ý thiếu hiểu biết. Việc áp dụng bản vá này có thể dẫn đến các mối nguy hiểm khác. Nếu website của bạn có bị hack hoặc deface thì đó là kết quả tất yếu, khi đó chúng tôi không thể giúp đỡ bạn.

Quan điểm từ phía Joomla:

Các thành viên trong câu hỏi đã bị xóa khỏi các vị trí Joomla tương ứng. Thật là buồn khi phải làm điều đó, nhưng chúng tôi cần phải tạo sự vững chắc để chống lại các hành vi thiếu trách nhiệm.

Nói chung, mọi người trong trong cộng đồng luôn được đánh giá cao khi hỗ trợ cho dự án Joomla! Nhưng thật không may, công ty này lại không phải là một trong số họ (điều này còn đúng trong nhiều dịp). Chúng tôi có lẽ sẽ không bao giờ biết được với động cơ gì mà những người đó hành động như vậy.

Kết luận của Joomla:

"Như đã nói trong báo cáo, lỗ hổng không tồn tại và chúng tôi không thay đổi đánh giá ban đầu của chúng tôi. Các tác động của vấn đề là nhỏ và chỉ được bao gồm trong phiên bản Joomla 1.5.8 và sẽ được phát hành theo đúng chu kỳ thông thường. Chúng tôi khuyến cáo bạn không nên cài đặt bản vá lỗi của họ và không hỗ trợ những hành động của họ theo bất cứ hình thức nào.

Chúng tôi luôn khuyến khích các đóng góp nhưng cần phải thông qua các kênh thích hợp và các trao đổi phù hợp. Phổ biến một lỗ hổng bảo mật sẽ không mang lại điều gì tốt đẹp cho bất cứ ai, mà ngược lại chỉ gây tổn hại cho những người sử dụng và sẽ không bao giờ được tha thứ"

Cách khắc phục của Joomla:

Không cho phép bất cứ ai có quyền truy cập từ mức "Author" trở lên hoặc làm theo các bước sau:

  • Mở trang quản trị, sau đó mở menu Content -> Article Manager
  • Nhấn vào nút [Parameters]
  • Cuộn xuống phía dưới cùng của cửa sổ pop-up vừa xuất hiện
  • Chọn 'Author' trong mục "Filter Groups"
  • Chọn 'NoHTML' trong mục "FilterType"
  • Nhấn nút [Save] để lưu lại

Nhận xét cá nhân của VINAORA

  • Lỗ hổng trên là có thật, tuy nhiên mức độ của nó không quá nghiêm trọng. Hacker trước tiên cần phải đạt được quyền của nhóm "Author" trở lên.
  • JoomlaTools quá nóng vội và muốn đánh bóng tên tuổi nên đã công bố lỗi và bản vá trên website. Họ còn nhiều cách khác để liên lạc với Nhóm Bảo Mật Joomla hoặc những người có trách nhiệm nếu họ thực sự có thiện chí. Và họ nên thông báo riêng với Joomla thay vì công khai vấn đề.
  • Phía Joomla cũng thiếu trách nhiệm khi xóa bài viết trên Trang theo dõi lỗi (bug tracker) mà không có một lời cảm ơn cũng như phản hồi khác tới JoomlaTools. Ngoài ra, việc đăng tải bài viết chỉ trích gay gắt JoomlaTools (mặc dù không nói rõ) trên trang chủ sẽ khiến cho quan hệ giữa hai bên xấu đi nhiều.
  • Hai bên đáng nhẽ nên chọn giải pháp đối thoại một cách mềm dẻo hơn. Vì chung cuộc thì chỉ có người sử dụng là thiệt thòi nhất. Ngoài ra quan trọng hơn cả là hình ảnh Joomla sẽ bị mờ nhạt, các sản phẩm dành cho Joomla như DocMan cũng sẽ bị giảm sút và "Phải chăng sự rạn nứt trong cộng đồng Joomla đã bắt đầu xảy ra?" như một thành viên đã bình luận.

Ghi rõ nguồn "http://vinaora.com" khi sử dụng bài viết này. Trân trọng cảm ơn!

Tham khảo thêm:

Keyword:

  • joomla, joomla 1.5.7, security, vulnerability, joomlatools, author, filter
  • lỗ hổng, bảo mật
Last Updated on Sunday, 26 October 2008 09:18