Các lỗ hổng nghiêm trọng trong bộ điều khiển logic lập trình (PLC) của Siemens S7 đã được phát hiện bởi các nhà nghiên cứu an ninh mạng tại Đại học Tel Aviv và Viện Công nghệ Technion.
Giáo sư Avishai Wool và sinh viên M.Sc Uriel Malin của Trường Kỹ thuật Điện TAU đã làm việc cùng với Giáo sư Eli Biham và Tiến sĩ Sara Bitan của Technion để phá vỡ các chức năng của PLC và giành quyền kiểm soát các hoạt động của nó.
Máy trạm kỹ thuật giả mạo của các nhà khoa học đặt ra cái gọi là trạm kỹ thuật TIA – TIA Portal (Cổng thông tin tự động tích hợp hoàn toàn) giao tiếp với PLC Simatic S7-1500 điều khiển hệ thống công nghiệp.
Nhà máy đã có thể khởi động và dừng PLC từ xa thông qua kiến trúc truyền thông được chỉ huy của Siemens, có khả năng tàn phá quá trình công nghiệp, Giáo sư Wool giải thích. Sau đó, chúng tôi đã có thể giành quyền điều khiển từ TIA và lén lút tải xuống các lệnh logic lừa đảo cho PLC S7-1500.
Các nhà nghiên cứu đã giấu mã lừa đảo để một kỹ sư kỹ thuật không thể nhìn thấy nó. Nếu kỹ sư kiểm tra mã từ PLC, anh ta hoặc cô ta sẽ chỉ thấy mã nguồn PLC hợp pháp, không biết mã độc đang chạy trong nền và phát lệnh giả mạo cho PLC.
Phát hiện của họ cho thấy một kẻ tấn công tinh vi có thể lạm dụng thế hệ bộ điều khiển công nghiệp mới nhất của Siemens (S7-1500) được chế tạo với các tính năng bảo mật tiên tiến hơn và các giao thức liên lạc được cho là an toàn hơn.
Sửa chữa và giảm nhẹ lỗi
Kẽ hở chính trong bắt tay mật mã S7 là TIA không được xác thực với PLC: chỉ PLC được xác thực với TIA. Về cơ bản, điều này cho phép chúng ta tạo ra một trạm kỹ thuật giả mạo (một khi bức màn che khuất được gỡ bỏ khỏi giao thức). Khoảng cách này có thể được giải quyết bằng các mật mã.
Ví dụ: bằng cách mỗi trường hợp TIA sử dụng khóa riêng của mình, khóa chung được chia sẻ và giữ lại bởi PLC. Một cách khác là giới thiệu chế độ ‘ghép nối’, trong đó PLC và TIA thiết lập một bí mật được chia sẻ lâu dài trong phiên đầu tiên. Dù bằng cách nào, PLC phải từ chối giao tiếp với bất kỳ thiết bị nào tự xưng là TIA và không phải là TIA đã được xác thực trước đó.
Một kẽ hở thứ hai là tất cả các PLC có cùng kiểu máy và phiên bản firmware đều có chung cặp khóa công khai. Kẽ hở này có thể được sử dụng theo hai cách. Các nhà nghiên cứu đã sử dụng nó theo cách chung để tiến hành các cuộc tấn công mạo danh trên tất cả các PLC S7-1500, trên thực tế là tất cả các PLC sử dụng cùng một khóa. Tuy nhiên, chúng tôi đã không trích xuất khóa riêng từ các PLC. Nếu khóa riêng được trích xuất từ một PLC của một phiên bản cụ thể, thì các cuộc tấn công mạnh mẽ hơn, cụ thể là toàn bộ các đối tượng trong các cuộc tấn công trung gian với chiếm quyền điều khiển on-the-fly và tấn công mạo danh PLC chống lại trạm TIA (không có PLC hợp lệ) đều hoàn toàn có thể.
Theo các thực tiễn tốt nhất về công bố trách nhiệm, các kết quả nghiên cứu đã được chia sẻ với Siemens trước buổi thuyết trình Black Hat USA 2019 theo lịch trình .
Siemens vẫn chưa phát hành một lời khuyên bảo mật chỉ ra các bản sửa lỗi phần mềm. Trong khi đó, các tổ chức triển khai các PLC dễ bị ảnh hưởng có thể, như Siemens thường khuyên, bảo vệ quyền truy cập vào chúng bằng cách kích hoạt cơ chế kiểm soát truy cập được bảo vệ bằng mật khẩu. Họ cũng có thể đảm bảo rằng các PLC không được kết nối với Internet hoặc đặt chúng vào tường lửa.
Tiến sĩ Bitan lưu ý rằng cuộc tấn công nhấn mạnh sự cần thiết phải đầu tư của cả nhà sản xuất và khách hàng vào sự an toàn của các hệ thống điều khiển công nghiệp. Cuộc tấn công cho thấy việc bảo vệ các hệ thống điều khiển công nghiệp là một nhiệm vụ khó khăn và thách thức hơn so với việc bảo vệ các hệ thống thông tin, cô đã kết luận.
Cảnh báo trước đây về sự bảo mật của PLC Siemens
Trước đây Siemens đã ban hành một cảnh báo an ninh về của công ty Simatic S7-1500 bộ điều khiển logic khả trình (PLC) sau khi nghiên cứu bảo mật tại Technologies tích cực báo cáo “lỗ hổng nghiêm trọng” mà tiếp xúc với quá trình công nghiệp để từ chối-of-dịch vụ tấn công (DoS).
Để khôi phục chức năng PLC, chủ sở hữu phải tự chuyển thiết bị sang chế độ hoạt động bình thường.Quan trọng hơn, khai thác thành công không yêu cầu đặc quyền hệ thống hoặc tương tác người dùng, điều này làm cho rủi ro tổng thể và mức độ phơi nhiễm cao hơn. Siemens đã đưa ra một lời khuyên bảo mật , khuyến nghị các tổ chức nên cập nhật firmware Software của bất kỳ PLC Simatic S7-1500 nào lên phiên bản 2.5 trở lên . Nếu các bản cập nhật không thể được cài đặt do hạn chế phần cứng, Siemens cho biết các tổ chức nên bảo vệ quyền truy cập mạng vào các cổng TCP 80 và 443 của các thiết bị bị ảnh hưởng.