Luận văn thạc sĩ công nghệ thông tin nghiên cứu giải pháp dùng firewall bảo vệ máy chủ trước các tấn công dos và sql injection

77 722 0
Luận văn thạc sĩ công nghệ thông tin nghiên cứu giải pháp dùng firewall bảo vệ máy chủ trước các tấn công dos và sql injection

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 MỞ ĐẦU Với sự phát triển nhanh của mạng Internet, bảo mật thông tin trở lên vô cùng cấp bách để có được những thông tin giá trị và tin cậy. Người quản lý nhận thấy việc đầu tư cho an ninh không chỉ là lợi lớn mà còn là rất cần thiết. Các công ty nhận ra sự cần thiết của việc tạo ra và tuân theo chính sách bảo mật thông tin, bởi vậy, người IT chuyên nghiệp luôn luôn bị thách thức để bảo vệ mạng của họ với firewall và tạo mạng riêng ảo VPN để cung cấp sự an toàn cho các giao dịch được mã hóa qua hạ tầng Internet công cộng dễ bị tấn công. Firewall đã trở thành một trong những công nghệ đầu tiên bảo vệ mạng và chống lại truy nhập trái phép. Kế hoạch bảo mật yêu cầu sự kết hợp hài hòa của con người, xử lý, và công nghệ để giảm rủi ro. Và firewall cũng là một công cụ bảo mật giá trị để thực hiện nhiệm vụ này. Ngày nay, khi thiết kế và xây dựng mạng sử dụng firewall là tất yếu cho nhiều mô hình ở giai đoạn cuối. Nhận ra điều này, nhiều công ty bảo mật đã phát triển và tiếp tục cải thiện các sản phẩm firewall. Với mục tiêu chính là tìm hiểu công nghệ phòng chống tấn công Sql injection và Dos, giải thuật Boyer-Moore, Cusum để phát hiện và ngăn chặn tấn công. Đề tài đặt ra một số mục tiêu, xác định phạm vi, bố cục của luận văn như sau: Mục tiêu của đề tài Xây dựng một firewall có khả năng phát hiện và giảm thiểu các tấn công Sql Injection và Dos vào webserver. Đồng thời cung cấp một giao diện quản lý người dùng trực quan thân thiện, giúp hệ thống vận hành tốt và không bị trục trặc. Phạm vi nghiên cứu của đề tài Phạm vi nghiên cứu của đề tài thuộc lĩnh vực bảo mật mạng máy tính, chỉ áp dụng để phát hiện sql injection và Dos. Các khả năng có thể xử lý được: - Phát hiện và giảm thiểu những cuộc tấn công sql injection đơn giản. - Phát hiện một số kiểu tấn công DOS. - Không ngăn chặn được triệt để tấn công DOS. Kết quả dự kiến đạt đƣợc 2 - Xây dựng công cụ hỗ trợ cho việc phát hiện và giảm thiểu tấn công sql injection và Dos - Thiết kế và cài đặt hệ thống với các thành phần và chức năng đầy đủ trong mô hình hệ thống tổng quát. - Áp dụng thử nghiệm tại phòng máy Đại học Lạc Hồng. Bố cục của luận văn Bố cục của luận văn bao gồm phần mở đầu, phần kết luận và bốn chương nội dung được tổ chức như sau: Chƣơng 1: Tổng quan về an ninh mạng: giới thiệu về một số virus nguy hiểm và các phương thức lừa đảo tấn công trên mạng. Chƣơng 2: Cơ sở lý thuyết: nêu chi tiết về các khái niệm firewall, các cách tấn công và phòng chống với hình thức tấn công bằng câu lệnh SQL Injection và DOS Chƣơng 3: Các phƣơng pháp chặn bắt và tìm kiếm Packet: miêu tả các kỹ thuật chặn bắt và phân tích gói tin từ đó xây dựng chương trình phát hiện và ngăn chặn các gói tin hoặc IP có dấu hiệu bất thường. Chƣơng 4: Thiết kế và xây dựng chƣơng trình Chƣơng 5: Kết luận và hƣớng phát triển 3 CHƢƠNG 1. TỔNG QUAN VỀ AN NINH MẠNG 1.1 Hiện trạng về an ninh mạng Trong những năm gần đây với sự phát triễn mạnh mẽ của internet đã đem lại cho người dùng rất nhiều lợi ích. Ngoài lợi ích thì cũng có rất nhiều vấn đề về an ninh mạng xảy ra trong năm 2011. Theo thống kê từ hệ thống giám sát của BKAV thì có 64,2 triệu lượt máy tính tại Việt Nam bị nhiễm virus là tổng kết năm 2011 từ Hệ thống giám sát virus của Bkav. Trung bình một ngày đã có hơn 175 nghìn máy tính bị nhiễm virus. Năm 2011, đã có 38.961 dòng virus xuất hiện mới, lây lan nhiều nhất là virus W32.Sality.PE. Virus này đã lây nhiễm trên 4,2 triệu lượt máy tính. Danh sách 15 virus lây lan nhiều nhất trong năm 2011: Hình 1.1 Danh sách virus 2011 4 Cũng trong năm 2011, đã có 2.245 website của các cơ quan, doanh nghiệp tại Việt Nam bị tấn công. Trung bình mỗi tháng có 187 website bị tấn công.  Mạng lƣới "nằm vùng" nguy hiểm W32.Sality.PE Hơn 4,2 triệu lượt máy tính tại Việt Nam đã bị nhiễm virus siêu đa hình W32.Sality.PE trong năm 2011, như vậy trung bình mỗi ngày có thêm 11.000 máy tính bị nhiễm loại virus này. Virus Sality đã len lỏi vào mọi ngóc ngách trong các hệ thống mạng máy tính tại Việt Nam. Trong thực tế, khi kiểm tra bất kỳ hệ thống nào, các chuyên gia của Bkav hầu như đều phát hiện sự tồn tại của Sality. Không chỉ là virus lây lan nhiều nhất năm 2011, đây thực sự là quả "bom nổ chậm", sẵn sàng phát nổ gây ảnh hưởng đến hàng triệu máy tính trong thời gian tới. Mặc dù lây nhiễm hàng triệu máy tính, tuy nhiên trong suốt một thời gian dài theo dõi dòng virus này từ năm 2009 đến nay, virus Sality vẫn đang chỉ "nằm vùng" mà chưa kích hoạt các tính năng phá hoại như ăn cắp thông tin hay phá hủy dữ liệu. Đây thực sự là một điều khó lý giải. Rất có thể có một tổ chức, thậm chí là một quốc gia đứng đằng sau mạng lưới virus này và chưa rõ ý đồ thực sự của họ là gì. Lý do khiến W32.Sality.PE có thể lây lan tới hàng triệu máy tính là vì virus này có khả năng sử dụng các giải thuật di truyền để tự động lai tạo, sinh ra các thế hệ virus "con cháu" F1, F2… Càng lây nhiễm lâu trên máy tính, virus càng sinh ra nhiều biến thể với Hình 1.2 Số lượng website bị tấn công 5 độ phức tạp càng cao, khiến cho khả năng nhận dạng và bóc lớp của các phần mềm diệt virus càng khó khăn. Chính vì thế W32.Sality.PE có thể qua mặt được hầu như tất cả các phần mềm diệt virus trên thế giới.  Lừa đảo trực tuyến gia tăng trên mạng xã hội Các chuyên gia đã nhận định 2011 sẽ là năm xuất hiện nhiều cuộc tấn công lừa đảo trên mạng. Điều này thực tế đã xảy ra, trung bình mỗi tháng Bkav nhận được hơn 30 báo cáo về lừa đảo qua Yahoo Messenger. Trong mỗi vụ, số nạn nhân có thể lên tới hàng chục người. Mặc dù đã được cảnh báo nhiều lần nhưng do sự nhẹ dạ của người sử dụng mà các vụ cướp nick hoặc lừa tiền vẫn diễn ra liên tiếp. Không chỉ Yahoo mà giờ đây Facebook, mạng xã hội lớn nhất thế giới đã trở thành phương tiện để tin tặc lợi dụng.  Botnet và những cuộc tấn công mạng liên tiếp Năm 2011 là năm của các cuộc tấn công mạng. Liên tiếp xảy ra các cuộc tấn công với các hình thức khác nhau vào hệ thống của các tổ chức, doanh nghiệp tại Việt Nam. Có những cuộc tấn công xâm nhập trái phép phá hoại cơ sở dữ liệu hoặc deface các website. Cũng có những cuộc tấn công DDoS làm tê liệt hệ thống trong thời gian dài. Tấn công cướp tên miền của các doanh nghiệp cũng đã diễn ra liên tiếp. Nguy hiểm hơn, đã xuất hiện nhiều cuộc tấn công âm thầm, cài đặt các virus gián điệp đánh cắp tài liệu của các cơ quan quan trọng. Các vụ tấn công xảy ra phần lớn có nguyên nhân từ nhận thức của lãnh đạo các cơ quan, doanh nghiệp về tầm quan trọng của an ninh mạng, dẫn đến sự đầu tư dàn trải, thiếu một giải pháp tổng thể cho an toàn an ninh hệ thống. Đáng chú ý trong năm 2011 là sự việc hơn 85.000 máy tính tại Việt Nam bị cài virus Ramnit để lấy cắp dữ liệu quan trọng. Điều này cho thấy các cuộc tấn công còn có thể gây ảnh hưởng đến an ninh quốc gia. Không chỉ tại Việt Nam, hệ thống botnet này còn được hacker điều khiển thông qua nhiều máy chủ đặt ở Mỹ, Nga, Đức và Trung Quốc để lấy cắp thông tin trên toàn cầu. Đây là tình trạng phổ biến trên thế giới trong năm 2011. 1.2 Cách giải quyết vấn đề 6  Để chống lại các cuộc tấn công, nhất thiết cần áp dụng Hệ thống quản lý an ninh thông tin ISO 27001. Quy trình ISO sẽ bắt buộc các website phải được đánh giá độc lập về an ninh trước khi đưa vào vận hành, hạ tầng mạng phải được thiết kế tổng thể ngay từ khi xây dựng. Ngoài ra, để bảo vệ các hệ thống website, chống bị đánh cắp dữ liệu, việc áp dụng một giải pháp tổng thể phòng chống virus là điều tối quan trọng. Khi thực hiện được tất cả các việc này, hệ thống mạng mới có thể được đảm bảo ở mức cao nhất.  Sử dụng firewall phần cứng và phần mềm. 7 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT 2.1 Khái niệm về tƣờng lửa ( firewall ) Thuật ngữ Firewall [4] có nguồn gốc từ một kỹ thuật thiết kế trong xây dựng để ngăn chặn, hạn chế hoả hoạn. Trong công nghệ mạng thông tin, Firewall là một kỹ thuật được tích hợp vào hệ thống mạng để chống sự truy cập trái phép, nhằm bảo vệ các nguồn thông tin nội bộ và hạn chế sự xâm nhập không mong muốn vào hệ thống. Cũng có thể hiểu Firewall là một cơ chế (mechanism) để bảo vệ mạng tin tưởng (Trusted network) khỏi các mạng không tin tưởng (Untrusted network). Internet Firewall là một thiết bị (Phần cứng + Phần mềm) giữa mạng của một tổ chức, một công ty, một quốc gia (Intranet) và Internet. Nó thực hiện vai trò bảo mật các thông tin Intranet từ thế giới Internet bên ngoài. 2.2 Phân loại và đặc điểm Firewall 2.2.1. Firewall cứng Là những firewall được tích hợp trên Router. Hình 2.1: Minh họa Firewall cứng  Đặc điểm của Firewall cứng:  Không được linh hoạt như Firewall mềm: (Không thể thêm chức năng, thêm quy tắc như firewall mềm)  Firewall cứng hoạt động ở tầng thấp hơn Firewall mềm (Tầng Network và tầng Transport).  Firewall cứng không thể kiểm tra được nột dung của gói tin. Ví dụ :Firewall cứng: NAT (Network Address Translate). 2.2.2. Firewall mềm Là những Firewall được cài đặt trên Server. 8 Hình 2.2: Minh họa Firewall mềm  Đặc điểm của Firewall mềm:  Tính linh hoạt cao: Có thể thêm, bớt các quy tắc, các chức năng.  Firewall mềm hoạt động ở tầng cao hơn Firewall cứng (tầng ứng dụng).  Firewal mềm có thể kiểm tra được nội dung của gói tin (thông qua các từ khóa). Ví dụ về Firewall mềm: Zone Alarm, Norton Firewall, Internet security acceleration … 2.2.3. Vì sao cần Firewall Hình 2.3: Các luồng trao đổi dữ liệu từ PC ra Internet và ngược lại khi có Firewall và không có Firewall Nếu máy tính của bạn không được bảo vệ, khi bạn kết nối Internet, tất cả các giao thông ra vào mạng đều được cho phép, vì thế hacker, trojan, virus có thể truy cập và lấy cắp thông tin cá nhân cuả bạn trên máy tính. Chúng có thể cài đặt các đoạn mã để tấn công file dữ liệu trên máy tính. Đồng thời chúng còn sử dụng máy tính của bạn để tấn công một máy tính của gia đình hoặc doanh nghiệp khác kết nối Internet. Một firewall có thể giúp bạn thoát khỏi gói tin hiểm độc trước khi nó đến. 2.2.4. Chức năng Chức năng chính của Firewall là kiểm soát luồng thông tin từ giữa Intranet và Internet. Thiết lập cơ chế điều khiển dòng thông tin giữa mạng bên trong (Intranet) và mạng Internet. Cụ thể là:  Cho phép hoặc cấm những dịch vụ truy nhập ra ngoài (từ Intranet ra Internet).  Cho phép hoặc cấm những dịch vụ phép truy nhập vào trong (từ Internet vào Intranet). 9  Theo dõi luồng dữ liệu mạng giữa Internet và Intranet.  Kiểm soát địa chỉ truy nhập, cấm địa chỉ truy nhập.  Kiểm soát người sử dụng và việc truy nhập của người sử dụng.  Kiểm soát nội dung thông tin lưu chuyển trên mạng. 2.2.5. Nhiệm vụ Firewall Nhiệm vụ cơ bản của FireWall là bảo vệ những vấn đề sau :  Dữ liệu : Những thông tin cần được bảo vệ do những yêu cầu sau:  Bảo mât.  Tính toàn vẹn.  Tính kịp thời.  Tài nguyên hệ thống.  Danh tiếng của công ty sở hữu các thông tin cần bảo vệ. 2.2.6. Những hạn chế của firewall Firewall không đủ thông minh như con người để có thể đọc hiểu từng loại thông tin và phân tích nội dung tốt hay xấu của nó. Firewall chỉ có thể ngăn chặn sự xâm nhập của những nguồn thông tin không mong muốn nhưng phải xác định rõ các thông số địa chỉ. Firewall không thể ngăn chặn một cuộc tấn công nếu cuộc tấn công này không "đi qua" nó. Một cách cụ thể, firewall không thể chống lại một cuộc tấn công từ một đường dial-up, hoặc sự dò rỉ thông tin do dữ liệu bị sao chép bất hợp pháp lên đĩa mềm. Firewall cũng không thể chống lại các cuộc tấn công bằng dữ liệu (data-driven attack). Khi có một số chương trình được chuyển theo thư điện tử, vượt qua firewall vào trong mạng được bảo vệ và bắt đầu hoạt động ở đây. Một ví dụ là các virus máy tính. Firewall không thể làm nhiệm vụ rà quét virus trên các dữ liệu được chuyển qua nó, do tốc độ làm việc, sự xuất hiện liên tục của các virus mới và do có rất nhiều cách để mã hóa dữ liệu, thoát khỏi khả năng kiểm soát của firewall.  Tuy nhiên, Firewall vẫn là giải pháp hữu hiệu được áp dụng rộng rãi. 2.2.7. Các thành phần của Firewall và nguyên lý hoạt động 10 Firewall chuẩn bao gồm một hay nhiều các thành phần sau đây:  Bộ lọc packet (packet-filtering router).  Cổng ứng dụng (application-level gateway hay proxy server).  Cổng mạch (circuite level gateway). 2.2.7.1. Bộ lọc gói (Packet Filtering) a. Nguyên lý hoạt động. Khi nói đến việc lưu thông dữ liệu giữa các mạng với nhau thông qua Firewall thì điều đó có nghĩa rằng Firewall hoạt động chặt chẽ với giao thức TCP/IP. Vì giao thức này làm việc theo thuật toán chia nhỏ các dữ liệu nhận được từ các ứng dụng trên mạng, hay nói chính xác hơn là các dịch vụ chạy trên các giao thức (Telnet, SMTP, DNS, SMNP, NFS ) thành các gói dữ liệu (data packets) rồi gán cho các packet này những địa chỉ để có thể nhận dạng, tái lập lại ở đích cần gửi đến, do đó các loại Firewall cũng liên quan rất nhiều đến các packet và những con số địa chỉ của chúng. Bộ lọc packet cho phép hay từ chối mỗi packet mà nó nhận được. Nó kiểm tra toàn bộ đoạn dữ liệu để quyết định xem đoạn dữ liệu đó có thoả mãn một trong số các luật lệ của lọc packet hay không. Các luật lệ lọc packet này là dựa trên các thông tin ở đầu mỗi packet (packet header), dùng để cho phép truyền các packet đó ở trên mạng. Đó là:  Địa chỉ IP nơi xuất phát ( IP Source address).  Địa chỉ IP nơi nhận (IP Destination address).  Những thủ tục truyền tin (TCP, UDP, ICMP, IP tunnel).  Cổng TCP/UDP nơi xuất phát (TCP/UDP source port).  Cổng TCP/UDP nơi nhận (TCP/UDP destination port).  Dạng thông báo ICMP ( ICMP message type).  Giao diện packet đến ( incomming interface of packet).  Giao diện packet đi ( outcomming interface of packet). Nếu luật lệ lọc packet được thoả mãn thì packet được chuyển qua firewall. Nếu không packet sẽ bị bỏ đi. Nhờ vậy mà Firewall có thể ngăn cản được các kết nối vào các máy chủ hoặc mạng nào đó được xác định, hoặc khoá việc truy cập vào hệ thống [...]... câu SQL vào dữ liệu nhập: đây là mục tiêu tấn công thường xuyên nhất  Chèn vào cookie: chỉnh sửa các trường dữ liệu trên cookie để chúng mang các chuỗi dữ liệu tấn công  Thay đổi các biến Header (chứa luồng trao đổi thông tin giữa client và server) để tấn công  Tấn công hai tầng: chèn vào một đoạn mã giống như Trojan Hình 2.9 Mô hình tấn công SQL Injection 21 2.4 Các phƣơng thức tấn công bằng SQL Injection. .. thống để tấn công, những mục đích của tấn công DoS  Lịch sử các cuộc tấn công và phát triển của DoS - Các tấn công DoS bắt đầu vào khoảng đầu những năm 90 Đầu tiên, chúng hoàn toàn “nguyên thủy”, bao gồm chỉ một kẻ tấn công khai thác băng thông tối đa từ nạn nhân, ngăn những người khác được phục vụ Điều này được thực hiện chủ yếu bằng cách dùng các phương pháp đơn giản như ping floods, SYN floods và UDP... từ máy chủ vào xương sống của Internet và tiêu hao tài nguyên máy chủ Trong suốt quá trình máy chủ bị tấn công bằng DRDoS, không một máy khách nào có thể kết nối được vào máy chủ đó Tất cả các dịch vụ chạy trên nền TCP/IP như DNS, HTTP, FTP, POP3, đều bị vô hiệu hóa.Về cơ bản, DRDoS là sự phối hợp giữa hai kiểu DoS và DDos Nó có kiểu tấn công SYN với một máy tính đơn, vừa có sự kết hợp giữa nhiều máy. .. floods Sau đó, các cuộc tấn công trở nên phức tạp hơn, bằng cách giả làm nạn nhân, gửi vài thông điệp và để các máy khác làm ngập máy nạn nhân với các thông điệp trả lời (Smurf attack, IP spoofing…) - Các tấn công này phải được đồng bộ hoá một cách thủ công bởi nhiều kẻ tấn công để tạo ra một sự phá huỷ có hiệu quả Sự dịch chuyển đến việc tự động hoá sự đồng bộ, kết hợp này và tạo ra một tấn công song song... những tấn công như vậy, và đề tài này được công chúng biết đến chỉ sau khi một cuộc tấn công lớn vào các site công cộng tháng 2/2000 Trong thời gian 3 ngày, các site Yahoo.com, amazon.com, buy.com, cnn.com và eBay.com đã đặt dưới sự tấn công (ví dụ như Yahoo bị ping với tốc độ 1 GB/s) Từ đó các cuộc tấn công Dos thường xuyên xảy ra ví dụ : Vào ngày 15 tháng 8 năm 2003, Microsoft đã chịu đợt tấn công DoS. .. Flood Attack, chủ yếu thông qua các website Về nguyên tắc, các website đặt trên máy chủ khi chạy sẽ tiêu lượng tài nguyên máy chủ nhất định, nhất là lượng bộ nhớ (RAM) và bộ vi xử lý (CPU) Dựa vào việc tiêu hao đó, những kẻ tấn công đơn giản là dùng các phần mềm như smurf chẳng hạn để liên tục yêu cầu máy chủ phục vụ trang web đó để chiếm dụng tài nguyên Cách tấn công này tuy không làm máy chủ ngừng cung... hợp lệ và sẽ trả về tất cả các bản ghi của T_USERS và đoạn mã tiếp theo xử lí người dùng đăng nhập bất hợp pháp này như là người dùng đăng nhập hợp lệ 2.4.2 Dạng tấn công sử dụng câu lệnh SELECT Dạng tấn công này phức tạp hơn Để thực hiện được kiểu tấn công này, kẻ tấn công phải có khả năng hiểu và lợi dụng các sơ hở trong các thông báo lỗi từ hệ thống để dò tìm các điểm yếu khởi đầu cho việc tấn công. .. các Client khác Thường thì kẻ tấn công là từ một máy Hình 2.10: Một mô hình Dos - Qua các máy trung gian (DOS: tấn công từ chối dịch vụ phân tán): 29 - DDos (Distributed Denial of Service) là một dạng DoS nhưng kẻ tấn công sử dụng nhiều máy để thực hiện Hình2.11: Mô hình DDOS Sự khác nhau là : DoS là tấn công từ một nguồn còn DDos là từ nhiều nguồn khác nhau nên phương pháp chống lại cũng khác đôi chút... DoS thì chỉ cần tìm và ngắt các hoạt động hoặc kết nối liên quan đến nguồn phát (chỉ 1),còn DDos thì rất nhiều nguồn tấn công nên không làm như vậy được Một điểm quan trọng là nếu bị tấn công Dos thì không thể chống đỡ 2.6.4 Các cơ chế tấn công từ chối dịch vụ: 2.6.4.1 Tấn công từ chối dịch vụ (DoS) : Là phương thức xuất hiện đầu tiên, giản đơn nhất trong kiểu tấn công từ chối dịch vụ .Các kiểu tấn công. .. công song song lớn trở nên phổ biến từ 1997, với sự ra đời của công cụ tấn công Dos đầu tiên được công bố rộng rãi, Trinoo Nó dựa trên tấn công UDP flood và các giao tiếp master-slave (khiến các máy trung gian tham gia vào 27 trong cuộc tấn công bằng cách đặt lên chúng các chương trình được điều khiển từ xa) Trong những năm tiếp theo, vài công cụ nữa được phổ biến – TFN (tribe flood network), TFN2K, . lừa đảo tấn công trên mạng. Chƣơng 2: Cơ sở lý thuyết: nêu chi tiết về các khái niệm firewall, các cách tấn công và phòng chống với hình thức tấn công bằng câu lệnh SQL Injection và DOS Chƣơng. điều này, nhiều công ty bảo mật đã phát triển và tiếp tục cải thiện các sản phẩm firewall. Với mục tiêu chính là tìm hiểu công nghệ phòng chống tấn công Sql injection và Dos, giải thuật Boyer-Moore,. vi nghiên cứu của đề tài thuộc lĩnh vực bảo mật mạng máy tính, chỉ áp dụng để phát hiện sql injection và Dos. Các khả năng có thể xử lý được: - Phát hiện và giảm thiểu những cuộc tấn công sql

Ngày đăng: 06/10/2014, 18:10

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan