Main Menu

Thứ Tư, 18 tháng 1, 2017

Từ “tính toán lưới” đến “tính toán mây”

Từ “tính toán lưới” đến “tính toán mây” 

Mô hình “tính toán mây” đang trên đường phát triển. Nhiều doanh nghiệp nước ngoài đang hướng về “môi trường mây”. Cần phải có những thăm dò hướng phát triển công nghệ CNTT ở nước ta để giúp cho định hướng chiến lược phát triển “tính toán mây” phù hợp.

Từ “tính toán lưới” đến “tính toán mây”
Ở nước ta trong mấy năm qua, báo chí đã đề cập với những tên gọi khác nhau mà thuật ngữ tiếng Anh là “Grid computing” và “Cloud computing”. Nào là mạng lưới máy tính, mạng lưới tính toán, điện toán lưới, tính toán đám mây, điện toán đám mây, điện toán máy chủ ảo… Ở đây, tôi dùng cụm từ “tính toán lưới” (Grid computing) và “tính toán mây” (Cloud computing) để chỉ những khái niệm này.

Tính toán lưới đã phát triển rất mạnh trên thế giới để liên kết những hệ thống tính toán với nhau nhằm giải những bài toán cực lớn. Hệ thống bao gồm phần cứng, phần mềm (PM), đường truyền và hàng bao nhiêu thiết bị khác… trong những không gian thích hợp tạo một môi trường tính toán gọi là môi trường lưới.

Môi trường lưới có thể phân thành 3 lớp: Lớp ứng dụng (Grid Application), lớp cơ sở hạ tầng (Grid Infrastructures) và lớp giữa (Grid Middleware). Lớp ứng dụng rất phong phú, chẳng hạn, từ việc truy xuất dữ liệu qua điện thoại di động đến những hệ mô phỏng xử lý một lượng dữ liệu lớn để có thể quan sát quá trình diễn biến của một thí nghiệm khoa học nào đó. Lớp hạ tầng cơ sở gồm hệ thống máy tính, siêu máy tính, các hệ lưu trữ, hạ tầng truyền dẫn và Internet. Còn lớp giữa cung cấp cho lớp ứng dụng và lớp cơ sở hạ tầng những giao thức được chuẩn hóa, tạo khả năng truy cập lưới dễ dàng, thuận tiện.

Có thể xem lớp giữa là một PM hệ thống nằm giữa lớp PM ứng dụng và hệ điều hành, nhằm cung cấp các dịch vụ (DV) cho các ứng dụng như DV khám phá tài nguyên (Discovery), lưu trữ (Storage), thực thi (Execution), thông tin(Information), theo dõi tài nguyên (Resource Monitoring), kiểm lỗi và phục hồi (Failure Detector and Recovery)… Đây là những DV cốt lõi để cho người dùng tham gia vào môi trường lưới. Tùy theo yêu cầu của người dùng, lớp ứng dụng sẽ tạo cho người dùng một nền tảng ứng dụng (Platform) thích hợp.

Nói đến tính toán lưới là nói đến những cơ sở hạ tầng cực mạnh, những siêu máy chủ, những thiết bị lưu trữ lớn, những clusters, những PM ứng dụng và sự quản trị hệ thống phức hợp; là nói đến tính toán song song, phân chia thời gian, các thuật toán tối ưu xử lý phân bố tài nguyên tính toán, lưu trữ…Những mô hình tính toán lưới gần đây cũng tiếp cận đến cách khai thác PM như một DV, khai thác nền tảng như một DV, đã có DV máy chủ ảo... và thực sự chúng đã chuyển hoá dần sang tính toán mây. Tính toán mây đều có những đặc điếm nói trên của tính toán lưới, nhưng còn phát triển cao hơn ở những khía cạnh sau:

Tính toán mây là một mô hình tính toán năng động cao, có khả năng mở rộng đến các tài nguyên ảo trên Internet. Hạ tầng cơ sở của tính toán mây được khai thác như một DV.( IaaS –Infrastructure as a Service). Người dùng không phải đầu tư vốn vào thiết bị và không phải lo bảo trì thiết bị và hàng nhiều công việc khác liên quan mà chỉ chịu chi phí khai thác thiết bị ảo trên Internet do nhà cung cấp phân bố, quản lý. Người dùng truy cập đến tính toán mây thông qua các DV Web services.
Mô hình tính toán mây (hình lấy trên Internet)
Nền tảng của một ứng dụng nào đó được khai thác như một DV (PaaS- Platform as a Service). Người dùng không phải chịu chi phí cho toàn bộ nền tảng của ứng dụng mà chỉ chịu chi phí cho phần nền tảng nào được sử dụng.

PM được khai thác như một DV (SaaS-Software as a Service). Không phải trả bản quyền cho PM mà người dùng chỉ trả tiền khai thác PM đó.

Tiện ích tính toán (Utility Computing). Người dùng chỉ chịu chi phí cho những tài nguyên, tiện ích được khai thác, không khác gì trả tiền điện, tiền nước theo đồng hồ đo mà ta đã rất quen thuộc trong cuộc sống hàng ngày.
Nhìn ra thế giới

IBM nói nhiều đến một cơ sở hạ tầng thông minh. IBM phối hợp với ĐH Texas Medical Branch (UTMB) sử dụng Big Blue (siêu máy tính ảo) để xác định các hợp chất hóa học có nhiều khả năng ngăn chặn sự lây lan của virus cúm gia cầm và các loại virus khác. Dự án nghiên cứu nhân đạo này sử dụng một nguồn lực tính toán lớn đến hàng triệu máy tính của hơn 400.000 người sẵn sàng hiến thời gian máy của họ cho việc xử lý. DV IBM Smart Business (IBM kinh doanh thông minh) với công nghệ tính toán mây cung cấp cho người dùng khả năng nâng cao chất lượng công việc, đảm bảo an toàn thông tin và tìm kiếm mô hình kinh doanh sáng tạo. IBM đang sở hữu một mạng lưới tính toán mây rất lớn.
Ưu việt của công nghệ tính toán mây so với những công nghệ có trước là nó cho phép người dùng một khả năng khai thác rất lớn, với chi phí thấp, người dùng chỉ trả chi phí cho nhà cung cấp những gì đã khai thác
Ngoài lắp đặt ở nước ta, IBM còn có những trung tâm khác như ở Hàn Quốc, Ấn Độ, Brazil…Tháng 5/2008, IBM cho ra mắt siêu máy tính Road Runner (trị giá 133 triệu USD), tốc độ tính toán đạt 1 triệu tỷ phép tính/giây(petaflop).

Chúng ta liên tưởng đến những máy tính “cực lớn” của IBM trước đây và các trung tâm tính toán tập trung mà người dùng chỉ có thể tiếp cận thông qua các máy trạm trong những năm 60, 70 của thế kỷ trước. Thời kỳ “tập trung cửa quyền” ấy qua đi, nhường chỗ cho các máy tính cá nhân để bàn (PC) làm việc trong môi trường khách/chủ (client/server), rồi tiếp đến là hình thành các mạng máy tính mà nổi bật là mạng Internet. Ngày nay, sự hình thành tính toán mây với những TTDL cực lớn, người dùng có thể truy cập nhờ Web services bằng các phương tiện như điện thoại di động, netbook, desktop…, làm chúng ta lại nghĩ đến một sự tập trung mới! Nhưng lần này là sự tập trung tiến bộ, nâng cao, ảo hóa.
Vài nét trong nước

Ở nước ta đã có những đề tài nghiên cứu về tính toán lưới như đề tài Xây dựng dữ liệu lưới cho khí tượng Việt Nam (Construction a Data Grid for Meteorology in Viet Nam) của Đại học Bách khoa Hà Nội và nhiều đề tài khác của Viện CNTT- Viện Khoa học Công nghệ Việt Nam và của chương trình Nghiên cứu cấp nhà nước KC-01.

VN, đã đồng hành cùng thế giới vào “tính toán mây”. Bộ KH&CN phối hợp với hãng IBM xây dựng cổng thông tin VIP (Vietnam Information for Science and Technology Advance Innovation Portal) với công nghệ tính toán mây từ năm 2007 nhằm tạo một môi trường sáng tạo cho các nhà nghiên cứu, giảng viên, sinh viên các trường ĐH chia sẻ thông tin, thiết lập một cộng đồng hợp tác nghiên cứu. Ngay từ năm 2005, CISCO cũng đã giới thiệu một mô hình chuẩn Trung tâm dữ liệu (Data Center) tính toán lưới có khả năng tích hợp các DV web và khả năng tự động hoá cao cho các doanh nghiệp lớn ngành ngân hàng - tài chính. Tại TPHCM và Hà Nội đã có nhiều Trung tâm dữ liệu (TTDL) đạt tiêu chuẩn của Hiệp hội Viễn thông Quốc tế TIA, như của FPT Telecom, CMC Telecom, Ngân hàng Sài gòn Thương tín- Sacombank. Ngân hàng Đông Nam Á... Tất cả đều cho biết nhờ dùng công nghệ tính toán lưới đã tiết kiệm đến 50% chi phí…
Mấy điều cần lưu ý

Ở nước ta, Bộ KHCN đã sớm quan tâm đến vấn đề này. Bộ đã tổ chức hội thảo và đã có một số đề tài nghiên cứu, một số dự án được triển khai. Mặt khác Bộ cũng rất quan tâm đến một hướng có tính nền tảng là PM nguồn mở (PMNM), là một trong những vấn đề cũng có tính cốt lõi cho phát triển tính toán mây. Tuy nhiên, nên triển khai:

Nghiên cứu xây dựng một chiến lược phát triển tính toán mây ở nước ta. Chiến lược này sẽ trả lời cho câu hỏi khi hàng loạt các cơ sở tính toán hay là các TTDL của nhiều cơ quan, tổ chức doanh nghiệp được trang bị hàng chục năm nay trên cơ sở những công nghệ cũ, bây giờ sẽ phát triển tiếp như thế nào? Sẽ chuyển dần đến tính toán mây như thế nào? Trong tính toán mây thì nơi nào cần có TTDL riêng, nơi nào thuê DV và thuê ở cấp độ nào, loại DV gì? Câu hỏi này càng phức tạp khi chúng ta đầu tư phát triển hạ tầng cơ sở cho việc đẩy mạnh phát triển chính phủ điện tử.

Cần có chính sách tâp hợp được lực lượng nghiên cứu có năng lực tham gia nghiên cứu lĩnh vực này. Một số trường ĐH lớn nên có nội dung đào tạo tính toán mây mà không chỉ dừng lại ở bộ môn tính toán song song như ở các trường trước đây đã có.

Cần tiếp tục đẩy mạnh việc dùng PM nguồn mở để chuẩn bị sẵn sàng đón nhận công nghệ tính toán mây. Cần có những chính sách thỏa đáng thu hút nhân lực cũng như đầu tư vào PMNM.
Nguyễn Lâm.

 

Hacker Nga: Sức mạnh trong thế giới ảo

Hacker Nga: Sức mạnh trong thế giới ảo 

(PCWorldVN) Bên cạnh những scandal liên quan đến hacker Nga mà báo chí và giới công nghệ đề cập thì bạn cần biết rằng tiềm lực về an ninh mạng được coi là nguồn tài nguyên chiến lược của đất nước bạch dương này.

Khi đề cập về an ninh mạng của Nga, có thể không ít người liên tưởng ngay đến các vụ hack đình đám mà đứng đằng sau đó là giới hacker Nga. Những cuộc xâm nhập trái phép vào các hệ thống mạng của các tổ chức kinh doanh, tài chính, và cả chính phủ của nhiều nước, hay những vụ đánh cắp tài khoản, chuyển tiền bất hợp pháp có liên quan đến hacker Nga đã dấy lên không ít lo ngại từ phía cộng đồng mạng.
Tuy nhiên, đó chỉ là một cách nhìn chưa đầy đủ từ góc hẹp.
Quay lại thời điểm cách đây 2 tháng, vào trung tuần tháng 11/2016, khi diễn ra sự kiện Ngày An Toàn Thông Tin (do Chi Hội VNISA Phía Nam cùng với Sở TTTT TP.HCM phối hợp tổ chức). Bên cạnh những tên tuổi lớn trong lĩnh vực an ninh mạng, có thể nhận ra một gương mặt mới, một cái tên hầu như không ai biết đến, nhưng lại gây ấn tượng bởi bài báo cáo hấp dẫn và rất thực tế. Đó là Pado NanoTech, một công ty bảo mật mới thành lập, và cùng với nhà bảo mật kỳ cựu Kaspersky Lab, đây là 2 đại diện đến từ Cộng hòa Liên bang Nga. Không chỉ có mặt trong ngày Hội thảo mà họ là những doanh nghiệp đang hoạt động hiệu quả tại Việt Nam.
An ninh mạng là thế mạnh
Là một cường quốc, lẽ đương nhiên Nga phải mạnh trong mọi lĩnh vực, và đây là điều không ai nghi ngờ. Nhưng không chỉ vậy, theo đánh giá của các chuyên gia, Nga luôn phải mạnh trong lĩnh vực an ninh mạng. Tại sao? Bởi Nga - một đất nước có rất nhiều nhà máy điện hạt nhân, chế biến dầu mỏ, thủy điện, những hệ thống công nghiệp lớn… và không thể để các công trình đó bị ngư trệ lại dù chỉ một phút. Nga luôn phải bảo vệ các cơ sở của họ bằng lực lượng an ninh mạng của mình. Trên thực tế, Chính phủ Nga đã đưa các chương trình nghiên cứu, đào tạo về khoa học an ninh mạng vào hầu hết các trường đại học trong cả nước.
Bên cạnh đó, Nga cũng là nước có nhiều công ty bảo mật nổi tiếng thế giới như Kaspersky Lab, Infovoch… và các chuyên gia bảo mật Nga cũng làm việc tại rất nhiều các công ty trên thế giới.
Trước thực tế tình hình an ninh mạng hiện nay, vai trò của các công ty bảo mật ngày càng quan trọng. Tại Kaspersky Lab, một phần ba nhân viên thuộc về bộ phận Nghiên cứu và Phát triển là nguồn nhân lực liên tục bổ sung cho các nghiên cứu và phát hiện các phần mềm độc hại mới nhất. Nhóm các chuyên gia an ninh mạng cấp cao của Kaspersky Lab (gọi tắt là Great) đã góp phần không nhỏ trong việc phát hiện ra các vụ tấn công có chủ đích - APT (Advanced Persistent Threat) tinh vi và nguy hiểm trên thế giới, điển hình như vụ mã độc Stuxnet tấn công hệ thống điều khiển thiết bị làm giàu Uranium của Iran năm 2010, hay các mã độc khét tiếng khác như Duqu 2.0, Red October, Dark Hotel...
Chuyên gia Kaspersky Lab cho rằng tội phạm mạng hiện nay đều thực hiện các cuộc tấn công có chủ đích, và tiến hành một cách im lặng, lâu dài nhằm vào việc lấy cắp những tài sản có giá trị như tiền bạc, danh tính, dữ liệu nhạy cảm, thông tin mật. Kaspersky Lab xem việc đầu tư nguồn lực và công nghệ để phát triển các giải pháp phòng chống tấn công là mục tiêu quan trọng trong giai đoạn này, trong đó nhiều giải pháp cho tổ chức tài chính, các cơ sở hạ tầng quan trọng đã được triển khai.
Thực tế cho thấy tình hình chính trị trên thế giới đã thay đổi, những cuộc đối đầu giữa các phe phái, tổ chức và cả ở tầm quốc gia đã chuyển sang hình thức mới. Và nước Nga tập trung vào phát triển an ninh mạng, coi đây nguồn tài nguyên chiến lược, nhằm đạt được lợi thế so với các nước khác.
Đại diện công ty Pado NanoTech trình bày tại Ngày An toàn thông tin Việt Nam 2016
Mũ đen và mũ trắng
Hacker Nga luôn được coi là những chuyên gia bảo mật tầm cỡ thế giới. Trên thực tế, một số lượng lớn các vụ việc đình đám liên quan đến bảo mật có sự tham gia của hacker Nga. Một trong những chỉ số quan trọng vẫn được giới an ninh mạng biết tới là “lỗ hổng bảo mật”, được bán trên “chợ đen” cho bất kỳ nhu cầu làm phần mềm nào? Và cũng không phải quá khó khăn để tạo ra một mã độc. Đây là một mảng kinh doanh béo bở, và có đến 70% các lỗ hổng được phát hiện từ Nga. Điều này cho thấy Nga đang có một tiềm năng rất lớn trong lĩnh vực an ninh mạng. Ngoài ra, ở Nga có rất nhiều công trình, hệ thống được tự động hóa, do vậy mà các chuyên gia CNTT của Nga có thể truy cập đến một số lượng khổng lồ các thiết bị.
Từ đó có thể thấy rằng hacker Nga đang là một thế lực mạnh, thực sự là một trong những đội ngũ chuyên gia bảo mật tốt nhất trên thế giới. Tuy nhiên, vấn đề nào cũng có hai mặt của nó. Trong giới chuyên gia an ninh mạng cũng có không ít người sử dụng tài năng của họ cho những mục đích xấu hoặc vì các lý do không đúng đắn. Ngoài ra, nhiều tổ chức trên thế giới vẫn thuê hacker Nga và sử dụng kỹ năng của họ cho nhiều mục đích khác nhau.
Mặc dù vậy, một tỷ lệ hacker lớn hơn vẫn đang phục vụ trong các công ty bảo mật. Nhiều hacker Nga đã tham gia vào các công ty bảo mật để săn lùng những kẻ tấn công, phát hiện mã độc. Việc làm này thú vị hơn nhiều, đòi hỏi kỹ năng và tư duy phân tích. Các chuyên gia sử dụng chuyên môn của mình cho những việc có ích cho cộng đồng và luôn cố gắng làm cho thế giới trở nên an toàn hơn. Một ví dụ như Eugene Kaspersky, nhà sáng lập và là CEO của Karspersky Lab, luôn khẳng định: “Chúng tôi ở đây để bảo vệ thế giới”.
“Giáo trình cho hacker”
Tác giả của cuốn sách đặc biệt này - “Hiểm họa hacker: Hiểu biết và phòng chống” là Mikhaylov Dmitry, Giám đốc công nghệ công ty Pado NanoTech. Ông là một chuyên gia, một hacker mũ trắng được biết đến nhiều trong giới an ninh mạng của Nga.
Nội dung cuốn sách đề cập đến những phương pháp, cách thức mà tội phạm mạng thường sử dụng để tấn công vào các hệ thống tự động hóa trong công nghiệp, tổ chức kinh doanh, tiện ích công cộng và sinh hoạt cá nhân. Đồng thời cũng khuyến cáo và đưa ra biện pháp phòng chống.
Với một loạt bài viết đi sâu vào kỹ thuật, vừa là câu chuyện thú vị cũng vừa là bài giảng bổ ích, từ tình huống đời thường cho đến sự kiện tầm cỡ, tác giả đã thực sự gây ấn tượng cho người đọc.
Bản thân là một chuyên gia an ninh mạng của Nga nên tác giả rất hiểu được giá trị và tác động của nội dung đề cập trong cuốn sách.“Một mặt, người chịu trách nhiệm về an ninh hệ thống có thể hiểu được ý tưởng chung về việc tạo ra và sử dụng CNTT vào mục đích tấn công, nhưng mặt khác, cuốn sách không trở thành bản hướng dẫn cho tội phạm mạng tiềm năng…”.
Với tình hình cấp bách về an ninh – bảo mật thông tin hiện nay ở Việt Nam, thì việc cập nhật những kiến thức từ cuốn sách này không chỉ cần thiết cho người quản lý và kỹ thuật nói chung, đặc biệt trong lĩnh vực CNTT và an ninh mạng nói riêng, mà còn cho cả đông đảo những người yêu thích, đam mê công nghệ.
Sách nguyên bản tiếng Nga và được dịch sang tiếng Việt.

Việt Nam cần tập trung bảo vệ cơ sở hạ tầng thiết yếu
Đề cập đến việc Việt Nam nên tập trung, ưu tiên vào những vấn đề gì nhằm hạn chế rủi ro, thiệt hại khi xảy ra tấn công mạng, Giám đốc công nghệ công ty Pado NanoTech, ông Mikhaylov Dmitry chia sẻ: “Việt Nam đang tích cực phát triển, ngày càng có nhiều hệ thống tự động hơn, dựa trên nền tảng công nghệ tiên tiến. Nhờ đó, việc vận hành các hoạt động trong kinh doanh, quản lý điều hành và sản xuất trở nên hiệu quả hơn. Tuy nhiên, những hệ thống dựa trên CNTT-TT như vậy lại tiềm tàng nhiều rủi ro, có thể bị tấn công bởi kẻ thù tiềm năng. Điều gì sẽ xảy ra với nền kinh tế nếu các nhà máy điện, nhà máy lọc dầu, cảng hàng không, hệ thống ngân hàng… ngưng hoạt động?  Điều gì sẽ xảy ra với sự hoảng loạn của dân chúng? Đất nước sẽ mất niềm tin của nhà đầu tư. Chính vì vậy, cần phải tập trung bảo vệ những cơ sở hạ tầng thiết yếu, nhất là ngành khai thác - chế biến dầu mỏ và ngành điện, là những nơi dễ bị tổn thương nhất trước các cuộc tấn công mạng”.
Cũng trên quan điểm này, chuyên gia bảo mật từ Kaspersky Lab cho biết rằng Việt Nam đang có tốc độ phát triển rất nhanh. Điều này đồng nghĩa với việc các tổ chức cũng sẽ đương đầu với nhiều rủi ro hơn. Và chuyên gia Kaspersky Lab cũng khuyến nghị để các tổ chức có thể thiết lập một môi trường an toàn hơn dù nguồn lực hạn chế. Cụ thể là:
- Cần có một chiến lược rõ ràng về an toàn thông tin, đi đôi với chiến lược đó là các công cụ hoặc giải pháp phù hợp. Kaspersky Lab hiện nay, đang tư vấn chiến lược gồm bốn cấp độ là: Phòng ngừa – Ngăn chặn – Phát hiện – Xử lý. Đây là chiến lược tổng quát và tương đối đầy đủ nhằm đương đầu với tội phạm mạng hiện nay.
- Ý thức của toàn bộ nhân viên về bảo mật là vô cùng quan trọng. Nhiều cuộc tấn công thành công là do nhắm vào những nhân viên không có nhiều kiến thức về an toàn thông tin. Kẻ xấu có thể lừa đảo họ bằng email có đính kèm các tập tin thực thi để qua mắt các lớp bảo mật đầu tiên. Do đó, đầu tư vào việc đào tạo và nâng cao ý thức của nhân viên trong tổ chức về hành vi và cách thức xử lý là việc các tổ chức hoàn toàn có thể làm được.
Cùng đó, Kaspersky Lab cũng giới thiệu các giải pháp bảo mật dành cho các tổ chức từ quy mô vừa và nhỏ cho đến các doanh nghiệp lớn, bao gồm:
- Bảo mật thiết bị đầu cuối (với 04 cấp độ Core, Select, Advanced & Total)
- Bảo mật cho Mail-Server; Internet Gate-way; Storage và Collaboration
- Bảo mật ảo hóa
- Bảo mật cho các hệ thống Embedded (như ATM, máy POS…)
Và kèm theo đó là cung cấp các dịch vụ bảo mật như: huấn luyện chuyên viên bảo mật; báo cáo chi tiết về mã độc, về APT, về Botnet; điều tra đối với một nguy cơ cụ thể và kiểm tra và đánh giá bảo mật.
Trong khi đó, Pado NanoTech có một cách tiếp cập khác: phát triển sản phẩm, giải pháp bảo mật ngay tại Việt Nam, sử dụng nguồn nhân lực địa phương. “Chúng tôi dựa vào trường phái, kiến thức và công nghệ từ Nga, nhưng các sản phẩm của chúng tôi là mở. Hiện nay Pado NanoTech đã làm việc với các trường đại học của Việt Nam! Bởi quan trọng là để có được nguồn nhân lực địa phương và họ sẽ tích cực phát triển các sản phẩm của chúng tôi cho khách hàng tại Việt Nam, cũng như khách hàng có thể làm việc trực tiếp với các chuyên gia Việt”, ông Mikhaylov Dmitry, Giám đốc công nghệ của Pado NanoTech cho biết. “Chúng tôi muốn tạo ra cái nhìn mới để thay đổi thị trường, chúng tôi mong muốn Việt Nam trở nên mạnh hơn và độc lập hơn”, ông nói.
Vũ khí số trong cuộc chiến mạng
Kịch bản một cuộc “Tấn công mạng” dưới góc nhìn của các chuyên gia an ninh mạng Nga.
Thế giới bây giờ đã thay đổi. Tấn công một quốc gia khác bằng vũ khí thông thường hay vũ khí hạt nhân là không đơn giản, sẽ có ngay sự đáp trả tương xứng, hoặc các biện pháp trừng phạt cứng rắn của quốc tế.
Còn nếu “ra đòn” bằng vũ khí mạng thì sao? Không dễ gì để chứng minh ai đã “đâm bạn”, và hậu quả của những tác động này cũng không như một cuộc chiến thông thường?. Không đổ máu, không tàn phá… chỉ dừng lại ở việc các nhà máy, hệ thống điều khiển ngưng trệ, mất điện, liên lạc bị cắt… và chứng khoán lao dốc. Bắt đầu sự hoảng loạn! Chính phủ bị đe dọa... Và không thể biết ai đang gây ra.
Tất cả các cuộc tấn công mạng đều bắt nguồn từ việc tội phạm mạng cố gắng lây nhiễm vào tổ chức mã độc làm tiền đề cho việc nâng cấp khả năng xâm nhập của chúng và khai thác thông tin. Sau đây là các cách thức thường được tội phạm sử dụng.
Website: Tội phạm mạng ngày nay có xu hướng tìm kiếm các trang web không an toàn và chèn mã độc vào đó. Khi người dùng truy cập trang, mã độc có thể được chuyển tiếp tự động, lặng lẽ xâm nhập vào máy tính của họ cùng với nội dung mà họ tìm kiếm. Mã độc được kích hoạt và kết nối đến một trang được kiểm soát bởi tội phạm. Nạn nhân bị lây nhiễm nếu máy tính của họ không được bảo vệ tốt hoặc không được vá lỗi kịp thời.
Mạng xã hội. Một số trang mạng xã hội tạo ra nhiều cơ hội cho tội phạm mạng, chúng sử dụng mạng xã hội để tấn công theo nhiều cách khác nhau:
•  Đầu tiên, tấn công một số tài khoản để phát tán các tin nhắn chứa mã độc.
•  Sau đó, phát triển các ứng dụng giả để thu thập dữ liệu của nạn nhân (sau đó dữ liệu này có thể được rao bán cho tội phạm khác); hoặc cài đặt mã độc (ví dụ các chương trình diệt virus giả).
•  Tiếp theo, tạo ra các tài khoản giả để kết bạn, thu thập thông tin cá nhân và bán cho các nhà quảng cáo.
Tội phạm mạng rao bán thông tin mà người dùng mạng xã hội dễ dàng chia sẻ cho những người mà họ tin cậy.  
Email. Khoảng 3% email có chứa mã độc ở dạng tập tin đính kèm hoặc liên kết. Email được sử dụng trong tấn công có mục tiêu, như là một cách để kích hoạt một cuộc xâm nhập vào các tổ chức. Email có thể được gửi đến một người cụ thể trong tổ chức, với hy vọng họ sẽ mở tập tin đính kèm hoặc nhấn vào liên kết để bắt đầu một quy trình cho phép kẻ tấn công xâm nhập vào hệ thống. Cách tiếp cận này được biết đến nhiều qua cụm từ “spear-phising”, “social engineering”, hay “tấn công phi kỹ thuật”  (lừa đảo).
USB/Thiết bị rời. Các thiết bị lưu trữ là phương tiện lây nhiễm lý tưởng của mã độc trong một tổ chức. Tội phạm mạng thường khiến cho mã độc được chèn vào giữa một máy tính không an toàn kết nối đến Internet và một mạng an toàn. Thông thường, mã độc sử dụng lỗ hổng trong USB (ví dụ sử dụng Autorun và  lỗ hổng LNK) để khởi chạy các đoạn mã tự động khi thiết bị được kết nối vào máy tính.
 Một khi xâm nhập thành công vào mạng của tổ chức, tội phạm mạng sẽ truy tìm các máy tính có quyền quản trị cao, từ đó dành thời gian nghiên cứu các hoạt động của tổ chức một cách bí mật. Theo ghi nhận, có những cuộc xâm nhập kéo dài đến hơn 200 ngày trước khi tội phạm tiến hành tấn công vào một điểm yếu nào đó. Mục tiêu tấn công có thể là lấy cắp tiền (như vụ Cabarnak), dữ liệu quan trọng, hoặc chiếm quyền điểu khiển máy chủ để rao bán trên chợ đen (xDedic). Và cũng có khi mục tiêu tấn công là phá hỏng cơ sở vật chất của các nhà máy trọng điểm (như vụ Stuxnet), hoặc đánh sập các nguồn cung cấp năng lượng gây tổn thất cho một khu vực nào đó (đã xảy ra với Ucraine).  

PC World VN 01/2017

 

Thứ Bảy, 7 tháng 1, 2017

Data Binding

1. Binding a control to a single item.
A data binding consists of a target and a source. The target of a binding typically is a control property. The target must be aDependencyProperty.
The following shows an example of binding a control to a single item. The target is the Text property of a TextBox control. The source is a simple music Recording class.
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <TextBox VerticalAlignment="Top" IsReadOnly="True" Margin="5"
       TextWrapping="Wrap" Height="120" Width="400"
       Text="{Binding}" x:Name="textBox1" />
</Grid>

// Constructor
public MainPage()
{
   InitializeComponent();
   // Set the data context to a new Recording.
   textBox1.DataContext = new Recording("Chris Sells", "Chris Sells Live",
      new DateTime(2008, 2, 5));
}

// A simple business object
public class Recording
{
   public Recording() { }
   public Recording(string artistName, string cdName, DateTime release)
   {
      Artist = artistName;
      Name = cdName;
      ReleaseDate = release;
   }
   public string Artist { get; set; }
   public string Name { get; set; }
   public DateTime ReleaseDate { get; set; }
   // Override the ToString method.
   public override string ToString()
   {
      return Name + " by " + Artist + ", Released: " + ReleaseDate.ToShortDateString();
   }
}

When you run the app, it will look something like this:
Binding To Controls
To display a music recording in a TextBox, the control's Text property is set to a Binding by using a markup extension. In this example, the binding mode is OneWay by default, which means that data are retrieved from the source, but changes are not propagated back to the source.
The Recording class has three public properties and a ToString method override. The properties are Artist, Name, and ReleaseDate. TheToString method is significant, because if no formatting is specified, the ToString method is called on a bound object for display purposes. The Source property for the binding is not set directly; instead, the DataContext property for the TextBox control is set to a new Recording object.
2. Binding a control to a collection of objects
The previous example demonstrates the syntax you use to bind data to controls, but it isn't very realistic. A more common scenario is to bind to a collection of business objects. The generic ObservableCollection<T> class is a good collection choice for data binding, because it implements the INotifyPropertyChanged and INotifyCollectionChanged interfaces. These interfaces provide change notification to bound controls when an item in the list changes or a property of the list itself changes. If you want your bound controls to update with changes to properties of objects in the collection, the business object should also implement INotifyPropertyChanged.
The following example binds a collection of music Recording objects to a ListBox.
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
   <ListBox x:Name="ListBox1" ItemsSource="{Binding}"
      Height="200" Width="400"/>
</Grid>
public ObservableCollection<Recording> MyMusic = new ObservableCollection<Recording>();

public MainPage()
{
   InitializeComponent();
   // Add items to the collection.
   MyMusic.Add(new Recording("Chris Sells", "Chris Sells Live",
   new DateTime(2008, 2, 5)));
   MyMusic.Add(new Recording("Luka Abrus",
      "The Road to Redmond", new DateTime(2007, 4, 3)));
   MyMusic.Add(new Recording("Jim Hance",
      "The Best of Jim Hance", new DateTime(2007, 2, 6)));
   // Set the data context for the list box.
   ListBox1.DataContext = MyMusic;
}

Binding to controls collection
To display the music recordings in the ListBox, the control's ItemsSource property is set to a Binding, and the DataContext property for the ListBox control is set to the collection of Recording objects, which provides the source for the binding. A ListBoxItem is created for each item in the collection. ToString is automatically called on each Recording object to display it in the list box item.
You can display items in a list by using the item's ToString method. However, a more common scenario is to provide a customized display of data bound items by using a DataTemplate which enables you to customize how list items are displayed in a control. Typically, you set the data template by using the ContentTemplate property of a content control or the ItemTemplate property of an items control.
The following example shows the same list of recordings bound to a list box by using a data template. A list box is an ItemsControl, which means that you establish a data template for each item by setting its ItemTemplate property to a data template.
<ListBox x:Name="ListBox1" Margin="5"
   Width="450" Height="200" HorizontalAlignment="Left"
   ItemsSource="{Binding}" >
   <ListBox.ItemTemplate>
      <DataTemplate>
         <StackPanel Orientation="Horizontal" Margin="2">
            <TextBlock Text="Artist:" Margin="2" />
            <TextBlock Text="{Binding Artist}" Margin="2" />
            <TextBlock Text="CD:" Margin="10,2,0,2" />
            <TextBlock Text="{Binding Name}" Margin="2" />
         </StackPanel>
      </DataTemplate>
   </ListBox.ItemTemplate>
</ListBox>
Binding to control data template
In the XAML, you can see the data template definition. The data template contains a StackPanel with four TextBlock controls. The stack panel has a horizontal orientation so that the four text block controls appear side by side. Two of the TextBlock controls are bound to theArtist and Name properties of a Recording object. The other two TextBlock controls display static text. For each bound item, the binding provides the path to the property on the Recording object. As in the previous example, this binding relies on the data context to be set to the list of recordings.
To display the details of an item when it is selected from a collection, you have to create the appropriate UI and bind the UI to the data that you want it to display. Additionally, you must use a CollectionViewSource as the data context to enable the details view to bind to the current item.
The following example shows the same list of recordings, but this time the list is the data source of a CollectionViewSource instance. The data context of the layout root is set to the collection view source, and the list box and details view inherit the data context from the layout root. This enables the list box to display the same list of items while the details view shows information about the current item.
<!--The UI for the details view-->
<StackPanel x:Name="RecordingDetails">
   <TextBlock FontWeight="Bold" Text="{Binding Artist}" Margin="5,0,0,0"/>
   <TextBlock FontStyle="Italic" Text="{Binding Name}" Margin="5,0,0,0"/>
   <TextBlock Text="{Binding ReleaseDate}" Margin="5,0,0,0" />
</StackPanel>
//ListBox1.DataContext = MyMusic;
LayoutRoot.DataContext = new CollectionViewSource { Source = MyMusic };
Binding to control details
In this example, a StackPanel is added that contains three text blocks to display the recording details. The Text property of each text block is bound to a property on the Recording object.
5. CODE SAU KHI HOÀN THÀNH 
* XAML
<Page
    x:Class="Binding_a_collection_of_objects.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:Binding_a_collection_of_objects"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">
   
    <!--ContentPanel - place content here-->
    <StackPanel Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <ListBox x:Name="ListBox1" Margin="5"  Width="450" Height="200" 
               HorizontalAlignment="Left"  ItemsSource="{Binding}" >
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal" Margin="2">
                        <TextBlock Text="Artist:" Margin="2" />
                        <TextBlock Text="{Binding Artist}" Margin="2" />
                        <TextBlock Text="CD:" Margin="10,2,0,2" />
                        <TextBlock Text="{Binding Name}" Margin="2" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
        <!--The UI for the details view-->
        <StackPanel x:Name="RecordingDetails">
            <TextBlock FontWeight="Bold" Text="{Binding Artist}" Margin="5,0,0,0" FontSize="30" Foreground="Red"/>
            <TextBlock FontStyle="Italic" Text="{Binding Name}" Margin="5,0,0,0" FontSize="20"/>
            <TextBlock Text="{Binding ReleaseDate}" FontSize="20" />
        </StackPanel>
    </StackPanel>
</Page>
 
* CODE C# : 
class Recording
    {
        public Recording() { }
        public Recording(string artistName, string cdName, DateTime release)
        {
            Artist = artistName;
            Name = cdName;
            ReleaseDate = release;
        }
        public string Artist { get; set; }
        public string Name { get; set; }
        public DateTime ReleaseDate { get; set; }
        // Override the ToString method.
        public override string ToString()
        {
            return Name + " by " + Artist + ", Released: " + ReleaseDate.ToString("d");
        }
    } 
 * CODE : MainPage.xaml.cs
 
 * Video Output