0
Tải bản đầy đủ (.doc) (49 trang)

Một số Tool Khai thác lỗ hổng bảo mật Web Application

Một phần của tài liệu CÔNG CỤ VÀ PHƯƠNG PHÁP PHÁT HIỆN LỖ HỔNG BẢO MẬT WEB APPLICATION (Trang 39 -42 )

6.1 Havij

6.1.1 Giới thiệu

Havij là một công cụ SQL Injection tự động giúp kiểm tra thâm nhập để tìm và khai thác lỗ hổng SQL Injection trên một trang web. Nó có thể tận dụng lợi thế của một ứng dụng web dễ bị tổn thương. Bằng cách sử dụng phần mềm này, người dùng có thể thực hiện back-end cơ sở dữ liệu, lấy tên đăng nhập Database Manager Systems và hash mật khẩu, bảng và cột, lấy dữ liệu từ cơ sở dữ liệu, thực hiện các câu lệnh SQL đối với máy chủ, và thậm chí truy cập hệ thống tập tin cơ bản và thực hiện lệnh shell trên hệ điều hành. Sức mạnh đặc biệt của Havij để phân biệt nó với các công cụ tương tự nằm trong phương pháp độc đáo là các phương pháp tiêm kích mới

6.1.2 Đặc điểm

- Loại bỏ tất cả CSDL mà nó phát hiện

- Các phương pháp bypass SQL mới và hiệu quả

- Tính năng ghi lại đặc điểm tập tin MSSQL và MySQL - Load mã HTML vào form Input

- Lưu dữ liệu tìm được ở dạng CVS - Đa dạng các phương thức Injection

6.1.3 Cách sử dụng

Bước 1: Đầu tiên tải về Havij SQL Injection và cài đặt

Bước 2: Chạy phần mềm Havij SQL Injection và sao chép và dán liên kết trang web muốn tấn công vào mục Target

Bước 4: Sau đó, nó cho thấy một số thông điệp tìm được. Là cảnh báo về nó và phải hiển thị kiên nhẫn cho đôi khi tìm thấy nó vulernable và loại tiêm và nếu máy chủ db mysql và nó sẽ tìm thấy cơ sở dữ liệu tên.Sau đó sau khi nhận được cơ sở dữ liệu của nó là tên là …

Bước 5: Sau đó di chuyển đến tab Table để tìm bảng bằng. Bây giờ bấm "Nhận được bảng" sau đó chờ đợi một thời gian nếu cần thiết

Bước 6: Sau khi nhận được các bảng, tìm đến tên các bảng muốn khai thác thông tin và đánh dấu vào đó, sau đó chuyển sang Tab Get Column để lấy danh sách các cột trong bảng

Bước 7: Tiếp theo chuyển sang Tab Get Data để lấy CSDL trong các cột của bảng

Bước 8: Cuối cùng, bạn đã có thông tin của admin hay user, bây giờ tìm trang đăng nhập của admin hay cùa cơ sở dữ liệu và tiến hành đăng nhập.

Hình 27. Giao diện làm việc của Havij

6.2 Sqlmap

Sqlmap là một công cụ kiểm tra xâm nhập bằng mã nguồn mở, nó tự động quá trình phát hiện và khai thác lỗ hổng SQL Injection và vượt qua sự kiểm tra của các máy chủ cơ sở dữ liệu. Nó đi kèm với một bộ máy phát hiện mạnh mẽ, nhiều tính năng thích hợp cho các thử nghiệm xâm nhậpcuối cùng và một loạt các thiết bị chuyển mạch kéo dài đến cơ sở dữ liệu. Để truy cập vào hệ thống tập tin cơ bản và thực hiện lệnh trên hệ điều hành thông qua các kết nói ra ngoài.

6.2.2 Đặc điểm

- Hỗ trợ đầy đủ các cơ sở dữ liệu như ỗ trợ đầy đủ cho MySQL , Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird , Sybase và hệ thống quản lý cơ sở dữ liệu SAP MaxDB .

- Hỗ trợ đầy đủ cho sáu kỹ thuật khai thác lỗi SQL injection như : boolean- based blind, timebased blind, error-based, UNION query, stacked queries and out-of-band.

- Hỗ trợ kết nối trực tiếp đến cơ sở dữ liệu mà không cần đi qua một SQL injection , bằng cách cung cấp thông tin Database Management Systems, địa chỉ IP, cổng và tên cơ sở dữ liệu

- Hỗ trợ để liệt kê người dùng, các hash mật khẩu , đặc quyền , vai trò, cơ sở dữ liệu , bảng và cột.

- Tự động nhận dạng các định dạng băm mật khẩu và hỗ trợ cho việc bẻ khóa chúng bằng một cuộc tấn công dựa trên từ điển

- Hỗ trợ để loại bỏ bảng cơ sở dữ liệu hoàn toàn , một loạt các mục hoặc cột cụ thể theo sự lựa chọn của người dùng. Người sử dụng cũng có thể chọn để lọai bỏ chỉ là một loạt các đối tượng nhập ở mỗi cột.

- Hỗ trợ để tìm kiếm tên cơ sở dữ liệu cụ thể, bảng cụ thể trên tất cả các cơ sở dữ liệu hoặc cột cụ thể trên tất cả các bảng cơ sở dữ liệu .

- Hỗ trợ để tải về và tải lên bất kỳ tập tin từ hệ thống tập tin máy chủ cơ sở dữ liệu cơ bản khi các phần mềm cơ sở dữ liệu là MySQL, PostgreSQL hoặc Microsoft SQL Server .

- Hỗ trợ để thực hiện các lệnh tùy ý và lấy đầu ra tiêu chuẩn của họ trên hệ điều hành máy chủ cơ sở dữ liệu cơ bản khi các phần mềm cơ sở dữ liệu là MySQL, PostgreSQL hoặc Microsoft SQL Server

- Hỗ trợ để thiết lập một kết nối TCP trạng thái out-of -band giữa các máy tính tấn công và máy chủ cơ sở dữ liệu chạy dưới hệ điều hành cơ bản . Kênh này có thể là một dấu nhắc lệnh tương tác , một phiên Meterpreter hoặc một giao diện người dùng đồ họa (VNC ) phiên theo sự lựa chọn của người dùng.

- Hỗ trợ cho quá trình người sử dụng leo thang đặc quyền về cơ sở dữ liệu thông qua lệnh getsystem Meterpreter Metasploit

6.2.3 Cách sử dụng

Bạn download Sqlmap tại http://sqlmap.org/ Sqlmap được viết bằng ngôn ngữ Python, vì vậy để sử dụng tool này bạn cần cài đặt Python.

Bạn có thể download python tại http://www.python.org/downloads/ Để thực hiện tấn công bạn làm như sau

Bước 1: Mở cmd và gõ lệnh dưới đây để sqlmap sẽ phát hiện lỗ hổng của mục tiêu vào đưa ra thông tin về lỗ hổng.

python sqlmap.py –u “http://tenwebsite.../....php?id=1”

Bước 2: Khi đã xác định được là website mục tiêu tồn tại lỗ hổng SQL injection, ta tiến hành tìm tên cơ sở dữ liệu.

python sqlmap.py –u “http://tenwebsite.../....php?id=1” --dbs

Bước 3: Sau khi xác định được tên cơ sở dữ liệu, ta sẽ tìm tiếp tên các bảng có trong cơ sở dữ liệu.

python sqlmap.py –u “http://tenwebsite.../....php?id=1” --tables –D tenCSDLvuatimduoc

Bước 4: Xác định tên các cột trong bảng

python sqlmap.py –u “http://tenwebsite.../....php?id=1” --columns –D tenCSDLvuatimduoc –T tenbangvuatimduoc

Bước 5: Lấy thông tin dữ liệu từ bảng và cột

python sqlmap.py –u “http://tenwebsite.../....php?id=1” --dump –D tenCSDLvuatimduoc –T tenbangvuatimduoc

Bước 6: Tìm trang đăng nhập của admin hay trang quan lý CSDL và tiến hành đăng nhập.

Hình 28: Giao diện làm việc của Sqlmap

Một phần của tài liệu CÔNG CỤ VÀ PHƯƠNG PHÁP PHÁT HIỆN LỖ HỔNG BẢO MẬT WEB APPLICATION (Trang 39 -42 )

×