Vụ tấn công The DAO 2016 và ngã rẽ sinh tử của Ethereum: Khi một đoạn mã đệ quy buộc Vitalik Buterin chia tách thế giới blockchain làm đôi
- +108/10/2026On-chainghi 08/10/2026 · 23:46

Vào lúc 08:00 sáng ngày 17 tháng 6 năm 2016, trong một căn phòng làm việc tĩnh lặng tại Thụy Sĩ, chiếc điện thoại của Vitalik Buterin rung lên liên hồi với những thông báo đỏ rực từ kênh Slack nội bộ của nhóm phát triển cốt lõi Ethereum. Ở đầu dây bên kia, giọng của Christoph Jentzsch — nhà sáng lập tổ chức The DAO — lạc đi vì hoảng loạn. Trên màn hình máy tính của họ, số dư của quỹ đầu tư mạo hiểm tự trị lớn nhất thế giới lúc bấy giờ đang bốc hơi với tốc độ chóng mặt: từng khối lệnh 8.000 ETH liên tục bị rút cạn sau mỗi vài chục giây, chảy thẳng vào một địa chỉ ví lạ mà không ai có quyền kiểm soát.
Đó không chỉ là một vụ trộm tài sản kỹ thuật số thông thường. Đó là khoảnh khắc sinh tử đe dọa chôn vùi toàn bộ mạng lưới Ethereum non trẻ mới chỉ vừa tròn một năm tuổi đời.
Ảo vọng về một tổ chức tự trị hoàn hảo
Để hiểu được quy mô chấn động của vụ việc, cần quay ngược lại mùa xuân năm 2016 — thời điểm thế giới công nghệ phát sốt trước khái niệm The DAO (Decentralized Autonomous Organization). Ý tưởng đằng sau The DAO đẹp đẽ và lãng mạn như một giấc mơ không tưởng của những người theo chủ nghĩa tự do: một quỹ đầu tư mạo hiểm phi tập trung hoàn toàn, không có hội đồng quản trị, không có giám đốc điều hành, không có trụ sở pháp lý.
Mọi dòng vốn được quản lý hoàn toàn bằng các hợp đồng thông minh (Smart Contracts) viết bằng ngôn ngữ Solidity trên chuỗi khối Ethereum. Bất kỳ ai cũng có thể gửi ETH vào để nhận lại token quản trị, biểu quyết cho các dự án khởi nghiệp và nhận cổ tức tự động.
Sự cuồng nhiệt của cộng đồng đã vượt xa mọi dự liệu ban đầu. Đợt gọi vốn cộng đồng (crowdfunding) kéo dài 28 ngày vào tháng 5/2016 đã thu hút hơn 12,7 triệu ETH — tương đương 150 triệu USD theo thời giá lúc bấy giờ và chiếm tới gần 15% toàn bộ lượng cung ETH đang lưu hành trên toàn cầu. Giới tài chính truyền thống bàng hoàng trước tốc độ huy động vốn, còn cộng đồng crypto tin rằng họ đang chứng kiến sự ra đời của một hình thái doanh nghiệp tương lai.
Thế nhưng, chính khối tài sản khổng lồ bị giam giữ trong một địa chỉ hợp đồng duy nhất đã biến The DAO thành chiếc mồi ngon béo bở nhất trong lịch sử an ninh mạng.
Lỗ hổng Reentrancy Bug: Cỗ máy rút tiền tự gọi lại chính mình
Trái với hình dung của nhiều người về những cuộc tấn công mạng bằng mã độc tinh vi hay xâm nhập máy chủ, kẻ tấn công The DAO không cần phải bẻ khóa bất kỳ mật khẩu nào. Hắn chỉ đơn giản là đọc rất kỹ từng dòng mã nguồn mở của hợp đồng và phát hiện ra một sơ hở logic chết người: Lỗi tái nhập (Reentrancy Vulnerability) trong hàm phân tách
splitDAO.Hàm
splitDAOđược thiết kế nhằm bảo vệ quyền lợi của nhóm thiểu số: Nếu một nhà đầu tư không đồng tình với các quyết định biểu quyết của số đông, anh ta có quyền kích hoạt hàm này để rút lại phần ETH của mình sang một "Child DAO" riêng biệt. Tuy nhiên, các kỹ sư phần mềm khi viết đoạn mã đã mắc phải một sai lầm chết người về thứ tự thực thi:- Quy trình chuẩn mực: Kiểm tra số dư người dùng → Cập nhật trừ số dư trên sổ cái → Gửi tiền đi.
- Quy trình bị lỗi trong The DAO: Kiểm tra số dư → Gửi tiền đi trước → Rồi mới cập nhật trừ số dư nội bộ.
Kẻ tấn công đã triển khai một hợp đồng thông minh độc hại chứa một hàm gọi lại (fallback function). Khi hợp đồng The DAO chuyển tiền đến ví của hắn, hàm fallback này lập tức phản hồi bằng cách gọi lại hàm
splitDAOmột lần nữa trước khi hợp đồng mẹ kịp thực hiện dòng lệnh trừ số dư.Hệ thống rơi vào một vòng lặp đệ quy bất tận: Hợp đồng The DAO liên tục kiểm tra thấy số dư của hacker vẫn còn nguyên, tiếp tục giải ngân tiền, rồi lại bị gọi lại rút tiếp. Bằng cơ chế này, kẻ tấn công đã rút cạn 3,6 triệu ETH (hơn 50 triệu USD lúc bấy giờ) sang một Child DAO riêng biệt mà cộng đồng gọi là "Dark DAO".
Chiếc đồng hồ đếm ngược 28 ngày và thế tiến thoái lưỡng nan
Thảm kịch dường như đã khép lại số phận của Ethereum. Giá ETH ngay lập tức rơi tự do hơn 50% chỉ trong vài giờ. Nhưng giữa cơn hoảng loạn, các nhà phát triển nhận ra một điểm tựa pháp lý bằng mã nguồn vô cùng kỳ lạ: Theo đúng quy định được lập trình sẵn trong hợp đồng The DAO, bất kỳ số tiền nào được chuyển vào một Child DAO đều bị khóa cứng trong vòng 28 ngày trước khi chủ sở hữu có thể rút ra thị trường tự do.
Cộng đồng Ethereum có đúng 28 ngày đếm ngược sinh tử trước khi hacker có thể tẩu tán 3,6 triệu ETH ra các sàn giao dịch. Nếu điều đó xảy ra, kẻ tấn công sẽ trở thành "cá voi" lớn nhất thị trường, nắm giữ quyền lực thao túng toàn bộ hệ sinh thái khi Ethereum chuyển dịch sang cơ chế đồng thuận Proof of Stake trong tương lai.
Một cuộc chiến triết học dữ dội nhất trong lịch sử blockchain bùng nổ, xé toạc cộng đồng làm hai phe đối lập:
- Phe bảo thủ cực đoan (Code is Law): Những cypherpunk thuần túy lập luận rằng tính bất biến là linh hồn bất khả xâm phạm của blockchain. Hacker chỉ đơn thuần thực thi các dòng mã mà các nhà sáng lập đã viết ra. Nếu nhóm nhà phát triển cốt lõi có quyền can thiệp vào sổ cái để đảo ngược một giao dịch không vừa ý, thì Ethereum chẳng khác nào một ngân hàng trung ương truyền thống sẵn sàng in tiền cứu trợ các định chế "quá lớn để sụp đổ" (Too Big To Fail).
- Phe thực dụng (Pragmatism): Nhóm do Vitalik Buterin và Quỹ Ethereum dẫn đầu cho rằng: Blockchain sinh ra để phục vụ con người, không phải để biến con người thành nạn nhân của một lỗi cú pháp phần mềm. Nếu để mất 15% lượng cung vào tay tội phạm, cả hệ sinh thái sẽ chết yểu trước khi kịp chứng minh giá trị thực tiễn.
Ngã rẽ Hard Fork và sự ra đời của Ethereum Classic
Sau những cuộc bỏ phiếu on-chain căng thẳng và các cuộc tranh luận nảy lửa thâu đêm suốt sáng, Vitalik Buterin và phần lớn các thợ đào đã đưa ra quyết định táo bạo nhất trong lịch sử: Thực hiện một bản Hard Fork.
Tại khối thứ 1.920.000 vào ngày 20 tháng 7 năm 2016, mạng lưới Ethereum chính thức áp dụng một bản nâng cấp đặc biệt. Toàn bộ 3,6 triệu ETH nằm trong tay Dark DAO của hacker bị chuyển dịch cưỡng bức sang một hợp đồng thu hồi (Withdraw Contract), cho phép những người bị hại đổi lại ETH với tỷ lệ 1:1.
Thế nhưng, thế giới phi tập trung không bao giờ thỏa hiệp một cách tuyệt đối. Một nhóm thợ đào và người dùng kiên định với triết lý "Code is Law" đã từ chối cập nhật phần mềm mới. Họ tiếp tục duy trì chuỗi khối cũ — nơi hacker vẫn nắm giữ số tiền bị đánh cắp — và đổi tên mạng lưới đó thành Ethereum Classic (ETC). Trong khi đó, chuỗi khối được can thiệp Hard Fork tiếp tục phát triển và trở thành Ethereum (ETH) hùng mạnh của ngày hôm nay.
Chiêm nghiệm sau một thập kỷ: Giới hạn của bộ mã vô cảm
Nhìn lại vụ tấn công The DAO sau gần mười năm, người ta mới nhận ra rằng sự kiện ấy chính là vết sẹo định hình nên toàn bộ ngành công nghiệp tài chính phi tập trung (DeFi):
Nó khai sinh ra các tiêu chuẩn kiểm toán bảo mật hợp đồng thông minh khắt khe ngày nay; nó dạy cho các lập trình viên biết kính sợ sự phức tạp của các tương tác mã nguồn; và quan trọng hơn cả, nó đập tan ảo tưởng ngây thơ về một trật tự xã hội thuần túy vận hành bằng những dòng code vô cảm.
Tương tự như cách các thị trường tài chính sau này từng chứng kiến cú sụp đổ toán học của Terra Luna hay những rủi ro dây chuyền từ cơn sốt đòn bẩy cầm cố chéo Restaking, thảm kịch The DAO để lại một bài học triết học sâu sắc:
Mã nguồn có thể bất biến về mặt toán học, nhưng niềm tin và sự tồn vong của một hệ thống tài chính luôn nằm trong tay sự đồng thuận của con người. Khi một cuộc khủng hoảng mang tính sống còn ập đến, sự kiêu ngạo của những lý thuyết cứng nhắc buộc phải nhường chỗ cho sự can đảm để đưa ra những quyết định sinh tử cứu vớt tương lai.
- Vốn huy động The DAO
- 150 triệu USD (2016)
- Tỷ lệ ETH bị khóa
- 15% tổng cung mạng
- Lượng ETH bị bòn rút
- 3,6 triệu ETH
- Cơ chế tấn công
- Reentrancy Bug đệ quy
- Khóa rút tạm thời
- 28 ngày Dark DAO
- Ngã rẽ Hard Fork
- Khối 1.920.000
Nếu đứng ở ngã rẽ năm 2016, bạn sẽ chọn bảo vệ triết lý 'Code is Law' để mặc hacker rút tiền, hay ủng hộ Hard Fork để cứu vớt hệ sinh thái?
Bình luận
Chưa có bình luận chung nào — mời bạn nêu ý kiến.