09/10/2018, 23:31
Cao thủ VBB + PHP giúp đỡ
Xin chào các bác. Hiện tui muốn viết một số script dùng chung database của VBB 3.6.x nhưng gặp phải một vấn đề khá rắc rối là việc mã hóa md5 nhiều lớp của VBB. Theo tui tìm hiểu dc thì VBB mã hóa md5 pasword cộng với 3 ký tự bất kỳ ở cột "salt" trong bảng "user" dc lưu khi người dùng đăng ký.
Đây là 1 phần đoạn code check login trong function_login.php của VBB
Mặc dù đã thử nhiều lần nhưng khi mã hóa md5 cho chuỗi password bình thường như "12345" và salt là "Url" thì không tài nào trùng khớp với chuỗi pass mã hóa trong database là "826f0de666dfc1b2572bca2ad6146560". Mong các bác giúp đỡ (không biết có cần include file nào nữa của VBB không). Thanks.
Đây là 1 phần đoạn code check login trong function_login.php của VBB
$vbulletin->userinfo['password'] != iif($password AND !$md5password, md5(md5($password) . $vbulletin->userinfo['salt']), ') AND
$vbulletin->userinfo['password'] != iif($md5password, md5($md5password . $vbulletin->userinfo['salt']), ') AND
$vbulletin->userinfo['password'] != iif($md5password_utf, md5($md5password_utf . $vbulletin->userinfo['salt']), ')
$vbulletin->userinfo['password'] != iif($md5password, md5($md5password . $vbulletin->userinfo['salt']), ') AND
$vbulletin->userinfo['password'] != iif($md5password_utf, md5($md5password_utf . $vbulletin->userinfo['salt']), ')
Bài liên quan
Phương pháp mã hóa Password của VBB như sau:
$password = '12345';
$salt = 'Url';
md5(md5($password).$salt)
Salt là muối, xoài chấm muối
$password = '12345';
$salt = 'Url';
echo md5(md5($password).$salt);
?>
vẫn không giống chuỗi pass trong database. Mong các bác xem lại.
<?php
$password = '12345'; // password của người dùng nhập
$salt = 'Url'; // lôi kết quả salt field trong database ra DỰA VÀO USERNAME người dùng đang login
echo md5(md5($password).$salt); // thực thi function này và so sánh
?>
Help me....
Tôi tham gia DDTH từ rất lâu với số bài viết như vậy mà spam hỏ? Tôi đâu phải là con nít .