Quản trị web - Web application

ppt 72 trang vanle 2480
Bạn đang xem 20 trang mẫu của tài liệu "Quản trị web - Web application", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptquan_tri_web_web_application.ppt

Nội dung text: Quản trị web - Web application

  1. University of Natural Sciences- HCMC Faculty of Electronics and Telecommunications WEB APPLICATION Sinh viên thực hiện: Trương Thanh Hải MSSV:0620019 Huỳnh Tấn Hùng MSSV :0620021 Trần Bình Trọng MSSV: 0620089 Hồng Anh Tuấn MSSV: 0620092
  2. Nơi Dung Trình Bày: 1/ Định Nghĩa Web. ➢ 2/ Lịch Sử Phát Triển. ➢ 3/ Tìm hiểu về ứng dụng Web. ➢ 4/ Ngơn Ngữ Lập Trình & Cơng Cụ Truy Cập. ➢ 5/ Thơng Tin & Dữ Liệu & Bảo Mật. ➢ 6/ Các Ứng Dụng Của Web. ➢ 7/ Định Hướng Phát Triển.
  3. 1/ Vấn Đề Đặt Ra: ◼ Bạn muốn biết thơng tin về một cơng ty ? ◼ Bạn muốn mua bán mà khơng cần ra ngồi ? ◼ Bạn muốn tìm tài liệu cho học tập và nơi giải đáp mọi thắc mắc trong cơng việc học tập? ◼ Bạn muốn xem những bộ phim Hot nhất ? ◼ Bạn muốn nghe nhac hay tạo một trang lưu trữ những thơng tin cá nhân của mình??? ◼ Giải quyết những vấn đề này ra sao ????????
  4. Hướng Giải Quyết ???
  5. Ngày 6-8-1991, Tim Berners Lee cơng bố chương trình web
  6. Web là gì & Ứng dụng ra sao ? ◼ Định nghĩa web ◼ Website là một văn phịng ảo của doanh nghiệp trên mạng Internet. Website bao gồm tồn bộ thơng tin, dữ liệu, hình ảnh về các sản phẩm, dịch vụ và hoạt động sản xuất kinh doanh mà doanh nghiệp muốn truyền đạt tới người truy cập Internet. ◼ Web là nơi chúng ta cĩ thể trao đổi mọi thơng tin ,tài liệu . là nơi chúng ta cĩ thể mua bán trực tuyến và giải trí . ◼ Web là nơi chúng ta cĩ thể chia sẻ cảm xúc và là nơi lưu trữ những thơng tin cá nhân.
  7. 2/ Lịch sử phát triển của web ◼ Ngày 6-8-1991, Tim Berners Lee cơng bố chương trình web. Dự án “World Wide Web” ◼ Ngày 12-12-1991: Máy chủ đầu tiên ngồi châu Âu online ◼ Tháng 11-1992: Đã cĩ 26 máy chủ web online ◼ Ngày 22-4-1993: Trình duyệt Mosaic cho Windows ra đời ◼ Tháng 6-1993: Ngơn ngữ HTML (Hypertext Mark Language) dùng trong lập trình web được cơng bố.
  8. ◼ Tháng 2-1994: Tiền thân của Yahoo được đưa lên internet. ◼ Ngày 9-8-1995: “Bùng nổ tên miền .com”. Hàng loạt cơng ty trực tuyến chính thức mở cửa website của mình. ◼ Ngày 24-8-1995: IE được phát hành và là một phần trong Windows 95. ◼ Tháng 9-1998: Google mở cửa văn phịng đầu tiên của mình tại một gara ở California. ◼ Tháng 8-2000: Đã cĩ gần 20 triệu Website ◼ Năm 2009: Đã cĩ 102.615.362 website.
  9. Ứng dụng WEB là gì ? ◼ Ứng dụng web (hay web application) là một trình ứng dụng mà cĩ thể tiếp cận thơng qua mạng như Internet hay intranet. ◼ Một vài ứng dụng Web thơng dụng như: Webmail, bán hàng trực tuyến, wiki, forum, blog,
  10. 3/ Tìm hiểu về ứng dụng Web ◼ Domain Hosting:Tên miền (Domain name) là định danh của website trên Internet Quy trình đăng kí một tên miền
  11. Cấu tạo của một tên miền ◼ Tên miền được chia làm 2 dạng chính: ◼ Quốc tế ◼ .com, .net, .org, ◼ Quốc gia Cấp 2: *.vn, *.us, *.uk, *.sg, Cấp 3: *.com.vn, *.co.uk, *.com.sg, 11
  12. Quy định khi đặt tên miền ◼ Tên miền (Domain name) khơng được vượt quá 63 ký tự, bao gồm cả phần .com, .net, .org. ◼ Tên miền chỉ bao gồm các ký tự trong bảng chữ cái (a-z), các số (0-9) và dấu trừ (-). ◼ Khơng thể bắt đầu bằng hoặc kết thúc tên miền bằng dấu trừ (-). ◼ Tên miền khơng cần bắt đầu bằng http:// hoặc www hoặc 12
  13. Web Hosting ◼ Web Hosting là nơi lưu trữ tất cả các trang Web, các thơng tin, tư liệu, hình ảnh của Website trên một máy chủ Internet ◼ Các yêu cầu cần thiết của một Web Hosting ◼ Tính năng ◼ Tốc độ ◼ Dung lượng ◼ Băng thơng ◼ Bảo mật.
  14. Web hosting ◼ Hỗ trợ truy xuất máy chủ bằng giao thức FTP để truyền tải tập tin ◼ Hỗ trợ các các ngơn ngữ lập trình cũng như cơ sở dữ liệu tưng ứng để thực thi ứng dụng Web trên Internet ◼ Cĩ 2 nhánh là Windows Hosting và Linux Hosting ◼ Ngồi ra các cơng ty và Bảng điều khiển Control doanh nghiệp lớn cũng cĩ thể Panel của một gĩi Hosting tự thiết lập Server riêng
  15. Phần mềm máy chủ Web ◼ Web Server (máy phục vụ Web): máy tính mà trên đĩ cài đặt phần mềm phục vụ Web ◼ Bất kỳ một máy tính nào cũng cĩ thể trở thành một Web Server bởi việc cài đặt lên nĩ một chương trình phần mềm máy chủ Web (Web Server Software) và sau đĩ kết nối vào Internet hoặc mạng LAN
  16. Giao diện
  17. Mơ hình hoạt động của Web Server
  18. 4/ Ngôn Ngữ Lập Trình ◼ Dùng để viết nên những Website động, giúp người sử dụng thơng qua giao diện tương tác từ trình duyệt cĩ thể làm việc với cơ sở dữ liệu trên Server ◼ Cĩ nhiều loại ngơn ngữ khác nhau, hoạt động trên những mơi trường khác nhau tương ứng 18
  19. Ngơn ngữ lập trình web ◼ Để thiết kế giao diện cho Website, ta dùng ngơn ngữ đánh dấu HTML ◼ Cĩ thể chèn vào những đoạn code ngơn ngữ kịch bản như Java Script, VB Script, hoặc Shock Wave Flash 19
  20. Một số ngôn ngữ lập trình tiêu biểu ◼ PHP ◼ HTML ◼ ASP ◼ XML ◼ JSP ◼ JAVASCRIPT ◼ VB SCRIPT 20
  21. PHP (Hypertext Preprocessor) ◼ Được chạy trên máy chủ Linux hoặc Windows. ◼ Đặc điểm ◼ Mã nguồn mở, miễn phí. ◼ Cú pháp giống C và Java. ◼ Dễ viết, dễ dùng, dễ phát triển, triển khai nhanh. ◼ Là ngơn ngữ lập trình web phổ biến nhất hiện nay ◼ Thích hợp cho các trang web vừa và nhỏ.
  22. HTML(HyperText Markup Language) ◼ Ngơn ngữ Đánh dấu Siêu văn bản ◼ Thiết kế giao diện cho Website tĩnh
  23. ASP(active server pages) ◼ ASP và sau này là ASP.NET ◼ Chạy trên máy chủ Windows hoặc Linux . Được Microsoft xây dựng trên nền tảng .NET, kết hợp với cơ sở dữ liệu MS SQL Server. ◼ Chỉ hoạt động trên các họ Web server của Microsoft. ◼ Thích hợp cho các trang Web lớn.
  24. XML(Xtensible Markup Language) ◼ Ngơn ngữ xây dựng cấu trúc tài liệu văn bản do W3C đề xuất ◼ Dựa theo chuẩn SGML (Standard Generalized Markup Language) ◼ Tạo nội dung động , độc lập với các máy server
  25. JSP (JavaServer Pages) ◼ Là sự mở rộng của cơng nghệ JavaServlet (chuẩn J2EE của SUN) ◼ JSP cĩ ưu điểm so với ASP: sau lần đầu thực thi, mã được lưu lại trong bộ nhớ ◼ Đa nền, hướng đối tượng, bảo mật an tồn.
  26. JAVASCRIPT ◼ Ngơn ngữ lập trình kịch bản dựa trên đối tượng,phát triển từ ngơn ngữ C ◼ Dùng để thực hiện một số tác vụ khơng thể thực hiện được với HTML như kiểm tra thơng tin nhập vào,tự động thay đổi hình ảnh.
  27. AJAX(ASYNCHONOUS JAVASCRIPT AND XML) ◼ Kết hợp Javascript va XML để tạo sự tương tác giữa các ứng dụng web. ◼ Tăng tốc độ ứng dụng web bằng cách cắt nhỏ dữ liệu
  28. Cách thức hoạt động các trang WEB ◼ Trang Web viết bởi HTML ◼ Trang Web viết bởi PHP
  29. Các Cơng Cụ Truy Cập ◼ IE. ◼ Firefox. ◼ Opera. ◼ Google Chrome. ◼
  30. 5/ Thơng Tin & Dữ Liệu & Bảo Mật ◼ Trong thời đại kinh tế tri thức, thơng tin là tài sản đĩng vai trị quyết định sự thành bại. ◼ Do đĩ các thơng tin quan trọng cần được bảo vệ chặt chẽ, tránh bị ◼ Bên ngồi đột nhập vào trong lấy thơng tin ◼ Bên trong đưa thơng tin ra ngồi.
  31. ◼ Theo đĩ, bảo mật là quá trình bảo đảm an tồn thơng tin, theo chuẩn C.I.A ◼ Tính bảo mật (Confidentiality) ◼ Tính tồn vẹn (Integrity) ◼ Tính sẵn sàng (Availability) Theo TCVN 7562:2005, tương đương với ISO/IEC 17799:2000 31
  32. Những lỗ hổng thường gặp trong website ◼ Dữ liệu đầu vào khơng được kiểm tra tính hợp lệ. ◼ Lỗi kiểm sốt truy cập nguồn tài nguyên. ◼ Lỗi liên quan đến quá trình quản lý xác thực và phiên truy cập. ◼ Lỗi tràn bộ đệm. ◼ Lưu trữ thiếu an tồn. ◼ Từ chối dịch vụ. ◼ Quản lý cấu hình thiếu an tồn. ◼ Quy trình xử lý báo lỗi.
  33. PHƯƠNG THỨC TẤN CÔNG
  34. THU THẬP THÔNG TIN CHUNG. ◼ Tên miền, hệ điều hành, ngơn ngữ lập trình, hệ CSDL hoạt động trên Server, ◼ Chủ sở hữu, đội ngũ quản trị, điều hành của Website. ◼ Địa chỉ IP, máy chủ DNS của Website. ◼ Các cổng và dịch vụ tương ứng đang được mở trên Server.
  35. Khảo sát ứng dụng Web ◼ Website sử dụng ứng dụng Web nào? ◼ Mã nguồn mở hay đĩng? Phiên bản? ◼ Nếu là mã nguồn mở thì download source code về để phân tích và kiểm tra, tìm đọc các thơng tin về bug và exploit của phần mềm đĩ.
  36. Dò tìm lỗi tự động ◼ Dùng các cơng cụ quét và dị lỗi Website như : ◼ Scrawlr. ◼ MaxQ, Selenium. ◼ Acunetix Web Vulnerability Scanner. ◼ Joomla
  37. Giao diện phần mềm Acunetix Web Vulnerability Scanner
  38. Dò tìm lỗi bằng tay ◼ Vận dụng các kiến thức về lập trình, hệ điều hành, bảo mật và mạng máy tính, như một “người dùng tinh nghịch” hacker tiến hành các thao tác dị lỗi trực tiếp ngay trên Website, nhất là ở phần nhập dữ liệu đầu vào.
  39. Khai thác lỗi/tấn công. ◼ Đây là giai đoạn quan trọng nhất để chiếm được quyền điều khiển Website. ◼ Một vài cách thức tấn cơng phổ biến: ◼ SQL Injections. ◼ Session Hijacking. ◼ Local Attack. ◼ DNS Cache Poisoning. ◼ Dùng các loại trojan, virus để mở cửa hậu, đánh cắp mật khẩu admin. ◼ DoS, DDoS và DRDoS. ◼
  40. SQL Injections ◼ Lợi dụng lỗ hổng trong việc kiểm tra dữ liệu nhập vào của các ứng dụng web để thi hành các câu lệnh SQL bất hợp pháp.
  41. Một hậu quả của SQL Injections
  42. Local Attack ◼ Một Server cấu hình mạnh cĩ thể host được nhiều trang web hoạt động một lúc. ◼ Nếu hacker tấn cơng vào được 1 site thuộc Server đĩ sẽ cĩ thể chuyển hướng sang tấn cơng các site lân cận trong nội bộ.
  43. r57shell – Một cơng cụ hack local attack
  44. Session Hijacking ◼ Chiếm phiên truy cập hợp lệ của máy nạn nhân từ cookies của trình duyệt
  45. DoS, DDoS, DRDos ◼ Khơng làm ảnh hưởng đến tính tồn vẹn và bảo mật, nĩ chỉ làm cho Website khơng thể luơn sẵn sàng hoạt động.
  46. Một số hình thức tấn công mới ◼ DNS Cache Poisoning. ◼ XSS. ◼ WebServer hacking. ◼ Buffer Overflow.
  47. XSS ◼ Cross-Site Scripting (XSS) là một trong những kĩ thuật tấn cơng phổ biến nhất hiên nay. ◼ Bất kì một website nào cho phép người sử dụng đăng thơng tin mà khơng cĩ sự kiểm tra chặt chẽ các đoạn mã nguy hiểm thì đều cĩ thể tiềm ẩn các lỗi XSS. Mô hình tấn công XSS
  48. Buffer Overflow Khai thác tràn bộ đệm. Buffer Overflow Attacks by James C. Foster, Vitaly Osipov, and Nish Bhalla (Paperback - Mar 7, 2005) - Illustrated
  49. Chiếm quyền máy chủ ◼ Sau khi đã đoạt được quyền admin, đây là lúc mà hacker tiến hành cơng việc “hack”. ◼ Với hacker mũ đen đĩ là: phá hoại, đánh cắp, chỉnh sửa lại dữ liệu. ◼ Với hacker mũ trắng đĩ là: tĩm tắt lại quá trình xâm nhập, phân tích lỗi và gửi đến admin cĩ trách nhiệm quản lý hệ thống mà khơng cĩ bất kì địi hỏi, vụ lợi nào.
  50. Xóa dấu vết ◼ Bước cuối cùng của cuộc tấn cơng là Hacker sẽ xĩa tất cả các dấu vết cịn lưu lại trên Server và Client trước khi thốt ra (các file log, địa chỉ IP, phiên làm việc, cache, history ).
  51. Bảo mật ứng dụng Web ◼ Kiểm định và tối ưu hĩa mã nguồn ứng dụng Web, các query tới database. ◼ Quản lý, phân quyền người dùng truy cập Website, database chặt chẽ. ◼ Dùng chính sách mật khẩu an tồn. ◼ Thường xuyên sao lưu mã nguồn và cơ sở dữ liệu dự phịng cho Website. ◼ Mã hĩa, đổi tên source code, nhất là các tập tin cấu hình quan trọng (config.php).
  52. Ba lớp bảo vệ website a/ Vành đai bảo vệ chung cho tồn hệ thống mạng (lớp 1), gồm cả hệ thống web. b/ Tường lửa chuyên dụng cho các ứng dụng web. c/ Thiết bị an ninh tích hợp hoặc thiết bị chống xâm nhập mạng.
  53. Một số phương pháp bảo mật ◼ Dùng câu hỏi chứng thực để kiểm tra người dùng thật (CAPTCHA)
  54. Bảo mật Server ◼ Thường xuyên cập nhật, vá lỗi cho ◼ Hệ điều hành Server ◼ Phần mềm Web Server ◼ Phần mềm thơng dịch Web ◼ Phần mềm quản lý CSDL ◼ Phần mềm chống Virus ◼ Dựng Firewall ◼ Chỉ mở những port cần thiết sử dụng trên Server
  55. ◼ Cấu hình chmod đúng, nhất là các tập tin config, tránh bị local attack ◼ Dùng tập tin cấu hình .htaccess ◼ Cấu hình lưu file log truy xuất Website, Web server, Database. Cấu hình chmod
  56. Các cơng cụ kiễm tra bảo mật web ◼ Nikto . ◼ Paros Proxy. ◼ WebScarab. ◼ WebInspect. ◼ Whisker/libwhisker. ◼ Wikto. ◼ Acunetix Web Vulnerability Scanner. ◼ Watchfire AppScan. ◼ N-Stealth.
  57. Một số công cụ trực tuyến ◼ Google Safe Browsing Tool: nostic?site=(website bạn kiểm tra). ◼ Norton Safe Web ◼ McAfee Site Advisor
  58. Secure Sockets Layer (SSL) ◼ Là giao thức giúp mã hĩa và truyền tải tồn bộ thơng tin đi và đến trên một cổng định trước (socket 443) ◼ Phiên bản mới nhất hiện nay là SSL 3.0 Mơ hình hoạt động của SSL
  59. ◼ Giao thức SSL bao gồm 2 giao thức con ◼ Giao thức SSL record xác định các định dạng dùng để truyền dữ liệu. ◼ Giao thức SSL handshake (gọi là giao thức bắt tay) sẽ sử dụng giao thức SSL record để trao đổi một số thơng tin giữa server và client vào lấn đầu tiên thiết lập kết nối SSL.
  60. Giao thức SSL nhìn từ phía người dùng
  61. ◼ Thuận lợi: ◼ Ngày này do nhu cầu của người sử dụng internet để học tập, làm việc và giải trí ngày càng cao đã gĩp phần thúc đẩy quá trình phát triển và mở rộng các ứng dụng web. ◼ Khĩ khăn: ◼ Các ứng dụng web càng phát triển thì càng đòi hỏi một lượng băng thơng lớn để truyền tải. ◼ Bên cạnh đĩ lỗi của các ứng dụng web cũng ngày càng đa dạng và phức tạp, đã tạo điều kiện cho các hacker xâm nhập vào các website. =>Vì lý do trên cho nên việc bảo mật các website trở thành trọng điểm trong việc xây dựng và phát triển các ứng dụng web.
  62. 6. Các ứng dụng web ◼ Truy cập thơng tin . ◼ Giao lưu ,trao đổi thơng tin : Mail, Blog ,Forum,Facebook ◼ Học tập,các tiện ích văn phịng ◼ Relax : web nhạc,film, Game online ◼ Thương mại điện tử
  63. Ưu điểm & ích lợi ◼ Truy cập mọi lúc mọi nơi ( miễn là cĩ thể truy cập được Internet) ◼ Cung cấp nhiều thơng tin phục vụ nhu cầu học tập, giải trí ,kinh doanh
  64. 7.Hướng phát triển ◼ Các ứng dụng web sẽ dần thay thế các ứng dụng trên desktop. ◼ Thời đại của open source. ◼ Trí tuệ cộng đồng được đề cao. ◼ Đơn giản ,gọn nhẹ và tích hợp. ◼ Văn phịng online .
  65. Chrome OS Hệ điều hành cĩ các ứng dụng web sẽ thay thế các ứng dụng trên desktop.
  66. Hướng phát triển web ◼ Tạo ra các web động-tính năng và cách thức nĩ tương tác với người dùng: rất tiện lợi và nhanh chĩng đến nỗi bạn gần như tưởng mình đang sử dụng một phần mềm chứ khơng phải đang xem trang web.
  67. AJAX – Tương lai của ứng dụng Web ◼ AJAX (Asynchronous JavaScript And XML.) ◼ AJAX khơng phải là một ngơn ngữ lập trình mới mà là một cách thức mới sử dụng những chuẩn đã cĩ. ◼ AJAX là tập hợp của nhiều cơng nghệ với thế mạnh của riêng mình để tạo thành một sức mạnh mới. ◼ Tạo ra những ứng dụng web tốt, nhanh và thân thiện với người dùng hơn. ◼ Dựa trên những yêu cầu JavaScript và HTML
  68. AJAX ◼ Là một kỹ thuật để tạo ra những ứng dụng web. ◼ Là cơng nghệ phía browser ◼ Browser (XMLHttpRequest)→ server: sử dụng kỹ thuật chuyển dữ liệu bất đối xứng (asynchronous) ➔Trao đổi dữ liệu với máy chủ mà khơng cần load lại trang web. ➔ Ứng dụng Internet trở nên nhỏ, nhanh và thân thiện.
  69. AJAX và các chuẩn về web AJAX dựa trên các chuẩn về web sau đây: ◼ Javascript ◼ XML ◼ HTML ◼ CSS Độc lập với các browsers và các platforms
  70. Cách thức truy cập web truyền thống: ❖User→“Submit”→Browser→“HTML+GET(POST)“→ Server ❖Server→1 trang web kết quả→Browser→User ➔Chậm chạp. ➔Thiếu thân thiện
  71. Cách thức truy cập web sử dụng cơng nghệ AJAX: ◼ Browser → “XMLHttpRequest” → Server ◼ Server → phản hồi → Browser ➔Khơng cần load lại trang web. ➔Nhanh, thân thiện.
  72. The end Cám ơn các bạn đã quan tâm theo dõi.