Báo cáo thực tập tìm hiểu hệ thống cập nhật các website bị tấn công tại Việt Nam Việt Nam nằm trong số những nước có tỉ lệ website bị tấn công, điều khiển nhiều nhất thế giới. Trong năm 2010, Việt Nam đã có hơn 2300 website bị tấn công, số lượng website bị tấn công không ngừng tăng lên và tính từ đầu năm 2011 đến nay đã có hơn 3800 website bị tấn công. File đính kèm bao gồm báo cáo thực tập và đề cương chi tiết. LỜI NÓI ĐẦU 1 MỤC LỤC 2 DANH MỤC BẢNG 3 DANH MỤC HÌNH ẢNH 4 CHƯƠNG 1: TỔNG QUAN VỀ TRUNG TÂM ỨNG CỨU KHẨN CẤP MTVN 5 1.1 Tổng quan 5 1.2 Vị trí Chức năng 5 1.3 Nhiệm vụ và quyền hạn 6 1.4 Cơ cấu tổ chức 8 1.5 Trung tâm VNCERT – Chi nhánh Đà Nẵng 9 1.5.1 Tổ chức nhân sự 9 1.5.2 Chức năng và nhiệm vụ 9 CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN 10 2.1 Giới thiệu về ứng dụng Web 10 2.1.1 Giới thiệu về Apache 10 2.1.2 Giới thiệu về ngôn ngữ lập trình PHP 10 2.1.3 Giới thiệu về MySQL 14 2.1.4 Cài đặt Apache, PHP và MySQL 15 2.2 Giới thiệu về ngôn ngữ đánh dấu siêu văn bản (HTML) 16 2.3 Flash Chart Ứng dụng vẽ biểu đồ, kết xuất báo cáo 17 CHƯƠNG 3: TÌM HIỂU HỆ THỐNG CẬP NHẬT THÔNG TIN CÁC 19 3.1 Cấu trúc hệ thống 19 3.1.1 Cấu trúc cơ sở dữ liệu 19 3.1.2 Sơ đồ hệ thống 20 3.1.3 Các giao diện chính 21 3.2 Các chức năng chính của hệ thống 25 3.2.1 Chức năng cập nhật dữ liệu 25 3.2.2 Danh sách website bị nhiễm virus 26 3.2.3 Chức năng thống kê dữ liệu 28 3.2.4 Chức năng quản trị hệ thống 32 KẾT LUẬN 35 TÀI LIỆU THAM KHẢO 36 PHỤ LỤC: MÃ NGUỒN HỆ THỐNG 37
Trang 1LỜI NÓI ĐẦU
Việt Nam nằm trong số những nước có tỉ lệ website bị tấn công, điều khiển nhiềunhất thế giới Trong năm 2010, Việt Nam đã có hơn 2300 website bị tấn công, sốlượng website bị tấn công không ngừng tăng lên và tính từ đầu năm 2011 đến nay đã
có hơn 3800 website bị tấn công Tính chung từ 2002 đến nay đã có hơn 7900 website
bị tấn công Trong đó có gần 1000 website thuộc khối nhà nước(.gov.vn) Đây chỉ là
số lượng nhỏ được phát hiện, còn trên thực tế số lượng website bị tấn công lớn hơngấp nhiều lần
Sau khi phát hiện website bị tấn công, Trung tâm Ứng cứu khẩn cấp máy tínhViệt Nam đã gửi công văn cảnh báo an toàn thông tin đến các cơ quan, đơn vị chủquản của website và hỗ trợ giải quyết vấn đề
Hệ thống cập nhật thông tin các website bị tấn công của VNCERT có chức năngthống kê số liệu, gửi cảnh báo đến các đơn vị chủ quản,… Dựa trên tính thực tế và phùhợp với kiến thức chuyên ngành, tôi quyết định chọn hệ thống làm đề tài để nghiêncứu và phát triển Tôi xin chân thành cảm ơn Trung tâm Ứng cứu khẩn cấp máy tính
Việt Nam - chi nhánh Miền Trung, đặc biệt là anh Phạm Hồng Vĩnh - Cán bộ hướng dẫn thực tập tại trung tâm, cảm ơn Ths.Trịnh Thị Ngọc Linh – Giảng viên Khoa khoa
học máy tính trường CĐ CNTT hữu nghị Việt – Hàn đã nhiệt tình quan tâm, giúp đỡtôi trong suốt quá trình thực tập
Trang 2MỤC LỤC
LỜI NÓI ĐẦU 1
MỤC LỤC 2
DANH MỤC BẢNG 3
DANH MỤC HÌNH ẢNH 4
CHƯƠNG 1: TỔNG QUAN VỀ TRUNG TÂM ỨNG CỨU KHẨN CẤP MTVN.5 1.1 Tổng quan 5
1.2 Vị trí - Chức năng 5
1.3 Nhiệm vụ và quyền hạn 6
1.4 Cơ cấu tổ chức 8
1.5 Trung tâm VNCERT – Chi nhánh Đà Nẵng 9
1.5.1 Tổ chức nhân sự 9
1.5.2 Chức năng và nhiệm vụ 9
CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN 10
2.1 Giới thiệu về ứng dụng Web 10
2.1.1 Giới thiệu về Apache 10
2.1.2 Giới thiệu về ngôn ngữ lập trình PHP 10
2.1.3 Giới thiệu về MySQL 14
2.1.4 Cài đặt Apache, PHP và MySQL 15
2.2 Giới thiệu về ngôn ngữ đánh dấu siêu văn bản (HTML) 16
2.3 Flash Chart - Ứng dụng vẽ biểu đồ, kết xuất báo cáo 17
CHƯƠNG 3: TÌM HIỂU HỆ THỐNG CẬP NHẬT THÔNG TIN CÁC 19
3.1 Cấu trúc hệ thống 19
3.1.1 Cấu trúc cơ sở dữ liệu 19
3.1.2 Sơ đồ hệ thống 20
3.1.3 Các giao diện chính 21
3.2 Các chức năng chính của hệ thống 25
3.2.1 Chức năng cập nhật dữ liệu 25
3.2.2 Danh sách website bị nhiễm virus 26
3.2.3 Chức năng thống kê dữ liệu 28
3.2.4 Chức năng quản trị hệ thống 32
KẾT LUẬN 35
TÀI LIỆU THAM KHẢO 36
PHỤ LỤC: MÃ NGUỒN HỆ THỐNG 37
Trang 3DANH MỤC BẢNGBảng 1: Danh mục bảng và trường của Cơ sở dữ liệu 19 Bảng 2: Chức năng dành cho khách 20
Bảng 3: Chức năng dành cho quản trị 20
Trang 4DANH MỤC HÌNH ẢNH
Hình 1 Sơ đồ cơ cấu tổ chức 8
Hình 2 Sơ đồ tổ chức nhân sự trung tâm VNCERT – Chi nhánh Đà Nẵng 9
Hình 3: Cài đặt AppServ 16
Hình 4: Line Charts 17
Hình 5: Bar Charts 18
Hình 6: Area Charts 18
Hình 7: Pie Charts 18
Hình 8: Giao diện trang chủ 21
Hình 10: Giao diện chức năng thống kê 23
Hình 11: Giao diện chức năng hệ thống 24
Hình 12: Giao diện chức năng liên hệ 24
Hình 13: Sơ đồ chức năng cập nhật dữ liệu 25
Hình 14: Chức năng cập nhật dữ liệu 25
Hình 15: Sơ đồ quản lý danh sách các website bị tấn công 26
Hình 16: Thêm website bị nhiễm virus 26
Hình 17: Sửa thông tin Website 27
Hình 18: Biểu đồ thống kê các IP bị tấn công nhiều nhất 28
Hình 19: Biểu đồ thống kê các IP bị tấn công nhiều nhất (theo năm) 28
Hình 20: Biểu đồ thống kê các IP bị tấn công nhiều nhất (theo tháng) 29
Hình 21: Biểu đồ thống kê các IP bị tấn công nhiều nhất (theo ngày) 29
Hình 22: Biểu đồ thống kê các loại virus bị tấn công nhiều nhất 30
Hình 23: Biểu đồ thống kê các loại virus bị tấn công nhiều nhất (theo năm) 30
Hình 24: Biểu đồ thống kê các loại virus bị tấn công nhiều nhất (theo tháng) 31
Hình 25: Biểu đồ thống kê các loại virus bị tấn công nhiều nhất (theo ngày) 31
Hình 26: Sơ đồ quản lý thông tin người dùng 32
Hình 27: Danh sách thành viên 33
Hình 28: Hiệu chỉnh thông tin thành viên 33
Hình 29: Sao lưu / Phục hồi dữ liệu 34
Trang 5CHƯƠNG 1: TỔNG QUAN VỀ TRUNG TÂM ỨNG CỨU
KHẨN CẤP MÁY TÍNH VIỆT NAM1.1 Tổng quan
- Tên Cơ quan: Trung tâm ứng cứu khẩn cấp máy tính Việt Nam (Vietnam
Computer Emergency Response Team - VNCERT) – Bộ Thông tin và Truyềnthông
- Địa chỉ: A12 Lô 11 Định Công - Hoàng Mai - Hà Nội.
Trung tâm Ứng cứu Khẩn cấp Máy tính Việt Nam là đơn vị sự nghiệp có thu,
có tư cách pháp nhân, có con dấu và tài khoản riêng để giao dịch theo quy định củapháp luật; có trụ sở chính đặt tại thành phố Hà Nội và 02 chi nhánh tại thành phố ĐàNẵng và thành phố Hồ Chí Minh
Trang 61.3 Nhiệm vụ và quyền hạn
Trung tâm Ứng cứu khẩn cấp máy tính Việt Nam có các nhiệm vụ và quyền hạnsau:
- Điều phối các hoạt động ứng cứu mạng Internet quốc gia để phòng, chống sự
cố mạng và tham gia phòng chống tội phạm, chống khủng bố trên mạng Internet trongphạm vi quốc gia và trong khuôn khổ hợp tác quốc tế
- Điều phối và hướng dẫn các tổ chức, doanh nghiệp cung cấp các dịch vụInternet trong việc xử lý sự cố, trong việc thực hiện nghĩa vụ xử lý và lưu trữ số liệugốc để cung cấp thông tin cho mục đích đảm bảo an toàn mạng Internet quốc gia
- Điều phối các tổ chức, doanh nghiệp cung cấp dịch vụ về an toàn mạng trongnước theo quy định để xử lý các sự cố lớn trên mạng Internet quốc gia Phối hợp quốc
tế trong điều phối xử lý sự cố từ nước ngoài hoặc từ trong nước ra
- Tổ chức thu thập thông tin về an toàn mạng Internet Thống kê, tổng hợp,phân tích các số liệu về an toàn mạng Internet quốc gia để giúp cho các hoạt độngquản lý nhà nước về an toàn bảo mật trong các hoạt động công nghệ thông tin vàtruyền thông Theo dõi phát hiện những nguy cơ và sự cố an toàn mạng máy tính đểcảnh báo sớm cho các cơ quan hữu quan và cho cộng đồng; tham gia công tác quản lý
an toàn bảo mật trong các hoạt động công nghệ thông tin và truyền thông
- Thu thập đánh giá về các công nghệ và giải pháp đảm bảo an toàn mạng máytính mới nhất để khuyến cáo rộng rãi Tổ chức nghiên cứu thường xuyên để làm chủnhững kỹ thuật mới đồng thời phát triển các giải pháp, kỹ thuật riêng của VN về antoàn mạng máy tính để đề xuất giải pháp phục vụ xử lý khẩn cấp sự cố mạng vàkhuyến cáo các biện pháp đề phòng
- Tổ chức nghiên cứu và phối hợp với các đơn vị chức năng để xây dựng cáctiêu chuẩn và quy chuẩn kỹ thuật về an toàn mạng máy tính, bao gồm các tiêu chuẩn
kỹ thuật cho hệ thống thông tin, chuẩn về khung đào tạo bồi dưỡng người sử dụngmạng, các quy trình phòng chống và xử lý sự cố và các văn bản pháp quy khác về antoàn mạng máy tính
- Hoạt động thúc đẩy năng lực ứng cứu khẩn cấp máy tính và hình thành hệthống các CERT trong các cơ quan, tổ chức, doanh nghiệp Tuyên truyền nâng cao
Trang 7nhận thức cộng đồng về an toàn thông tin máy tính; phát hành các ấn phẩm về an toànmạng máy tính theo quy định của pháp luật.
- Tham gia hợp tác với các tổ chức CERT trên thế giới Là đầu mối trao đổithông tin với các trung tâm an toàn mạng quốc tế Tham gia các diễn đàn, hoạt độngđào tạo và hội thảo quốc tế về lĩnh vực liên quan
- Được phối hợp, hợp tác với các tổ chức quốc tế để khai thác thông tin, kĩ thuật
và tri thức phòng chống sự cố và tội phạm mạng, quảng bá về an toàn mạng máy tínhViêt Nam và tranh thủ sự giúp đỡ quốc tế nân cao năng lực đảm bảo an toàn mạng củaViệt Nam
- Tham gia công tác quản lý nhà nước đối với các hoạt động của cá hiệp hội và
tổ chức phi chính phủ trong lĩnh vực an toàn thông tin trên mạng máy tính Đượcquyền yêu cầu các tổ chức, cá nhân hoạt động trên mạng Internet quốc gia cung cấpcác thông tin và các số liệu thống kê liên quan đến vấn đề an toàn mạng
- Cung cấp các dịch vụ đánh giá về kĩ thuật an toàn mạng cho các hệ thốngthông tin và cho các sản phẩm, công nghệ đảm bảo an toàn thông tin dùng trong mạngmáy tính Kiểm tra đánh giá, công nhận đạt tiêu chuẩn cho các tổ chức làm dịch vụứng cứu máy tính và an toàn mạng máy tính
- Tổ chức các dịch vụ về đào tạo, bồi dưỡng kĩ thuật xây dựng mạng và an toànmạng máy tính, kiểm tra sát hạch và cấp chứng chỉ về trình độ quản trị mạng và đảmbảo an toàn mạng máy tính theo các quy định hiện hành của Nhà nước và phân cấp của
Bộ thông tin và truyền thông
- Cung cấp các dịch vụ khác trong lĩnh vực tư vấn, nghiên cứu, triển khai, sảnxuất, lưu trữ, và cung cấp thông tin phục vụ an toàn mạng máy tính, tạo thêm cácnguồn thu nhằm mở rộng phạm vi và quy mô hoạt động phù hợp với chức năng, nhiệm
vụ và quyền hạn của Trung tâm và theo quy định của Pháp luật, bảo toàn và phát triểncác nguồn lực được giao
- Được thu, quản lý và sử dụng phí và lệ phí theo quy định của Pháp luật
- Quản lý về tổ chức công chức, viên chức và tài sản của trung tâm theo quyđịnh của pháp luật và phân cấp của Bộ trưởng
- Thực hiện các nhiệm vụ khác do Bộ trưởng giao
Trang 8Phó giám đốc giúp giám đốc chỉ đạo, điều hành các mặt công tác của trung tâm
và chịu trách nhiệm trước giám đốc về nhiệm vụ được phân công
- Phòng nghiên cứu - phát triển
- Phòng Tư vấn - Đào tạo
- Chi nhánh tại thành phố Hồ Chí Minh
- Chi nhánh tại thành phố Đà Nẵng
Hình 1 Sơ đồ cơ cấu tổ chức
Chi nhánh tại thành phố Hồ Chí Minh và chi nhánh tại thành phố Đà Nẵng cócon dấu và tài khoản riêng để giao dịch theo quy định của pháp luật
Trang 91.5 Trung tâm VNCERT – Chi nhánh Đà Nẵng
1.5.1 Tổ chức nhân sự
Hình 2 Sơ đồ tổ chức nhân sự trung tâm VNCERT – Chi nhánh Đà Nẵng
1.5.2 Chức năng và nhiệm vụ
- Điều phối các hoạt động ứng cứu sự cố máy tính, cảnh báo kịp thời các vấn đề
an toàn mạng máy tính tại khu vực miền Trung – Tây Nguyên phục vụ nhiệm vụ củaTrung tâm
- Là đầu mối của Trung tâm quan hệ với các cơ quan đơn vị và các cá nhântrong và ngoài ngành thuộc khu vực miền Trung – Tây Nguyên để tiếp nhận, giảiquyết các vấn đề thuộc chức năng và nhiệm vụ của Trung tâm theo sự chỉ đạo củaGiám đốc Trung tâm
- Chủ động đề xuất, tham gia kế hoạch chương trình công tác hàng năm, tổ chứctriển khai thực hiện các nhiệm vụ được Giám đốc giao
- Thực hiện các nhiệm vụ đột xuất do Giám đốc giao
Trang 10CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN2.1 Giới thiệu về ứng dụng Web
2.1.1 Giới thiệu về Apache
Apache hay là chương trình máy chủ HTTP là một chương trình dành cho máychủ đối thoại qua giao thức HTTP Apache chạy trên các hệ điều hành tương tự nhưUnix, Microsoft Windows, Novell Netware và các hệ điều hành khác Apache đóngmột vai trò quan trọng trong quá trình phát triển của mạng web thế giới (tiếng Anh:World Wide Web)
Khi được phát hành lần đầu, Apache là chương trình máy chủ mã nguồn mởduy nhất có khả năng cạnh tranh với chương trình máy chủ tương tự của NetscapeCommunications Corporation mà ngày nay được biết đến qua tên thương mại Sun JavaSystem Web Server Từ đó trở đi, Apache đã không ngừng tiến triển và trở thành mộtphần mềm có sức cạnh tranh mạnh so với các chương trình máy chủ khác về mặt hiệusuất và tính năng phong phú Từ tháng 4 năm 1996, Apache trở thành một chươngtrình máy chủ HTTP thông dụng nhất Hơn nữa, Apache thường được dùng để so sánhvới các phần mềm khác có chức năng tương tự Tính đến tháng 1 năm 2007 thì Apachechiếm đến 60% thị trường các chương trình phân phối trang web
Apache được phát triển và duy trì bởi một cộng đồng mã nguồn mở dưới sự bảotrợ của Apache Software Foundation Apache được phát hành với giấy phép ApacheLicense và là một phần mềm tự do và miễn phí
2.1.2 Giới thiệu về ngôn ngữ lập trình PHP
2.1.2.1 Tổng quan về PHP
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trìnhkịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết chomáy chủ, mã nguồn mở, dùng cho mục đích tổng quát Nó rất thích hợp với web và cóthể dễ dàng nhúng vào trang HTML Do được tối ưu hóa cho các ứng dụng web, tốc
độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩmtương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành mộtngôn ngữ lập trình web phổ biến nhất thế giới
Trang 11Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và
có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lậpnên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanhnghiệp
2.1.2.2 Lịch sử phát triển PHP
PHP/FI
PHP được phát triển từ một sản phẩm có tên là PHP/FI PHP/FI do RasmusLerdorf tạo ra năm 1995, ban đầu được xem như là một tập con đơn giản của các mãkịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng.Ông đã đặt tên cho bộ mã kịch bản này là "Personal Home Page Tools"
Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hút đượchàng ngàn người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền đã được ghinhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạng Internet Tuy đã cótới hàng nghìn người tham gia đóng góp vào việc tu chỉnh mã nguồn của dự án này thìvào thời đó nó vẫn chủ yếu chỉ là dự án của một người
PHP/FI 2.0 được chính thức công bố vào tháng 11 năm 1997, sau một thời giankhá dài chỉ được công bố dưới dạng các bản beta Nhưng không lâu sau đó, nó đã đượcthay thế bởi các bản alpha đầu tiên của PHP 3.0
PHP 3
PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với cácphiên bản PHP mà chúng ta được biết ngày nay Nó đã được Andi Gutmans và ZeevSuraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó Lý do chính
mà họ đã tạo ra phiên bản này là do nhận họ thấy PHP/FI 2.0 hết sức yếu kém trongviệc phát triển các ứng dụng thương mại điện tử mà họ đang xúc tiến trong một dự áncủa trường đại học Các tính năng khác được giới thiệu trong PHP 3.0 gồm có hỗ trợ
cú pháp hướng đối tượng và nhiều cú pháp ngôn ngữ nhất quán khác
Ngôn ngữ hoàn toàn mới đã được công bố dưới một cái tên mới, xóa bỏ mốiliên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà cái tên PHP/FI 2.0 gợinhắc Nó đã được đặt tên ngắn gọn là "PHP", một kiểu viết tắt hồi quy của "PHP:Hypertext Preprocessor"
Trang 12Vào cuối năm 1998, PHP đã phát triển được con số cài đặt lên tới hàng chụcngàn người sử dụng và hàng chục ngàn web site báo cáo là đã cài nó Vào thời kì đỉnhcao, PHP 3.0 đã được cài đặt cho xấp xỉ 10% số máy chủ web có trên mạng Internet.
PHP 3.0 đã chính thức được công bố vào tháng 6 năm 1998, sau thời gian 9tháng được cộng đồng kiểm nghiệm
PHP 4
Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố, AndiGutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của PHP Mụcđích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phức tạp, và cải tiến tính môđun của cơ sở mã PHP
Ngoài tốc độ xử lý được cải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủyếu khác gồm có sự hỗ trợ nhiều máy chủ web hơn, hỗ trợ phiên làm việc HTTP, tạo
bộ đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo mậthơn và cung cấp một vài các cấu trúc ngôn ngữ mới
Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và hàngtriệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên mạng Internet
Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn người và nhiều nghìnngười khác tham gia vào các dự án có liên quan đến PHP như PEAR, PECL và tài liệu
kĩ thuật cho PHP
PHP 5
Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát triểnPHP tự mãn Cộng đồng PHP đã nhanh chóng giúp họ nhận ra những yếu kém củaPHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML,không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ trợ dịch vụ webyếu Những điểm này chính là mục đích để Zeev và Andi viết Zend Engine 2.0, lõi củaPHP 5.0 Một thảo luận trên Slashdot đã cho thấy việc phát triển PHP 5.0 có thể đã bắtđầu vào thời điểm tháng 12 năm 2002 nhưng những bài phỏng vấn Zeev liên quan đếnphiên bản này thì đã có mặt trên mạng Internet vào khoảng tháng 7 năm 2002
Ngày 29 tháng 6 năm 2003, PHP 5 Beta 1 đã chính thức được công bố để cộngđồng kiểm nghiệm Đó cũng là phiên bản đầu tiên của Zend Engine 2.0 Phiên bản
Trang 13Beta 2 sau đó đã ra mắt vào tháng 10 năm 2003 với sự xuất hiện của hai tính năng rấtđược chờ đợi: Iterators, Reflection nhưng namespaces một tính năng gây tranh cãikhác đã bị loại khỏi mã nguồn
Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 được PHP Team công bố đánh dấu
sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trong việc tạo ra một
hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu và thực hiện các câu truyvấn Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếp tục có những cải tiến trongnhân Zend Engine 2, nâng cấp mô đun PCRE lên bản PCRE 5.0 cùng những tính năng
và cải tiến mới trong SOAP, streams và SPL
bị đưa ra thành thư viện PECL…)
2.1.2.3 Tại sao chọn PHP?
Để thiết kế Web động có rất nhiều ngôn ngữ lập trình khác nhau để lựa chọn,mặc dù cấu hình và tính năng khác nhau nhưng chúng vẵn đưa ra những kết quả giốngnhau Chúng ta có thể lựa chọn cho mình một ngôn ngữ : ASP, PHP, Java, Perl vàmột số loại khác nữa
Mã nguồn mở
Tính cộng đồng của PHP
Thư viện phong phú
Hỗ trợ kết nối nhiều hệ cơ sở dữ liệu
Lập trình hướng đối tượng
Tính bảo mật
Khả năng mở rộng cho PHP
Trang 142.1.3 Giới thiệu về MySQL
2.1.3.2 Tại sao chọn MySQL?
Cơ sở dữ liệu MySQL đã trở thành cơ sở dữ liệu mã nguồn mở phổ biến nhấttrên thế giới vì cơ chế xử lý nhanh và ổn định của nó, sự đáng tin cậy cao và dễ sửdụng
Nó được sử dụng mọi nơi – ngay cả châu Nam Cực - bởi các nhà phát triểnWeb riêng lẻ cũng như rất nhiều các tổ chức lớn nhất trên thế giới để tiết kiệm thờigian và tiền bạc cho những Web sites có dung lượng lớn, phần mềm đóng gói – baogồm cả những nhà đi đầu trong lĩnh vực công nghiệp như Yahoo!, Alcatel-Lucent,Google, Nokia, YouTube và Zappos.com
MySQL không chỉ là cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thế giới, nócòn trở thành cơ sở dữ liệu được chọn cho thế hệ mới của các ứng dụng xây dựng trênnền Linux, Apache, MySQL, PHP/Perl/Python MySQL chạy trên hơn 20 flatform baogồm: Linux, Windows, OS/X, HP-UX, AIX, Netware, mang đến cho bạn tính linhhoạt trong việc sử dụng
Tính linh hoạt
Tính thực thi cao
Có thể sử dụng ngay
Hỗ trợ giao dịch mạnh
Trang 15 Nơi lưu trữ Web và Data đáng tin cậy
2.1.4 Cài đặt Apache, PHP và MySQL
Để cài đặt PHP, chúng ta có thể cài đặt từng gói riêng lẻ (PHP, Apache, Mysql)
Có thể cài từng gói một hoặc cài bản tích hợp tất cả các gói trên
2.1.4.1 Giới thiệu về Appserv
AppServ là một gói đầy đủ tính năng của Apache, MySQL, PHP,phpMyAdmin Được lấy ý tưởng của Phanupong Panyadee (người sáng lập trangAppServ – tại Thái Lan) sau khi thấy việc phức tạp của việc quản trị từng phần mềmlàm cho mọi người chóng mặt Việc cài đặt AppServ rất đơn giản chỉ mất thời giankhoảng 1 phút Trong một gói Appserv bao gồm:
- Apache
- PHP
- MySQL
- PhpMyAdmin
Mục tiêu của AppServ sau khi cài đặt, có thể thiết lập máy chủ web, máy chủ
cơ sở dữ liệu trong thời gian ngắn AppServ chạy tốt nhất trên hệ điều hànhLinux/Unix do hệ điều hành Windows là không đủ tốt cho tải nặng server Windowsweb hoặc cơ sở dữ liệu hệ điều hành kiến trúc sử dụng bộ nhớ nhiều hơn là hệ điềuhành Linux/Unix Tuy nhiên để làm việc bình thường không cần tốc độ quá cao, có thểcài nó trên Windows
Appserv có nhiều phiên bản, bản mới nhất là 2.6.0 Tuy nhiên không nhất thiếtbạn phải update mỗi khi có một phiên bản mới mà nên tìm phiên bản nào phù hợp với
sự làm việc của mình
Trang 162.2 Giới thiệu về ngôn ngữ đánh dấu siêu văn bản (HTML)
HTML (tiếng Anh, viết tắt cho HyperText Markup Language, hay là "Ngôn ngữĐánh dấu Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên cáctrang web với các mẩu thông tin được trình bày trên World Wide Web HTML đượcđịnh nghĩa như là một ứng dụng đơn giản của SGML và được sử dụng trong các tổchức cần đến các yêu cầu xuất bản phức tạp HTML đã trở thành một chuẩn Internet
do tổ chức World Wide Web Consortium (W3C) duy trì Phiên bản chính thức mớinhất của HTML là HTML 4.01 (1999) Sau đó, các nhà phát triển đã thay thế nó bằngXHTML Hiện nay, HTML đang được phát triển tiếp với phiên bản HTML5 hứa hẹnmang lại diện mạo mới cho Web
Bằng cách dùng HTML động hoặc Ajax, lập trình viên có thể được tạo ra và xử
lý bởi số lượng lớn các công cụ, từ một chương trình soạn thảo văn bản đơn giản – cóthể gõ vào ngay từ những dòng đầu tiên – cho đến những công cụ xuất bảnWYSIWYG phức tạp
Trang 172.3 Flash Chart - Ứng dụng vẽ biểu đồ, kết xuất báo cáo
Flash Chart là một ứng dụng vẽ biểu đồ thống kê bằng flash Flash Chart đượctạo ra bằng cách sử dụng công cụ biểu đồ Flash và chúng có thể được chèn vào trongcác trang web hoặc trong các ứng dụng máy tính để bàn Flash chart có thể xem trêntất cả các máy tính có phần mềm Adobe Flash player Nó tạo ra nhiều dạng biểu đồnhư Line charts, bar charts, horizontal charts, candle charts,…
Là mã nguồn miễn phí, cung cấp một loạt các tính năng giúp tối ưu hóa trongviệc thể hiện thống kê dữ liệu trên biểu đồ Ứng dụng cũng hỗ trợ chú thích, hình ảnhđộng và cung cấp nhiều loại biểu đồ nhằm nâng cao tính năng tương tác và thẩm mỹ.Đặc biệt, Flash Chart có khả năng cập nhật động, điều này có nghĩa rằng các thànhphần dữ liệu tạo nên biểu đồ có thể được liên kết với một nguồn dữ liệu động (có thểthay đổi) với sự giúp đỡ của nhiều loại ngôn ngữ kịch bản như PHP, ASP.NET,ColdFusion, JSP, …
Hình 4: Line Charts
Trang 18Hình 5: Bar Charts
Hình 6: Area Charts
Trang 19Hình 7: Pie Charts
CHƯƠNG 3: TÌM HIỂU HỆ THỐNG CẬP NHẬT THÔNG TIN CÁC WEBSITE BỊ TIN TẶC TẤN CÔNG TẠI VIỆT NAM3.1 Cấu trúc hệ thống
3.1.1 Cấu trúc cơ sở dữ liệu
dns1 varchar(50)
Hệ thống phân giảitên miền
dns2 varchar(50)
dns3 varchar(50)
info varchar(200) Thông tin mở rộng
Bảng 1: Danh mục bảng và trường của Cơ sở dữ liệu
Trang 203.1.2 Sơ đồ hệ thống
3.1.2.1 Chức năng dành cho khách
Danh sách website bị tấn công - Xem danh sách các website bị tấn công
- Lọc thông tin theo yêu cầuThống kê
- Xem thống kê biểu đồ theo ip_initial, virus_name, net_name
- Sắp xếp và hiển thị dữ liệu theo ngày, tháng, năm Đăng nhập - Đăng nhập để xác thực quyền trên hệ thống
Sơ đồ site - Xem sơ đồ tất cả các chức năng hiện có trên hệ thống.Liên hệ - Xem thông tin liên hệ của VNCERT trên toàn quốc
Bảng 2: Chức năng dành cho khách 3.1.2.2 Chức năng dành cho quản trị
Danh sách website bị tấn công
- Xem danh sách các website bị tấn công
- Lọc thông tin theo yêu cầu
Sơ đồ site - Xem sơ đồ tất cả các chức năng hiện có trên hệ thống.Liên hệ - Xem thông tin liên hệ của VNCERT trên toàn quốc
Bảng 3: Chức năng dành cho quản trị