You are on page 1of 5

Lý thuyết worm mới

mở ra tương lai sáng lạn cho loài sâu.

Mới đây, một tài liệu tên gọi Warhol đã đề cập đến một lý thuyết Worm mới được
gọi là "super-worm". Nhắc lại, worm là một chương trình máy tính tự copy chính nó từ
máy tính này sang máy tính khác với mục tiêu là tự lây lan càng nhiều càng tốt. "Super-
worm" sử dụng những kỹ thuật cao cấp để đạt được tốc độ lây lan cực nhanh trên mạng.
Chiến thuật chủ đạo của "super-worm" được Warhol đề cập (tạm đặt tên là Curious
Yellow) là thực hiện việc scan trên diện rộng trên mạng internet để tìm những mục tiêu có
sơ hở về bảo mật trước khi tiến hành lây lan. Một khi worm được kích hoạt, nó đã nắm
trong tay một danh sách khổng lồ các mục tiêu và cả phương pháp lây lan tương ứng với
từng mục tiêu. Có nghĩa là, việc lây lan sẽ nhắm vào các mục tiêu "chắc ăn" có chọn lọc
trước, và nhờ đó tỉ lệ thành công sẽ rất cao.

Nhưng quan trọng nhất, Warhol cho rằng sẽ đạt được kết quả tốt hơn nếu sử dụng
kỹ thuật "worm hợp tác", theo đó nhiều thực thể khác nhau của worm tồn tại trên nhiều
computer khác nhau sẽ cùng liên lạc với nhau để cùng hành động. Tuy nhiên cũng theo
tài liệu Warhol, cho tới nay, chưa có con worm-hợp-tác nào được tạo ra. Tài liệu này đề
xuất điều ưu tiên hàng đầu đối với loại worm mới này là phải tận dụng thật hiệu quả khả
năng liên lạc giữa các thực thể worm trong việc tiến hành lây lan.

Những thuận tiện và bất lợi của phương án hợp tác

Lý do thêm khả năng hợp tác cho worm là để gia tăng độ tinh vi của những
phương án tấn công bắt chước theo một chiến thuật nổi tiếng hay được sử dụng trong
game: "divide and conquer" (chia để trị). Theo lý thuyết worm cũ, chiến thuật lây lan của
worm đôi khi tỏ ra “hăng hái” quá mức và gây phản tác dụng. Một thực thể worm gửi đi
quá nhiều bản copy của chính nó sẽ dễ bị phát hiện và tiêu diệt. Hơn nữa, sự lây lan "mù
quáng" của lý thuyết worm cũ có thể dẫn tới việc lây vào các máy đã bị nhiễm, một điều
hoàn toàn vô ích. Đó là do các worm hiện nay không hề "hiểu biết" gì về mục tiêu của nó.
Theo lý thuyết mới, worm sẽ nắm vững thông tin về các mục tiêu và sẽ chia nhau ra thực
hiện những phương pháp lây lan thích hợp tương ứng.

Cái khó của phương án hợp tác là phải giảm thiểu chi phí để các worm tương tác
với nhau. Khi một số lượng rất lớn các thực thể lan tràn trên mạng, nếu mỗi thực thể đều
phải duy trì liên lạc với tất cả các thực thể khác thì lượng băng thông để liên lạc sẽ bùng
nổ đến mức còn hơn bất cứ một chiến thuật lây lan "tham lam" nào từ trước tới nay.
Chiến thuật hợp tác phải làm sao giới hạn được sự liên lạc giữa các thực thể một cách
hợp lý. Hơn nữa, việc hợp tác cũng phải mã hoá một cách đơn giản vì kích thước của
worm phải càng nhỏ càng tốt.

Hiệu quả của sự hợp tác


Điều thú vị là ở chỗ vấn đề tổ chức liên lạc giữa các worm cho hiệu quả sao
cho vừa lây lan được ở diện rộng lại vừa khống chế số "kênh" liên lạc vừa phải là rất
giống với vấn đề đặt ra cho các mạng peer-to-peer. Một kỹ thuật phân chia các node trên
mạng song hàng nổi tiếng là kỹ thuật Chord (dựa trên kỹ thuật đánh địa chỉ DHT -
Distributed hash tables). Theo kỹ thuật Chord, mỗi node trên mạng có thể liên lạc với các
node khác thông qua tối đa là O(logN) node trung gian. Ngoài ra, mỗi node cũng chỉ phải
duy trì tri thức của nó đối với O(logN) node khác. Như vậy, chi phí để liên lạc được giảm
xuống mức có thể chấp nhận. Cụ thể, trong một mạng khoảng 1 triệu node, mỗi node chỉ
phải giữ liên lạc với khoảng 20 node và để gửi thông tin xuyên qua toàn bộ mạng, cũng
chỉ cần thông qua khoảng 20 node trung gian. Tương tự, trong mạng khoảng 10 triệu
node, mỗi node phải giữ liên lạc với khoảng 23 node, và thêm 23 node trung gian. Hơn
nữa với những thuật toán phát triển từ Chord, ví dụ như Anonymous Chord - Achord, sẽ
rất khó cho bất cứ một node nào tìm được tất cả ID của các node còn lại trong mạng. Như
vậy sẽ càng đảm bảo an toàn cho hệ thống worm, không sợ bị tiêu diệt bằng cách lần ra
tất cả các node trong mạng lưới.
Chi tiết

Để tạo ra một mạng Achord, mỗi node phải được cấp phát một ID độc lập, khó giả
mạo và khó đoán. Các ID sẽ được cấp phát bằng cách phân bổ công bằng. Mỗi công việc
cần thực hiện cũng được gán một ID như vậy. Mỗi công việc sẽ được giao cho node nào
có ID gần với ID của nó nhất. Phương pháp mà Curious Yellow sử dụng để gán ID cho
các worm và các mục tiêu là dựa trên bảng băm SHA1 các IP address.
Phương pháp lây lan thì rất đơn giản. Mỗi node nắm IP của 2 node gần nó nhất. Khi
nghiên cứu một mục tiêu, nó sẽ tính xem ID của mục tiêu gần với ID của nó hơn hay gần
với một trong hai "hàng xóm" của nó hơn. Nếu bản thân nó là gần mục tiêu nhất, thì nó
mới tấn công. Bằng không, nó chỉ thông báo cho "hàng xóm" gần hơn của nó biết và bỏ
qua mục tiêu đó. Do sự toàn vẹn của hệ thống ID, chắc chắn sẽ có một worm nào đó tấn
công mục tiêu. Hơn nữa, việc thông báo này không cần phải thiết lập kênh liên lạc ngay
lập tức. Liên lạc chỉ cần thiết để thông báo cho các node worm biết những mục tiêu nào
nó chịu trách nhiệm tấn công.

Kỹ thuật pre-scan trên internet trước khi lây lan của các super-worm sẽ mất
khoảng 15 phút (theo Warhol) hoặc chỉ 30 giây (theo Flash). Một khi mạng worm "giống"
đã được thiết lập, nó có thể được sử dụng làm nền cho các hoạt động khác. Thí dụ như
phân bổ công tác scanning để tiếp tục tìm kiếm những mục tiêu sơ hở để tiếp tục lây lan.
Không như chiến thuật "tham ăn" của Code Red, đối với Curious Yellow, mỗi mục tiêu sẽ
chỉ bị scan và phân tích bởi một worm duy nhất mà thôi. Điều này vừa tiết kiệm tài
nguyên vừa khiến khó phát hiện hơn.

Sự liên lạc xuyên suốt của mạng lưới worm còn đưa tới những khả năng hấp dẫn
hơn, ví dụ như tác giả có thể phát hành những bản patch của worm, và bàn patch này sẽ
được phát đi khắp mạng lưới thậm chí còn nhanh hơn việc lây lan lần đầu (trong vòng
khoảng 15 giây). Điều này thật sự hấp dẫn bởi nó cho worm khả năng "tiến hoá" (tạm gọi
như vậy). Ngay khi một lỗ hổng bảo mật mới được phát hiện ra, tác giả của worm có thể
phát hành ngay bản patch cung cấp cho worm khả năng khai thác lỗ hổng này, và phát tán
trong thời gian chỉ có 15 giây!!! Sau đó mạng lưới worm có thể thực hiện lại việc pre-
scan để tìm những mục tiêu mới (những mục tiêu mà lần trước chưa có khả năng xâm
nhập). Với tốc độ phát tán như vậy, không có một cơ hội nào cho những nỗ lực sửa chữa
lỗ hổng bảo mật đó cả. Những sơ hở vừa mới tìm ra có thể được áp dụng ngay lập tức
thậm chí trước khi tin tức về lỗ hổng đó được tuyên truyền rộng rãi. Khả năng cho phép
cập nhật và thay đổi code của bản thân worm còn cho phép tác giả thay đổi đặc điểm và
những "dấu hiệu nhận dạng" của worm khi thấy bị đe doạ phát hiện. Điều này mô phỏng
rất chính xác khả năng tiến hoá và biến đổi cực nhanh của các virus sinh học.

Ta có thể làm rất nhiều việc với hệ thống worm này. Khả năng hiển nhiên có thể
nghĩ ngay ra được là phá hoại một số lượng lớn máy tính trên mạng Internet, giống như
một số worm "ác độc" trước đây. Một ứng dụng khác thú vị hơn là lợi dụng mạng lưới
worm để tiến hành các cuộc tấn công Denial of Service. Thử hình dung với một mạng
lưới khổng lồ các host đã nắm trong tay, tác giả của Curious Yellow có thể dễ dàng
flooding bất cứ một server nào trên thế giới này. Tuy nhiên có vẻ khá kỳ cục khi bỏ công
phát tán một mạng lưới tuyệt vời như thế chỉ vì mục đích này.
Điều quan trọng là ở chỗ chủ nhân của hệ thống worm nắm được quyền kiểm soát một số
lượng rất lớn các máy tính trên Internet (giống như Trojan, nhưng trong trường hợp này,
không phải con Trojan chạy trên một máy là hàng triệu máy tính một lúc!!!) và nắm
quyền điều khiển tất cả các luồng dữ liệu trên Internet. Điều này đưa tới một khả năng
còn kinh khủng hơn: phong toả toàn bộ các kênh liên lạc đối với một mục tiêu. Ví dụ, nếu
chủ nhân hệ thống worm muốn xoá một trang Web nào đó, anh ta sẽ phong toả tất cả các
đường liên lạc tới Web server đó, như vậy trang Web kia sẽ hoàn toàn biến mất. Tương
tự, nếu muốn sửa đổi nội dung một trang Web chẳng hạn, giờ đây anh ta chẳng cần mất
công lấy quyền điều khiển của Web server đó làm gì, mà chặn và sửa đổi thông tin ngay
trên các đường truyền nối Web server với phần còn lại của Net. Và như vậy, Webmaster
hoàn toàn bó tay, không có cách gì can thiệp vào được. (Thử tưởng tượng, nếu khả năng
này được áp dụng vào các công tác tuyên truyền chính trị hoặc chống khủng bố, chúng ta
có thể thay đổi những thông tin bọn khủng bố đưa lên mạng thành bất cứ điều gì ta
muốn). Đồng thời, tất cả những thông tin không được mã hoá truyền trên mạng đều có
thể bị bắt và đọc lén.

Không chỉ dừng ở đó, chủ nhân Curious Yellow còn có thể áp dụng những phương
pháp exploit mới nhất để giành quyền super-user để truy cập vào tất cả các hệ thống trên
Internet (Ít nhất là tất cả những hệ thống đã bị nhiễm Curious Yellow.) Và nhờ đó có thể
truy xuất tới bất cứ thông tin gì chứa trên các hệ thống, cũng như khả năng kiểm soát tất
cả hoạt động của các hệ thống (Một lần nữa, tương tự như với Trojan nhưng ở diện rộng
hơn.) Nói tóm lại, ai kiểm soát Curious Yellow sẽ kiểm soát tất cả (hay ít ra là một lượng
rất lớn) các máy tính của cả thế giới!!!

You might also like