1. Trang chủ
  2. » Công Nghệ Thông Tin

Đoạt quyền Admin ở Mambo SiteServer

2 361 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đoạt quyền admin ở Mambo SiteServer
Trường học Mambo Server
Thể loại bài viết
Năm xuất bản 2025
Định dạng
Số trang 2
Dung lượng 30 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đoạt quyền Admin ở Mambo SiteServer

Trang 1

Đoạt quyền Admin ở Mambo SiteServer :

trang này đã được đọc lần

PROGRAM: Mambo SiteServer

HOMEPAGE: http://www.mamboserver.com/

TESTED: Mambo 4.0.12 RC2

LOGIN REQUIRED: No

PROOF OF CONCEPT

==============

http://www.voidnull.com/exploit/mamboexp.phps

DESCRIPTION

==========

Một lỗi trong /administrator/index2.php cho phép bất kỳ user nào cũng có thể đoạt được quyền admin Thực tế, bạn chỉ nghĩ logging như một user bình thường sẽ tạo sessionid này, tuy nhiên một bug trong mã nguồn PHP mà chắc chắn không làm cho điều này xảy ra

Bất kỳ người nào hiểu sơ sơ về PHP cũng biết rằng khi bạn set một cookie, nó sẽ không cập nhật cho đến khi bạn refresh trang web Bất kỳ người nào nhưng người làm mã cho Mambo SiteServer là:

setcookie("sessioncookie", "$sessionID");

if ($HTTP_COOKIE_VARS["sessioncookie"]!="") {

$query="INSERT into ".$dbprefix."session set

session_id='$cryptSessionID', guest='', userid='$uid',

usertype='$usertype', gid='$gid', username='$username'";

$database->openConnectionNoReturn($query);

}

Như chúng ta có thể thấy, Mambo SiteServer kiểm tra nếu cookie được set trước khi nó cài vào sessionid trong table Như thế nó sẽ chưa được set, không có sessionid nào được cài vào và vì thế chúng ta không thể "login" vào ngay cả thư mục admin

Chuyển đến đoạn mã nguồn trong SessionCookie.php (cái mà được gọi ra khi bạn logout), chúng ta có thể thấy rằng một sessionid được cài vào mỗi khi logout Tại sao? Tôi không có ý kiến

$current_time = time();

if ($HTTP_COOKIE_VARS["sessioncookie"]==""){

$randnum=getSessionID1();

$cryptrandnum=md5($randnum);

setcookie("sessioncookie", "$randnum");

$guest=1;

$query="INSERT into ".$dbprefix."session SET username='',

time=$current_time, session_id='$cryptrandnum', guest=$guest";

$database->openConnectionNoReturn($query);

}

Trang 2

Một cookie, trông giống như sau sẽ được send đến trình duyệt:

sessioncookie=nh54OQIZb8ybaA2CNNdU1046102063

Tất cả những gì chúng ta phải làm là MD5-encrypt nó

0ebda5bbba49dc226b4ed8fc801f1d98

Bằng việc truy cập /administrator/index2.php với session này, Mambo SiteServer sẽ nghĩ rằng chúng ta là administrator log in vào:

/administrator/index2.php?session_id=0ebda5bbba49dc226b4ed8fc801f1d98

SUMMARY

=======

Đoạt được quyền admin cho phép bạn truy cập vào tất cả cơ sở dữ liệu của MySQL, user passwords, news, polls và tất cả mọi thứ mà server có được Nhiều websites chạy Mambo SiteServer cộng với những scripts khác mà cần cho MySQL, và điều này là lời cảnh báo đến những webmasters

SOLUTIONS

========

Cho đến khi Mambo cho ra patch tôi đề nghị bảo vệ mật khẩu thư mục /administrator với htaccess

VENDOR STATUS

===========

Đã thông báo cho nhà cung cấp Họ đang làm cái patch cho lỗi này

Ngày đăng: 02/11/2012, 14:18

TỪ KHÓA LIÊN QUAN

w