Bảo mật hơn cho password - Web programer

  • Thread starter Thread starter AdminAdmin is verified member.
  • Start date Start date
Admin

AdminAdmin is verified member.

Well-Known Member
Staff member
Administrator
Hiện nay, nhiều bạn học lập trình rất giỏi, cực kì xuất sắc nữa là khác, nhưng các bạn đó có bao giờ chú ý để việc đặt 1 password sao cho BẢO MẬT.
- Thú thật, khi mình khai thác sqli, nhiều site đặt password chẳng mã hóa lun, chắc điều này các bạn cũng biết nhỉ????
- Một số khác, lại mã hóa cái password ấy, nhưng cực kì sơ sài, bởi vì, họ chỉ quan tâm tới vẻ bên ngoài sao cho bắt mắt, đẹp và ... chạy được, bùn cười quá phải ko các bạn, nhưng it is true


vd 1 cách đặt pass phổ biến như:
$password = md5($_POST["pass"]);


Theo bạn nghĩ, cách đặt như vậy có an toàn ko????
----


Nếu bạn nào nghĩ, nó là an toàn thì thật sai lầm, thật đấy!
chẳng hạn như:
_http://hashkiller.com/index.php?action=md5webcrack
_http://www.cmd5.com/english.aspx
_http://www.md5crack.com
_http://md5-db.com
_http://www.tmto.org/?category=main&page=search_md5



có thế sẽ làm các webmaster bùn tình với cách mã hóa pass như vậy....
-----------------


Đây là 1 vài kinh nghiệm, mà có lẽ các bạn lập trình web, hay lập trình ứng dụng đi chăng nữa nên tham khảo (minh họa bằng php)


vd1:
function encrypt_pass($pass, $salt = '!@#$%^&*()')
{
return md5($pass.$salt)
}



vd2: mở rộng hơn xíu xíu:
function encrypt_pass($pass, $salt = '!@#$%^&*()')
{
return md5(md5(md5($pass.$salt)));
}





vd3:
function encrypt_pass($pass, $salt = '!@#$%^&*()')
{
return crypt($pass, $salt);
}



vd4:

function encrypt_pass($pass, $salt = '!@#$%^&*()')
{
return " PASSWORD({$pass}{$salt}) "; // password là 1 hàm trong CSDL mysql
}



vd5:
...vân vân và vân vân........


Sử dụng thì đơn giản phải ko????


bây giờ sử dụng:


$password = encrypt_pass($_POST["pass"]);


lúc này, ví password bạn đặt là 123456 thì khi lưu vào CSDL nó sẽ là


md5('123456!@#$%^&*()') <--- crack chắc 10 năm quoá! :D


hoặc


$password = encrypt_pass($_POST['pass'], "thang-na0-ng0n-thi-h4ck");


vd: password bạn đặt là 123456 thì password lưu vào CSDL sẽ là:


md5('123456thang-na0-ng0n-thi-h4ck') <--- crack chắc 20 năm quoá! :D
.....


Cho dù site có dính sql injection cũng phần nào hạn chế anh em x bắn phá nhỉ???? ---


------------END--------------


p/s:
- Mong anh em X ko chửi mình nhoa, vì ... làm vậy còn đâu mà khai thác??? mình mà đi dạy lập trình web thì anh em x mang mã tấu, lựu đạn tìm mình quóa!!!
 

Facebook Comments

Similar threads

Admin
Replies
0
Views
2K
AdminAdmin is verified member.
Admin
Admin
Replies
0
Views
3K
AdminAdmin is verified member.
Admin
Admin
Replies
0
Views
4K
AdminAdmin is verified member.
Admin
Back
Top