Tài liệu này dành cho bất cứ những ai quan tâm tới bảo mật thông tin cho ứng dụng Web có sử dụng cơ sở dữ liệu, đặc biệt dành cho các quản trị Website, quản trị máy chủ Web Server có chạy các ứng dụng Web có nguy cơ tiềm ẩn và cũng là tài liệu tham khảo rất tốt cho các bạn đang theo học về quản trị mạng
LỜI NÓI ĐẦU Tài liệu dành cho quan tâm tới bảo mật thông tin cho ứng dụng Web có sử dụng sở liệu, đặc biệt dành cho quản trị Website, quản trị máy chủ Web Server có chạy ứng dụng Web có nguy tiềm ẩn tài liệu tham khảo tốt cho bạn theo học quản trị mạng Tài liệu hướng bạn làm để có hệ thống giả lập lỗi SQL Injection ứng dụng Web, cách sử dụng công cụ hỗ trợ việc công vào ứng dụng Web bị lỗi SQL Injection Vì tài liệu hướng dẫn phương pháp công hacker vào ứng dụng Web bị lỗi SQL Injection, phương châm “Hack phá hoại – Hack để bảo mật !” Nên xin nhắc nhở bạn tài liệu có tính chất tham khảo thực hành LAB, chúng tơi khơng chịu trách nhiệm việc bạn dùng kiến thức vào việc vi phạm pháp luật nhà nước Cơng Hịa Xã Hội Chủ Nghĩa Việt Nam Cuối chân thành cám ơn tài liệu tác giả O’Reilly, Kevin Spett, AirScanner diễn đàn bảo mật cung cấp tài liệu để chúng tơi hồn thành tài liệu hướng dẫn thực hành LAB Mọi thắc mắc xin gửi : anhducb@gmail.com Giới thiệu chung : Nội dung phần LAB module 14 – SQL Injection thể rõ phương châm “Hack để bảo mật !”, module bao gồm chuyên phương thức kỹ thực hành thâm nhập hệ thống : quét lỗi bảo mật, truyền lệnh thực thi trái phép, xâm nhập hệ thống máy chủ Web …của hacker để người quản trị có nhìn tổng quan từ phía hacker để thực chế độ bảo mật cho Web site cách tốt Vì lý lỗi bảo mật SQL Injection nhiều ứng dụng Web bị mắc phải Do giới hạn tài liệu tơi lấy ví dụ điển hình lỗi SQL Injection lỗi ứng dụng Web ASP (Active Server Pages) làm ví dụ để hướng dẫn phần LAB module Mục tiêu : Tham gia quản trị bảo mật hệ thống máy chủ chạy ứng dụng Web có sử dụng sở liệu tổ chức, công ty, xí nghiệp, quan Nắm vững phương pháp khảo sát, đánh giá mức độ an ninh mạng Nắm vững kỹ kiến thức, thực hành kinh nghiệm Ethical Hacking Xác định nguyên nhân, nhận diện xác đối tượng, động cơ, cách thức kẻ công xâm nhập liệu hệ thống Xác định mục tiêu, mối nguy hiểm thường trực an ninh ứng dụng Web tổ chức Phương thức thiết kế hệ thống ứng dụng Web theo hướng bảo mật Phương thức đối phó với cố xảy Hiểu rõ khái niệm, phương thức hoạt động hacker Biết sử dụng phương pháp công cụ để kiểm tra an ninh bảo mật ứng dụng Web tổ chức Điều kiện : - Có kiến thức Hệ điều hành mạng Windows (tương đương MCSA) Có kiến thức Hệ quản trị cớ sở liệu Microsoft SQL Server (tương đương MCDBA) Có kiến thức lập trình Web : HTML, ASP, PHP Có kiến thức Anh ngữ Quan tâm đến bảo mật thông tin ứng dụng Web Nội dung : • Phần chuẩn bị cho thực hành LAB • Phần thực hành LAB Phần chuẩn bị cho thực hành LAB: - Phần yêu cầu bạn sử dụng hệ thống PC để thực hành LAB thấy hiệu thực hành Tốt bạn nên sử dụng công cụ tạo máy ảo(VMware Workstation, Micsoft Virtual PC) để thực tốt phần thực hành LAB Ở tơi đưa mơ hình thực hành sau : Trong máy Attack sử dụng Windows XP sp2 máy chủ Web victim sử dụng Windows 2000 Server - 1.1 Máy chủ Web Server victim : 1.1.1 - Một hệ điều hành (OS) Microsoft Windows 2000 Server : Tôi sử dụng phiên Windows 2000 Server để hướng dẫn bạn thực hành LAB cho thuận tiện Việc để có hệ điều hành tất nhiên bạn biết tơi khơng nhắc tới, bên cạnh ta cần có Web Server chạy Web Server IIS 5.0 (Internet Information Service) Phần bạn học qua môn MCSA (Microsoft Certified System Administrator ) tất nhiên phải biết cách cài đặt gói phần mềm Web Server đâu - - Ở xin nhắc lại để bạn chưa biết biết cách cài đặt gói phần mềm để phục vụ cho thực hành LAB Vào Start Setting Control Panel Add / Remove Programs Chọn Add / Remove Windows Components Chọn dấu chọn gói Internet Information Services (IIS), gói phần mềm chạy ứng dụng Web Application ASP - Chọn Next - Chờ hệ thống cài đặt gói phần mềm IIS vào - - Chọn Finish Đến ta chuẩn bị xong phần Web Server cho hệ thống victim để phục vụ thực hành LAB 1.1.2 Một hệ quản trị sở liệu (database) Microsoft SQL Server 2000 : - Tôi sử dụng hệ quản trị sở liệu Microsoft SQL Server 2000 Standard để hướng dẫn cho bạn thực hành LAB cho thuận tiện Việc để có cách thức cài đặt gói phần mềm hệ quản trị sở liệu Microsoft SQL Server bạn học qua MCDBA (Micosoft Certified Database Administrator ) tất nhiên phải biết cách cài đặt sử dụng Ở xin nhắc lại cách để bạn chưa biết tự cài đặt gói phần mềm để phục vụ cho thực hành LAB Chọn file setup.bat (trong thư mục gốc cài đặt) - - - Chọn Next - Chọn Local Computer chọn Next 10 110 - - Chờ đợi thông số quét trả chương trình Đây lỗi mà chương trình qt thăm dị phát ứng dụng Web 111 - Q trình qt thăm dị hồn tất 112 2.4.2 Công cụ THCsql ver 0.1 – Remote root Exploit : - - Giới thiệu với bạn cơng cụ dùng để Remote root SQL Server, hiểu công cụ dùng khai thác tìm kiếm lổ hổng từ hệ thống SQL Server kết nối tới SQL Sever cổng sau (backdoor) Và lưu ý công cụ chạy môi truong DOS, nên bạn muốn sử dụng công cụ phải chuyển vào môi trường DOS Windows Ta bắt đầu với bước kiểm tra IP SQL Server 113 - - Sử dụng công cụ THCsql để khai thác lổ hổng SQL Server câu lệnh : “thcsql ” Như ta có cổng kết nối sau SQL Server 114 - Ta sử dụng công cụ Netcat để kết nối tới Server lưu ý Netcat chạy môi trường DOS nên muốn sử dụng bạn phải chuyển vào môi trường DOS Windows - Sử dụng câu lệnh sau để kết nối tới cổng sau (backdoor) SQL Server : “nc address port” 115 - Và đến ta có toàn quyền SQL Server, kiểm tra thử IP SQL Server 116 2.4.3 Công cụ forceSQL – Crack password SA : - - Giới thiệu với bạn công cụ dùng để crack password SA (tài khoản quản trị cao SQL Server) Và công cụ vừa giới thiệu, công cụ chạy môi trường DOS Ta bắt đầu với bước kiểm tra IP SQL Server Sử dụng công cụ forceSQL để crack password SA SQL Server câu lệnh : forcesql -d 117 - Và đến ta có thơng tin ve password SA ví dụ password SA NULL (rổng) 118 2.4.4 Công cụ SQLdict ver 2.1 – Crack password SA : - - Cũng hai công cụ trên, công cụ dùng để crack password SA SQL Server Nhưng đến cơng cụ thuận tiện hai cơng cụ sử dụng giao diện thuân tiện cho người sử dụng Ta bắt đầu với bước kiểm tra IP SQL Server Open chương trình crack password SQLdict 2.1 119 - Nhập thông tin địa IP SQL Server, user SA SQL Sever 120 - Open file thư viện password “word.txt” 121 - Ta bắt đầu crack password SA SQL Server 122 - Đến ta có password SA SQL Server 123 2.5 Tài liệu tham khảo : - 2.6 O’Reilly SQL Hack SQL Injection by Kevin Spett SQL Hack by Airscanner Blind SQL Injection by Kevin Spett Tóm tắt kết : - Như ta tóm tắt kết thu từ thực hành LAB sau Một máy chủ Web Server luôn tiềm ẩn nguy bị công thông qua các ứng dụng Web bị lỗi SQL Injection Từ ứng dụng Web bị lỗi SQL Injection, hacker có tồn quyền máy chủ Web Server chạy ứng dụng Web bị lỗi Một máy chủ Web Server nơi chứa đựng nguy bị công từ dịch vụ chạy nó, ví dụ nguy bị công từ dịch vụ Microsoft SQL Server Ngồi phương pháp cơng hacker sử dụng tay, họ sử dụng công cụ giới thiệu làm công cụ hỗ trợ cho công vào máy chủ Web chạy ứng dụng Web bị lỗi SQL Injection 124 ... chủ Web ? ?của hacker để người quản trị có nhìn tổng quan từ phía hacker để thực chế độ bảo mật cho Web site cách tốt Vì lý lỗi bảo mật SQL Injection nhiều ứng dụng Web bị mắc phải Do giới hạn tài. .. động cơ, cách thức kẻ công xâm nhập liệu hệ thống Xác định mục tiêu, mối nguy hiểm thường trực an ninh ứng dụng Web tổ chức Phương thức thiết kế hệ thống ứng dụng Web theo hướng bảo mật Phương. .. Injection : Tôi sử dụng source Web Application ASP bị lỗi SQL Injection “Juggy Bank” để hướng dẫn bạn chuẩn bị cho thực hành LAB cách thuận tiện Vào Start Programs Microsoft SQL Server Enterprise