chương trình khó nhất

Từ người dịch: Tôi tìm thấy một câu hỏi trên Quora: Chương trình hoặc mã nào có thể được gọi là phức tạp nhất từng được viết? Câu trả lời của một trong những người tham gia rất hay và khá xứng đáng cho một bài báo.

Buộc chặt dây an toàn của bạn.

Chương trình phức tạp nhất trong lịch sử được viết bởi một nhóm người mà chúng ta không biết tên.

Chương trình này là một sâu máy tính. Con sâu này dường như được viết từ năm 2005 đến năm 2010. Bởi vì con sâu này rất phức tạp nên tôi chỉ có thể mô tả chung về chức năng của nó.

Con sâu xuất hiện đầu tiên trên ổ USB. Ai đó có thể tìm thấy một chiếc đĩa nằm trên mặt đất, nhận nó qua đường bưu điện và quan tâm đến nội dung của nó. Ngay khi đĩa được đưa vào PC Windows mà người dùng không hề hay biết, sâu này sẽ tự động khởi chạy và tự sao chép vào máy tính đó. Có ít nhất ba cách để anh có thể tự mình phóng lên. Nếu cái này không hiệu quả, anh ấy thử cái khác. Ít nhất hai trong số các phương pháp khởi chạy này là hoàn toàn mới và cả hai đều khai thác hai lỗi bí mật, độc lập trong Windows mà không ai biết đến cho đến khi sâu này xuất hiện.

Ngay khi sâu chạy trên máy tính, nó sẽ cố gắng giành quyền quản trị viên. Anh ấy không đặc biệt bận tâm với phần mềm chống vi-rút được cài đặt - anh ấy có thể bỏ qua hầu hết các chương trình như vậy. Sau đó, tùy thuộc vào phiên bản Windows đang chạy, sâu sẽ thử một trong hai phương pháp chưa được biết trước đây để giành quyền quản trị viên trên máy tính. Như trước đây, không ai biết về những lỗ hổng ẩn này trước khi sâu này xuất hiện.

Sau đó, sâu có thể ẩn dấu vết về sự hiện diện của nó ở sâu trong hệ điều hành, do đó không chương trình chống vi-rút nào có thể phát hiện ra nó. Nó ẩn náu tốt đến mức ngay cả khi bạn nhìn vào đĩa ở nơi đáng lẽ có con sâu này, bạn sẽ không thấy gì cả. Con sâu này ẩn náu tốt đến mức nó có thể lang thang trên Internet suốt một năm mà không có bất kỳ công ty bảo mật nào thậm chí còn không nhận ra sự thật về sự tồn tại của nó.

Sau đó, sâu sẽ kiểm tra xem liệu nó có thể truy cập Internet hay không. Nếu có thể, anh ấy sẽ cố gắng truy cập các trang web www.mypremierfutbol.com hoặc www.todaysfutbol.com. Vào thời điểm đó các máy chủ này là Malaysia và Đan Mạch. Nó mở một kênh liên lạc được mã hóa và thông báo cho các máy chủ này rằng máy tính mới đã được chiếm quyền thành công. Tại sao sâu tự động cập nhật lên phiên bản mới nhất?

Sau đó sâu sẽ tự sao chép vào bất kỳ thiết bị USB nào khác mà bạn cắm vào. Nó thực hiện điều này bằng cách cài đặt một trình điều khiển đĩa lừa đảo được thiết kế gọn gàng. Trình điều khiển này chứa chữ ký số Realtek. Điều này có nghĩa là các tác giả của sâu bằng cách nào đó đã có thể đột nhập vào vị trí an toàn nhất của một công ty lớn của Đài Loan và đánh cắp chìa khóa bí mật nhất của công ty mà công ty không hề hay biết.

Sau đó, tác giả của trình điều khiển này bắt đầu ký nó bằng khóa riêng của JMicron, một công ty lớn khác của Đài Loan. Và một lần nữa, các tác giả đã có thể đột nhập vào nơi được bảo vệ tốt nhất trong điều này công ty và đánh cắp chiếc chìa khóa bí mật nhất mà anh ta sở hữu cái này công ty mà họ không biết gì về nó.

Con sâu mà chúng ta đang nói tới rất phức tạp. Và chúng tôi thậm chí vẫn còn không bắt đầu.

Sau đó, sâu bắt đầu khai thác hai lỗi được phát hiện gần đây trong Windows. Một lỗi liên quan đến máy in mạng và lỗi còn lại liên quan đến tệp mạng. Sâu sử dụng những lỗi này để tự cài đặt qua mạng cục bộ trên tất cả các máy tính khác trong văn phòng.

Sau đó, sâu bắt đầu tìm kiếm phần mềm cụ thể do Siemens phát triển để tự động hóa các máy công nghiệp lớn. Sau khi tìm thấy nó, anh ấy (bạn đoán vậy) sử dụng một lỗi khác chưa được biết đến trước đây để sao chép logic lập trình của chính bộ điều khiển công nghiệp. Một khi sâu đã xâm nhập vào máy tính đó, nó sẽ ở đó mãi mãi. Việc thay thế hoặc “khử trùng” máy tính của bạn sẽ không loại bỏ được nó.

Con sâu này tìm kiếm các động cơ điện công nghiệp gắn liền từ hai công ty cụ thể. Một trong những công ty này ở Iran và công ty kia ở Phần Lan. Động cơ mà anh ấy đang tìm kiếm được gọi là "bộ truyền động tần số thay đổi". Chúng được sử dụng để điều khiển máy ly tâm công nghiệp. Máy ly tâm có thể được sử dụng để làm sạch nhiều nguyên tố hóa học.

Ví dụ, uranium.

Bây giờ sâu có toàn quyền kiểm soát các máy ly tâm, nó có thể làm bất cứ điều gì nó muốn với chúng. Anh ấy có thể tắt tất cả chúng. Anh ta có thể tiêu diệt tất cả chúng ngay lập tức - chỉ cần quay chúng với tốc độ tối đa cho đến khi chúng bay ra như bom, giết chết tất cả những người tình cờ ở gần đó.

Nhưng không. Cái này phức tạp sâu. Và con sâu có kế hoạch khác.

Một khi nó đã thu được tất cả các máy ly tâm trong nhà máy của bạn... con sâu chỉ đơn giản là đi ngủ.

Ngày trôi qua. Hoặc vài tuần. Hoặc giây.

Khi con sâu quyết định rằng thời điểm đã đến, nó sẽ nhanh chóng thức dậy. Anh ta chọn ngẫu nhiên một số máy ly tâm khi chúng tinh chế uranium. Con sâu chặn chúng lại để nếu ai đó nhận thấy có điều gì đó lạ thì sẽ không thể tắt các máy ly tâm này.

Và rồi, từng chút một, con sâu bắt đầu quay những chiếc máy ly tâm này... một chút sai. Không được nhiều. Chỉ bạn biết, một chút quá nhanh. Hoặc một chút quá chậm. Chỉ một hơi thông số an toàn bên ngoài.

Đồng thời, nó làm tăng áp suất khí trong các máy ly tâm này. Khí này được gọi là UF6. Một điều rất có hại. Con sâu làm thay đổi áp suất của khí này một chút ngoài giới hạn an toàn. Chính xác là nếu khí lọt vào máy ly tâm trong quá trình vận hành thì có khả năng nhỏ anh ấy sẽ biến thành đá.

Máy ly tâm không thích chạy quá nhanh hoặc quá chậm. Và họ cũng không thích đá.

Nhưng con sâu vẫn còn một mánh khóe cuối cùng. Và anh ấy thật xuất sắc.

Ngoài tất cả các hành động của mình, sâu bắt đầu phát bản ghi dữ liệu từ 21 giây hoạt động cuối cùng, dữ liệu này được ghi lại khi máy ly tâm hoạt động bình thường.
Con sâu phát đi phát lại đoạn ghi âm theo vòng lặp.

Kết quả là dữ liệu từ tất cả các máy ly tâm dành cho con người trông khá bình thường. Nhưng đây chỉ là những mục nhập sai do sâu tạo ra.

Bây giờ hãy tưởng tượng rằng bạn chịu trách nhiệm tinh chế uranium bằng nhà máy công nghiệp lớn này. Và mọi thứ dường như đang hoạt động tốt. Động cơ nghe có vẻ hơi lạ nhưng những con số trên máy tính cho thấy động cơ máy ly tâm hoạt động như bình thường.

Sau đó, máy ly tâm bắt đầu hỏng. Theo thứ tự ngẫu nhiên, cái này nối tiếp cái khác. Họ thường chết một cách lặng lẽ. Tuy nhiên, trong một số trường hợp, họ sắp xếp hiện tại hiệu suất. Và sản lượng uranium bắt đầu giảm mạnh. Sao Thiên Vương phải sạch sẽ. Uranium của bạn không đủ tinh khiết để làm bất cứ điều gì hữu ích.

Bạn sẽ làm gì nếu điều hành nhà máy làm giàu uranium này? Bạn sẽ kiểm tra đi kiểm tra lại mọi thứ mà không hiểu vấn đề là gì. Bạn có thể thay đổi tất cả các máy tính trong nhà máy nếu bạn muốn.

Nhưng máy ly tâm vẫn sẽ bị hỏng. Và bạn thậm chí không có cách nào để tìm ra lý do tại sao.

Theo thời gian, dưới sự giám sát của bạn, khoảng 1000 máy ly tâm bị hỏng hoặc ngừng hoạt động. Bạn phát điên khi cố gắng tìm ra lý do tại sao mọi thứ không diễn ra như kế hoạch.

Đây chính xác là những gì đã thực sự xảy ra

Bạn sẽ không bao giờ ngờ rằng tất cả những vấn đề này đều được tạo ra bởi một con sâu máy tính, loại sâu máy tính thông minh và xảo quyệt nhất trong lịch sử, được viết bởi một nhóm cực kỳ bí mật với số tiền và thời gian vô hạn. Con sâu được thiết kế chỉ với một mục đích: vượt qua tất cả các phương pháp bảo mật kỹ thuật số đã biết và phá hủy chương trình hạt nhân của đất nước bạn mà không bị bắt.
Việc tạo ra một chương trình có thể thực hiện MỘT trong những điều này bản thân nó đã là một phép lạ nhỏ. Tạo một chương trình có thể thực hiện TẤT CẢ những điều này và hơn thế nữa...

… vì điều này Sâu Stuxnet đã phải trở thành chương trình phức tạp nhất từng được viết.

Nguồn: www.habr.com

Thêm một lời nhận xét