Có thể “hack” một chuyến bay hay không?

Trương Khánh Hợp| 07/08/2018 16:49
Theo dõi ICTVietnam trên

Không có gì chạy phần mềm (và hầu như là tất cả mọi thiết bị ngày này) là không thể hack được. Hãy bắt đầu với một vài ví dụ liên quan đến máy bay.

iStock Hacker

Hình minh họa (Nguồn: travelweekly-asia.com)

Vào năm 2015, nhà nghiên cứu Chris Roberts đã báo cáo rằng chiếc máy bay anh ta đang đi bị chệch hướng. Vào cuối năm 2017, Bộ An ninh Nội địa Hoa Kỳ đã tấn công một chiếc Boeing 737 từ xa.

Bất kỳ triển khai bảo mật nào có thể bị phá, về mặt lý thuyết, ngay cả khi chúng ta chưa thấy sự xâm phạm xảy ra trong môi trường được kiểm soát hoặc trong thế giới thực. Bất kỳ ai tuyên bố về sự bảo mật hoàn hảo đều là nói dối.

Quản lý rủi ro

Trước khi đi xe máy bay, hoặc xe hơi hoặc tàu lượn siêu tốc, bạn tự hỏi "Có an toàn không?" Đây không phải là câu hỏi đúng. Câu hỏi đúng là "Nó an toàn đến mức nào?" Điều bạn thực sự muốn biết là mức độ rủi ro của bạn. Nếu rủi ro thấp và chấp nhận được, bạn sẽ tiếp tục hành trình.

Thật không may, rất khó để định lượng rủi ro. Các công ty bảo hiểm cố gắng làm điều này dựa trên số liệu thống kê. Họ thống kê khả năng bạn có thể chết vì cá mập cắn, sét đánh, và thậm chí bị một máy bán hàng đè chết.

Trong trường hợp không có dữ liệu thống kê được nghiên cứu kỹ lưỡng, một cách để đo lường rủi ro là lưu ý những thử nghiệm nào đã được thực hiện. Ví dụ, ô tô được đánh giá an toàn dựa trên cách chúng thể hiện trong các cuộc kiểm tra va chạm được kiểm soát cẩn thận.

Trong phần mềm, các lỗ hổng phát sinh khi có lỗi hoặc lỗ hổng phát sinh trong phần mềm. Giảm thiểu rủi ro trong phần mềm là tất cả các công việc liên quan đến việc định vị các lỗ hổng và sửa chúng. Sửa chúng là phần dễ dàng. Thách thức thực sự là xác định các lỗ hổng tại thời điểm ban đầu.

Lỗ hổng phần mềm

Lỗ hổng phần mềm có ba loại:

Các lỗ hổng thiết kế là các lựa chọn kém khi phần mềm được lên ý tưởng. Ví dụ, không yêu cầu xác thực cho các hoạt động nhạy cảm là một lỗ hổng thiết kế.

Lỗ hổng cấu hình là những sai lầm được thực hiện trong việc lắp ráp phần mềm. Chúng có thể bao gồm thông tin đăng nhập được mã hóa cứng, thông tin đăng nhập mặc định hoặc thành phần phần mềm dễ bị tấn công.

Lỗ hổng về mã là những lỗi trong mã nguồn.

Phần mềm giống như một đứa trẻ

Ngành công nghiệp phần mềm chỉ mới 50 tuổi. Nó chỉ mới bắt đầu phát triển các loại quy định cần thiết để tạo ra sản phẩm với mức độ mạnh mẽ, bảo mật và an toàn cao. Bất kỳ ai có kết nối internet và máy tính đều có thể tạo phần mềm, nhưng việc xây dựng phần mềm tốt đòi hỏi một quy trình tốt.

Chu kỳ phát triển phần mềm an toàn (SSDLC - secure software development life cycle) là chìa khóa để tạo ra phần mềm với mức độ rủi ro có thể chấp nhận được. Bảo mật được xem xét ở mọi giai đoạn của chu kỳ phát triển phần mềm an toàn, từ thiết kế và các yêu cầu về mặt kiến ​​trúc, triển khai và bảo trì.

Ngoài ra, một loạt các thử nghiệm, nhiều trong số đó có thể được tự động, được thực hiện trong chu kỳ phát triển phần mềm an toàn.

Các chức năng được thử nghiệm nhằm đảm bảo rằng phần mềm thực hiện như dự kiến trong các trường hợp bình thường.

Phân tích tĩnh xem xét thông qua mã nguồn để định vị các lỗ hổng.

Kiểm tra Fuzz, hoặc kiểm tra tiêu cực, tấn công phần mềm với các lệnh đầu vào có chủ ý không đúng định dạng để đảm bảo nó có thể đáp ứng một cách thích hợp trong các điều kiện bất lợi hoặc khi bị tấn công.

Phân tích thành phần phần mềm (SCA- Software composition analysis) giúp quản lý chuỗi cung ứng phần mềm để giảm thiểu các lỗ hổng.

Trong khi lỗ hổng thiết kế và cấu hình phải được định vị bởi hầu hết các phương tiện của con người, lỗ hổng về mã thường có thể được xác định bằng các công cụ kiểm tra tự động.

Sửa lỗi để có thể bảo vệ con người

Đối với bất cứ ai quen với một phong cách phát triển phần mềm nhanh và lỏng lẻo, một chu kỳ phát triển phần mềm an toàn có vẻ tốn kém về mặt thời gian và tiền bạc.

Nhưng nếu suy xét về các vấn đề có thể xảy ra. Phần mềm của bạn có thể xử lý như thế nào? Nó có quản lý được tiền bạc hay không? Uy tín của doanh nghiệp? Sức khỏe của con người? Những chi phí phải bỏ ra nếu có vấn đề phát sinh?

Phần mềm là vật bất ly thân của loài người hiện đại; nó phải mạnh mẽ khi đối mặt với những điều kiện bất ngờ và tấn công có chủ ý.

Nếu bạn mua phần mềm, hãy đặt câu hỏi

Nếu bạn không tạo ra phần mềm của riêng bạn, nhưng phải mua những phần mềm mà bạn cần, hãy đặt câu hỏi hay cho nhà cung cấp của bạn.

Mọi phần mềm bạn sử dụng đều làm tăng nguy cơ của bạn. Để giảm thiểu rủi ro đó, hãy đảm bảo rằng các nhà cung cấp của bạn đang sử dụng chu kỳ phát triển phần mềm an toàn.

Hỏi họ về điều đó. Hỏi những loại thử nghiệm họ đang thực nghiệm và yêu cầu họ chia sẻ kết quả.

Tin tốt

Tin tốt lành là trạng thái của phần mềm đang được cải thiện mỗi ngày. Nhận thức về an ninh và an toàn phần mềm đang mở rộng, kể cả trong số các tổ chức mua phần mềm cũng như các tổ chức xây dựng phần mềm.

Kỹ nghệ phần mềm liên tục phát triển khi chúng ta cùng nhau học các bài học của quá khứ và áp dụng chúng để cải thiện tương lai.

Máy bay là một phần của tương lai và hàng triệu người sử dụng các chuyến bay mỗi ngày, điều quan trọng chính là việc là giữ cho phần mềm di chuyển mọi người và sản phẩm trên khắp thế giới được cập nhật các biện pháp bảo mật phần mềm mới nhất.

Bằng cách đó, khách hàng của các hãng hàng không có thể yên tâm trong khi di chuyển với độ cao 30.000 feet.

Nổi bật Tạp chí Thông tin & Truyền thông
Đừng bỏ lỡ
Có thể “hack” một chuyến bay hay không?
POWERED BY ONECMS - A PRODUCT OF NEKO