CEHv9VietModule 12 Hacking web server 7

12 691 0
CEHv9VietModule 12 Hacking web server  7

Đ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

Module 13 Tấn Công Trang Web Những Nội Dung Chính Trong Chương Này GUI Web Hacking Tấn Công Dựa Trên URL Những Điểm Yếu Thông Dụng Của Ứng Dụng Web Các Công Cụ Tấn Công Ứng Dụng Web Google Hacking Phương Pháp Tăng Cường An Ninh Cho Trang Web Các Kỹ Thuật Bẻ Khóa Mật Khẩu Của Trang Web Web application hay ứng dụng web chương trình chạy web server http://vncert.gov.vn/ phân loại theo chức ứng dụng Forum trang web diễn đàn, chia thông tin, CMS / Blog web site cấp nội dung, thông tin hay trang mạng xã hội, ứng dụng quản lý công việc, quản lý khách hàng hay kinh doanh trực tuyến Hacker đặc biệt quan tâm đến trang web tổ chức lớn hay site quan nhà nước tên miền gov.vn Việt Nam Ngoài ra, hacker ngày bên cạnh ý thích trình diễn, khoe khoang hành động mục tiêu kinh tế nên họ hay đưa trang thương mại điện tử vào danh sách ưu tiên họ, có thông tin quan trọng thẻ tìn dụng khách hàng, tài khoản ngân hàng trực tuyến … Sau công, hacker hay khoe chiến tích trang zone-h địa http://www.zone-h.org/ , xem bảng phong thần trang web hình minh họa sau danh sách trang web có tên miền bị công có khả chưa vá hay nhận biết Hình 13.1 – Các trang web Việt Nam bị công công bố zone-h.org Đa số ứng dụng web ngày hoạt động theo mô hình client / server với trình duyệt web Firefox, IE, Chrome web client máy chủ web phía server Apache, IIS, TomCat Những công nghệ phổ biến để xây dựng web site ASP, PHP, JavaScript …Mỗi kỹ thuật có điểm mạnh yếu riêng công hacker điều phải nghiên cứu cẩn thận để xác định xác hệ điều hành, máy chủ web, công nghệ triển khai web site để đưa phương án công hiệu Các hình thức công ứng dụng web thông dụng mà cần biết : • Thao tác trực tiếp ứng dụng thông qua giao diện web trực quan (GUI) gọi GUI Web Hacking • Tiến hành khai thác với Uniform Resource Identify hay gọi URL (URL Hacking) • Khai thác thành phần HTTP mà URL GUI Web Hacking Là việc thao tác trực tiếp giao diện web application hay sử dụng công cụ audit website Havji, WebAcunetix … mà học sau trình bày Các bạn xem hình ảnh minh họa khái thác để tìm kiếm lỗi SQL Injection trang web mẫu FoundStone hình sau … Hình 13.2 – Gui Web Hacking Trên hình minh họa attacker nhập trực tiếp giá trị ‘OR 1=1— nhằm vượt qua chế kiểm soát ứng dụng việc kiểm tra tính hợp lệ giá trị INPUT không thực đủ Đây lỗi thông dụng mà website thường mắc phải attacker quan tâm Tấn Công Dựa Trên URL Các HTTP method hành động tiến hành ứng dụng web web client are the type of action performed on the target resource Trong HTTP RFC có định nghĩa hành động ứng dụng WEBDAV nên máy chủ IIS Windows có bổ sung số phương pháp khác nhìn chung ứng dụng web sử dụng hàm sau : GET POST GET dùng để yêu cầu thông tin, POST để gởi thông tin POST GET đề gởi thông tin đến server với điểm khác biệt quan trọng chúng GET để data URL POST đặt liệu (data) phần body (thân) request không hiển thị URL.: Vì POST dùng để submit liệu đến web application cung cấp thông tin tên, địa đăng kí mua hàng trực tuyến sử dụng hàm POST Tuy vậy, việc không hiểm thị thông tin POST không bảo vệ liệu tốt GET, điểm thường gây nhầm lẫn người dùng, với hacker việc tìm kiếm thông tin che dấu POST vấn đế qua khó khăn Hình 13.3 – Minh họa công dựa URL HTTP header thường dùng để lưu trữ thông tin mở rộng giáo thức vận chuyển hay yếu tố bảo mật liên quan gồm có : • Authorization xác định có hay chế bảo mật kèm thoe yêu cầu Basic authentication, Certificate … • Cache-control xác định có lưu cache yêu cầu máy chủ trung gian hay không • Referer Liệt kê source URI • Cookies dùng đê lưu trữ thẻ (token) trình xác thực dựa phiên làm việc client Sau ví dụ hàm sử dụng công cụ netcat kết nối đến máy chủ www.test.com server TCP port 80 (port chuẩn cho giao thức HTTP; HTTPS TCP 443), yêu cầu kết nối lấy tập tin /test.html Đường dẫn đầy đủ yêu cầu http://www.test.foo/test.html www.test.foo [10.124.72.30] 80 (http) open GET /test.html HTTP/1.0 HTTP/1.1 200 OK Date: Mon, 04 Feb 2002 01:33:20 GMT Server: Apache/1.3.22 (Unix) Connection: close Content-Type: text/html TEST.FOOetc Trong ví dụ bạn thấy hàm GET yêu cầu tư client sử dụng netcat đáp ứng trả phần header máy chủ Server: Apache/1.3.22 (Unix) , phần liệu (response body data) nằm khung (BODY) TEST.FOO Tuy nhiên hacker sử dụng phương pháp tân công trình bày mục tiêu họ thông tin có trang web này, công văn hay tài liệu quan trọng, thông tin khách hàng trang web danh sách email, số thẻ tín dụng Và để đạt mục tiêu hacker cần tiến hành quy trình công theo trình tự sau : - Scanning : Quét lỗi trang web, tìm kiếm thông tin hữu ích máy chủ Information Gathering : Tập trung thông tin chính, Test : Thử nghiệm số phương án Planning Attack : Hoạch định phương án công dùng proxy nào, sư dụng công cụ để công Luanching Attack : Khởi động công Hình 13.4 - Audit trang web với W3AF Lưu ý video minh họa dùng cho mục đích đào tạo, nghiên cứu Không ứng dụng thực tế Xem demo : http://www.youtube.com/watch?v=ugIxUtbFHo&feature=youtu.be Những Điểm Yếu Thông Dụng Của Ứng Dụng Web Có nhiều mối nguy hiểm mà trang web mắc phải, mối đe dọa hàng đầu mà thường nghe đến SQL injection, XSS, Authentication Hijacking Trong vai trò CEH cần nắm ý nghĩa lỗi số công cụ khai thác thịnh hành : - Cross-site scripting : Lỗi cho phép hacker thực thi đoạn mã nguy hiểm thông qua khung tiếp nhận liệu trang web ô tìm kiếm - SQL injection : Một lỗi có tỉ lệ bị hacker tận dụng cao, cho phép hacker chạy câu lệnh SQL từ trình duyệt xem nội dung bảng, cột chứa thông tin quan trọng Các bạn tham khảo video minh họa kèm theo phần - Buffer Overflow : Một số lượng lớn liệu hởi đến ứng dụng web thông qua biểu mẫu gây nên tràn đệm - Cookie poisoning Authentication hijacking : Hacker đánh cắp cookie phiên làm việc web client web server, sau truy cập vào khu vực riêng tư người sử http://www.youtube.com/watch?v=zLdB3UgDi_I - dụng, demo Directory travelsal / Unicode : Hacker truy vấn hệ thống tập tin thư mục hệ thống thông qua trình duyệt web hay windows explorer Sau danh sách lỗi bảo mật web application mà hacker thường tận dụng để công mà tài liệu CEH công bố, dẫn đầu lỗi liên quan đến XSS (Cross-Site Scripting), sau SQL Injection, Parameter Tampering, Cookie Poisoning … Hình 13.4 – Các lỗi ứng dụng web hay bị công Ngoài danh sách trên, bạn tham khảo thêm nguồn thông tin 10 lỗi bảo mật thông dụng OWASP thống kê https://www.owasp.org/index.php/Vietnam , danh sách tin cậy nhận thấy có đôi chút khác biệt tỉ lệ lỗi hay bị ảnh hưởng xếp đầu bảng SQL Injection (được gọi lỗi nhúng mã) nhìn chung lỗi liên quan đến SQl injection, XSS, hư hỏng chế chứng thực quản lý phiên làm việc mối quan tâm mà bạn nên đặt lên hàng đầu Hình 13.5 – Danh sách 10 lỗi ứng dụng web hàng đầu Các Công Cụ Tấn Công Ứng Dụng Web Acunetix Web Security Scanner Ứng dụng hàng đầu phải kể đến Web Acunetix Scanner, chương trình thương mại dùng cho việc tìm kiếm lỗi bảo mật web site XSS, SQL injection, Directory Travesal … Havji Là chương trình tự động khai thác lỗi SQl injection mà có minh họa qua video hướng dẫn, công cụ miễn phí đa số hacker sử dụng để công xem thông tin sở liệu Burpsuite Gồm nhiều công cụ mạnh mẽ từ quét lỗi trang web chức proxy, chặn liệu trình truyền sau thay đổi gởi máy chủ BlackWidow Có thể scan tạo lập sơ đồ trang web Teleport Pro Có khả toàn nội dung trang web để xem offline Google Hacking Google hacking kỹ tìm kiếm nâng cao với công cụ tìm kiếm Google nhằm xác định thông tin nhạy cảm cửa mục tiêu Nếu không cấu hình chặt chẽ thông tin mật đăng nhập, tài liệu riêng tư bị hacker đánh cắp với ứng dụng tìm kiếm Google Có nhiều tài liệu chủ đề đề cập trang web http://johny.ihackstuff.com hay chuyên trang http://www.exploit-db.com/google-dorks/ cung cấp cụm từ tìm kiếm nhằm xác định điểm nhạy cảm trang web Hình 13.6 - Trang web cung cấp nhựng cụm từ tìm kiếm liên dùng cho việc khai thác Những Phương Pháp Tăng Cường An Ninh Cho Web Trước đây, hãng Microsoft tổ chức thi cho phép hacker công vào hệ thống ứng dụng máy chủ web xây dựng tảng hãng sở liệu SQL Server, hệ điều hành Windows, tảng lập trình ASP Cuộc có tên Open hack sau thời gian ngắn phát động thi ban tổ chức ghi nhận có đến 40.000 đợt công, nhiên hacker không cách xâm nhập vào hệ thống máy chủ hay gây tổn hại đến trang web mục tiêu mà ban tổ chức dựng lên Vậy họ sử dụng quy trình kiện toàn bảo mật cho ứng dụng web mà đem đến vững ? Tất điều kỹ sư Microsoft tiết lộ tài liệu hướng dẫn tăng cường an ninh cho web application có tên gọi “Improving Web Application Security: Threats and Countermeasures” địa : http://msdn.microsoft.com/en-us/library/ff649874.aspx , tài liệu mà dùng để hướng dẫn chương trình bảo mật ứng dụng web cho Tập đoàn EVN Đồ Sơn, Hải Phòng cuối năm 2011 Sau số hướng dẫn để tăng cường an ninh cho ứng dụng web mà cần quan tâm : - - Cross-site scripting : Để phòng trách dạng công ta cần kiểm tra tính hợp lệ liệu đầu vào, cookie, yêu câu truy vấn hay thông tin ẩn kỹ Dùng công cụ quét lỗi chuyên dụng cho trang web Web Acunetix Scanner để phát xem có lỗi XSS website SQL injection / Command injection : Đóng vai trò hacker để tiền hành quét lỗi SQL injection tren trang web với công cụ W3AF (Web Application Attack and Audit Framework, download http://w3af.sourceforge.net/) Và kiểm tra biến người dùng chặt chẽ, áp dụng chế lọc kí tự đặc biệt qua tập tin htaccess hay module chuyên dùng cho việc phòng chống SQL injection - - Cookie poisoning : Không lưu trữ mật cookie, thiết lập thời gian tồn chơ chế xác thực thích hợp cho cookie Buffer overflow : Kiểm tra kích thước biên người dùng cung cấp để chương trình không bị vượt khả kiểm soát, có xử lý tình ngoại lệ đầy đủ ngăn không cho hacker lợi dụng chèn thị độc Authentication hijacking : Sử dụng SSL để mã hóa liệu truyền Directory travesal / Unicode : Cần cài đặt vá lỗi cập nhật đầy đủ, thiết lập quyền truy cập thư mục tập tin chặt chẽ theo nguyên tắt least priveledge (chỉ cấp quyền vừa đủ cho người dùng dựa nhu cầu) Các Kỹ Thuật Bẻ Khóa Mật Khẩu Của Trang Web Là CEH cần nắm rõ số kỹ thuật ma hacker thường dùng để bẻ khóa mật ứng dụng web Bao gồm phương pháp xác thực mà ứng dụng web sử dụng, password cracker xác định phân loại kỹ thuật passwordcracking để có biện pháp phòng chống thích hợp Chúng ta đề cập đến khái niệm phần tiếp sau Các Dạng Xác Thực Của Web Server Và Web Application Web server web application hỗ trợ nhiều phương pháp xác thực khác Phổ biến xác thực dựa HTTP với hai dạng HTTP authentication : basic digest Trong mô hình xác thực (basic), trình xác thực HTTP gởi thông tin tài khoản mật dạng cleartext (không mã hóa) với digest authention mô hình xác thực HTTP tiến hành băm thông tin tài khoản, client server cần tiến hành bước thử thách gọi chalenge-response nhằm nâng cao tính an toàn cho trình giao dịch Rõ ràng, thông tin gởi dạng cleartext tính an toàn thấp hacker dễ dàng đánh cắp mật tên đăng nhập công cụ sniffer Ngoài hai phương pháp mô hình xác thực máy chủ ứng dụng web hỗ trợ NTML (mô hình xác thực tảng hệ điều hành Windows), sử dụng chứng điện tử dùng giao thức https:// hay sử dụng thẻ cao cấp chế xác thực sinh trắc học dựa đặc điểm nhận dạng người dùng vân tay, giọng nói, võng mạc … Trong chế xác thực NTML sử dụng Internet Explorer IIS webserver , chế hoạt động tảng Windows thích hợp cho trình kiểm tra hệ thống nội hay mạng intranet dùng hệ điều hành Windows Đối với hệ thống máy chủ Windows Server 2000/2003/2008 tận dụng 10 Keberos để nâng cao tính an toàn cho trình xác thực ứng dụng hay máy chủ web Trong đó, xác thực dựa chứng điện tử hay certificate dùng x.509 certificate để triển khai cặp khóa public private key Ở không sâu vào công nghệ bạn cần lưu ý công nghệ thịnh hành việc xác thực người dùng với máy chủ hay ứng dụng web Còn xác thực token SecureID mà thường thấy triển khai tạo ngân hàng trình chuyển khoản trực tuyến , cần đăng nhập hay thực giao dịch nhận mã số gởi đến hay phát sinh ngẫu nhiên thiết bị phần cứng, nhập xác thông tin đăng nhập hay xử lý giao dịch Ví dụ thiết bị SecureID ngân hàng TechComBank Password Cracker Là Gì ? Password cracker chương trình thiết kế để bẻ khóa mật hay vô hiệu hóa chế kiểm tra ứng dụng Các công cụ thường sử dụng kỹ thuật dò mật dựa từ điển hay dùng kỹ thuật quét cạn để phá mật khẫu Trong quà trinh bẻ khóa mật thông qua từ điển cracker (ta dùng thuật ngữ thay cho hacker) tạo danh sách mật tiềm liệu từ điển, thông qua chương trình tạo từ điển mật hay tải từ điển tạo sẳn từ internet Sau mật mã hóa hay băn với thuật toán hash thường dùng trình băm mật MD5 Và để bẻ khóa mật ứng dụng mật xử lý từ điển so sánh với mật thực xảy trùng khớp (máy chủ hay ứng dụng xác thực thành công) trình bẻ khóa hoàn tất Các mật bị bẻ khóa thường lấy tập tin SAM (Security Account Manager) hay tập tin /etc/passwd máy chủ web dùng hệ điều hành linux (khi hacker công vào trang web họ upload trojan c99, rv57 để tải tập tin này) Nhưng phương pháp dò từ điển khó thành công với mật mạnh, tập hợp đủ liệu cần thiết thời gian tiến hành không thực tế Trong trường hợp phương pháp dò mật theo kỹ thuật quét cạn hay brute-force áp dụng Brute-force thử tất tình kết hợp kí tự để tạo mật Lấy ví dụ đơn giản mật tạo từ kí tự 1,2,3 thi có tối đa kết công cụ cần so sánh tối đa lần tìm mật gốc Tuy nhiên, thực tế mật phức tạp nhiều trình bẻ khóa diễn lâu hay nhanh phụ thuộc vào độ mạnh thuật toán cấu hình phần cứng máy chủ dùng để bẻ khóa Chương trình thông dụng lĩnh vực thường đề cập CEH L0phtCrack, Join the ripper, Ophcrack …Những ứng dụng mạnh mẽ thường kết hợp hai phương pháp dò mật kỹ thuật gọi Hybrid Tổng Kết 11 Trong chương thảo luận mối đe dọa hàng đầu đống với an toàn ứng dụng web qua thống kê tài liệu CEH hay danh sách 10 mối nguy hiểm hàng đầu OWASP Với mối đe dọa hay dạng công nguy hiểm cần có cách thức khắc phục riêng, trước tiên cần phải tiến hành hardening cho hệ thống máy chủ để kiện toàn bảo mật ứng dụng web Về kỹ thuật bẽ khóa mật bạn cần phân biệt hai tình bẻ khóa dựa từ điển khác với bẻ khóa quét cạn Và để phòng chống bị bẻ khóa mật quản trị viên cần áp dụng sách mật mạnh với độ dài mật kí tự, có kết hợp chữ hoa, chữ thường, số kèm kí tự đặc biệt Ngoài ra, phải bật chế độ audit, ghi nhật kí thích hợp để dò tìm tình bị công Đặc biệt, lưu cẩn thận để phòng có rũi ro xảy phục hồi liệu, đưa hệ thống vào hoạt động nhanh chóng 12

Ngày đăng: 07/07/2016, 11:56

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

Tài liệu liên quan