Vào sáng ngày 21 tháng 2 năm 2025, một nhà giao dịch tại Bybit đã ký một giao dịch. Trên màn hình, địa chỉ ví và số tiền hiển thị chính xác như mong đợi. Không có cảnh báo nào. Không có dấu hiệu bất thường. Nhưng dưới bề mặt của mã, có một thực tế hoàn toàn khác. Gần 1,5 tỷ USD đã rời khỏi ví. Không ai bấm nhầm. Không ai bị đe dọa. Người ký, theo đúng quy trình, đã chứng thực một mệnh lệnh trao quyền kiểm soát ví cho một bên thứ ba. Sự kiện này trở thành một trong những vụ trộm tiền mã hóa lớn nhất trong lịch sử. Nhưng khi tôi nhìn vào sự kiện này, tôi không thấy một cuộc tấn công mạng điển hình. Tôi thấy sự sụp đổ của một niềm tin. Niềm tin rằng một hợp đồng thông minh đã được kiểm toán là một nơi an toàn để giữ tiền. Ba năm qua, thị trường đi ngang, tích lũy. Nhà đầu tư mệt mỏi, họ khao khát một tín hiệu chắc chắn. Ngành công nghiệp tiền mã hóa đã bán cho họ những tấm huy hiệu Audited như một tấm bùa hộ mệnh. Vấn đề là: mã nguồn không nói dối. Nhưng những tấm huy hiệu đó thì có. Chúng không nói dối về quá khứ. Chúng nói dối về hiện tại.
Huy hiệu kiểm toán không phải là một phát minh của blockchain. Nó kế thừa từ truyền thống kiểm toán tài chính, nơi một bên độc lập xác nhận tính trung thực của báo cáo. Trong thế giới hợp đồng thông minh, kiểm toán là một cuộc giải phẫu. Một công ty an ninh nhận mã nguồn, chạy phân tích tĩnh, kiểm tra từng dòng, mô phỏng các cuộc tấn công, và đưa ra danh sách các lỗ hổng với mức độ nghiêm trọng. OpenZeppelin, Trail of Bits, CertiK, Oak Security, tất cả đều làm những điều này. Họ xuất bản các báo cáo. Và dự án, một cách tự nhiên, đặt logo của họ lên trang chủ. Cơ chế này tạo ra một lớp cảm giác an toàn. Nhưng cảm giác an toàn không giống với sự an toàn thực tế. Sự khác biệt nằm ở phạm vi. Một hợp đồng thông minh không tồn tại trong chân không. Nó tồn tại trong một hệ sinh thái nhiều lớp: mã nguồn, trình biên dịch, máy chủ frontend, trình duyệt, hệ điều hành, thiết bị ký, mạng lưới, và con người giữ khóa. Kiểm toán hợp đồng thông minh chỉ chạm vào một lớp duy nhất: mã nguồn, tại một thời điểm duy nhất. Đó là một khung hình. Không phải toàn bộ bộ phim.
Trở lại với vụ Bybit. Safe, nền tảng đa chữ ký được sử dụng để bảo vệ kho tiền, đã xác nhận rằng hợp đồng thông minh của họ không bị khai thác. Máy tính của nhà phát triển bị nhiễm độc. Tin tặc đã thao túng giao diện. Họ làm cho người ký nhìn thấy địa chỉ mà họ muốn thấy. Địa chỉ đến từ một nguồn có vẻ hợp lệ. Nhưng giao dịch được thực thi, sau khi được phê duyệt, lại chứa logic chuyển quyền sở hữu ví Safe sang địa chỉ của kẻ tấn công. Người ký không thể nhận ra, bởi vì dữ liệu hiển thị trước mặt họ không phản ánh nội dung thực sự của giao dịch. Đây là một cuộc tấn công chuỗi cung ứng. Một cuộc tấn công vào sự tin cậy của giao diện. Không phải vào thuật toán mật mã. Ngay cả khi bạn sử dụng một chiếc ví phần cứng, nó vẫn ký trên cơ sở những gì phần mềm bạn đang chạy đưa ra. Khi phần mềm đó bị xâm nhập, các điểm kiểm tra an toàn nhất của bạn trở thành các điểm mù. Mã nguồn không nói dối. Nhưng mã nguồn không bao giờ là toàn bộ bức tranh.
Tôi đã học được bài học này theo một cách khó khăn hơn một thập kỷ trước. Năm 2017, tôi là một nhà nghiên cứu ở một vị trí không ai ngờ tới. Tôi được trả ba Ethereum để xem xét hợp đồng thông minh của một dự án tên GammaChain. Một dự án ICO bình thường với một trang web bóng bẩy và một tầm nhìn hứa hẹn. Tôi không tin vào lời hứa. Tôi tin vào bytecode. Tôi đảo ngược hợp đồng và tìm thấy một hàm mint ẩn, không có bất kỳ giới hạn nào về số lượng token. Bất kỳ thành viên nào trong đội ngũ cũng có thể tạo ra token từ hư vô. Tôi công bố phân tích trên Bitcointalk. Cộng đồng nam giới thống trị lúc đó bảo rằng tôi không hiểu công nghệ. Ba tháng sau, GammaChain rút thảm. Bài viết của tôi trở thành bằng chứng, được trích dẫn trong nhiều diễn đàn. Kể từ đó, tôi không bao giờ dựa vào lời tuyên bố của đội ngũ. Tôi chỉ đọc mã. Kiểm toán nên là một công cụ cho việc đó. Nhưng quá thường xuyên, nó chỉ là một tấm màn che.
Một báo cáo kiểm toán điển hình nói gì? Nó nói rằng với commit hash X, tại ngày Y, các hợp đồng trong một danh sách cụ thể được xem xét và không tìm thấy lỗi nghiêm trọng nào. Nó không nói rằng hệ thống này an toàn. Nó không nói rằng không thể bị tấn công. Nó không nói rằng tiền sẽ không bao giờ mất. OpenZeppelin, một trong những công ty minh bạch nhất trong ngành, thường liệt kê các pull request, commit hash, thời gian đánh giá khoảng ba ngày, và phạm vi chính xác của từng hợp đồng. Họ vẽ ranh giới rõ ràng. Nhưng khi dự án đăng báo cáo lên website, những ranh giới đó bị xóa mờ. Họ chỉ trích xuất một dòng chữ: Audited by OpenZeppelin, và đặt nó ở trang chủ. Logo được hiển thị vĩnh viễn, trong khi mã nguồn thay đổi mỗi tuần. Điều này không khác gì việc bạn được kiểm tra sức khỏe vào năm 2019, và treo giấy chứng nhận khỏe mạnh trên cửa phòng khám vào năm 2026. Cơ thể đã thay đổi. Mã cũng vậy. Huy hiệu không có ngày hết hạn. Nhưng mọi kiểm toán đều có thời hạn sử dụng.
Các con số càng củng cố thêm điều đó. Một nghiên cứu gần đây của Oak Security, dù mới ở dạng bản in trước và chưa được bình duyệt đầy đủ, đã tập hợp dữ liệu từ các cuộc kiểm toán và các sự kiện mất tiền. Khoảng một phần sáu các phát hiện của kiểm toán được xếp loại nghiêm trọng hoặc cao. Ba danh mục lỗ hổng phổ biến nhất chiếm 37,6 phần trăm tổng số phát hiện. Trong khi đó, các vụ mất tiền lớn lại đến từ rò rỉ khóa riêng và lừa đảo, chiếm 43,9 phần trăm giá trị bị đánh cắp. Điều đó nói lên một điều: kẻ tấn công không tập trung vào các lỗi mà kiểm toán viên tìm thấy. Chúng tập trung vào các kẽ hở mà kiểm toán không bao giờ chạm tới. Chúng không tấn công mã. Chúng tấn công con người. Chúng không hack hợp đồng. Chúng hack quy trình. Bản in trước của Oak Security đặt hai nhóm dữ liệu khác nhau cạnh nhau, vì vậy tôi sẽ không quy kết quan hệ nhân quả. Nhưng hướng đi của con số là rõ ràng. Ngành công nghiệp đang dán mắt vào một vùng chiến trường nhỏ, trong khi trận chiến thực sự đang diễn ra bên ngoài hàng rào.
Năm 2020, tôi tự vận hành một trang trại nhỏ trên testnet. Thời kỳ DeFi Summer, ai cũng nói về lợi nhuận siêu cao. Tôi triển khai một hợp đồng mô phỏng nông nghiệp và phát hiện ra FarmFi có một lỗi trong oracle tính giá token LP. Tôi viết một bot khai thác bằng flash loan và kiếm được 50 Ethereum trên testnet. Số tiền không thật, nhưng vấn đề thì rất thật. Tôi báo cáo riêng cho đội ngũ FarmFi. Họ phớt lờ. Tôi công bố PoC trên GitHub, và sau đó họ buộc phải phát hành bản sửa lỗi khẩn cấp. Nhưng trong suốt thời gian đó, trang chủ của họ vẫn hiển thị logo kiểm toán của một công ty lớn. Kiểm toán không cứu được dự án, vì dự án không muốn được cứu. Họ chỉ muốn một cái mác. Đến năm 2021, tôi áp dụng cùng một logic cho thị trường NFT. Bộ sưu tập CyberSquid tăng giá một cách bất thường. Tôi viết một script Python quét toàn bộ lịch sử giao dịch trên Ethereum. Kết quả thật bất ngờ: 42 phần trăm khối lượng giao dịch đến từ ba địa chỉ duy nhất, liên tục giao dịch với nhau theo hình tròn. Wash trading. Không một báo cáo kiểm toán nào của bộ sưu tập đó nhắc đến điều này. Tại sao? Bởi vì kiểm toán chỉ xem xét mã nguồn, không xem xét dòng tiền trên chuỗi. Mã nguồn của CyberSquid có thể hoàn hảo. Nhưng thị trường thì rác rưởi. Khi tôi công bố loạt bài về điều này, tôi lại bị chỉ trích bởi những nhân vật có ảnh hưởng. Một vài tháng sau, OpenSea cập nhật hệ thống chống wash trading. Vậy đấy.
Năm 2022, FTX sụp đổ. Tôi không bất ngờ. Ngay khi tin tức vỡ ra, tôi chạy node và kéo toàn bộ dữ liệu giao dịch giữa Alameda Research và các sàn giao dịch. Tôi tìm thấy hơn 200 giao dịch chuyển tiền trái phép, được ngụy trang trong các giao dịch bridge phức tạp. Bài viết của tôi thu được 800.000 lượt xem. Các cơ quan pháp luật đã tham khảo nó. FTX có kiểm toán không? Có. Họ có một công ty kiểm toán truyền thống. Họ có một trong những quỹ đầu tư nổi tiếng nhất trong lĩnh vực tiền mã hóa. Nhưng kiểm toán không phát hiện ra hàng tỷ đô la biến mất. Bởi vì kiểm toán báo cáo tài chính không bao gồm việc xác minh xem sàn giao dịch có thực sự sở hữu tài sản mà nó tuyên bố hay không. Đó là một loại mù lòa khác, nhưng nó có cùng nguyên nhân gốc rễ: con người tin vào huy hiệu, không tin vào bằng chứng. Tôi đã thấy điều này lặp đi lặp lại. GammaChain, FarmFi, CyberSquid, FTX, Bybit. Năm vụ việc, năm bài học, cùng một thông điệp. Mã nguồn không nói dối. Nhưng những gì con người làm với mã nguồn, những gì họ giấu xung quanh mã nguồn, những gì họ hiển thị trên màn hình trước khi mã được ký, tất cả đều có thể nói dối.
Có một thuật ngữ trong ngành an ninh truyền thống: security theater. Những màn trình diễn an ninh. Sân bay lắp thêm máy quét, tăng cường kiểm tra giày, nhưng không phải vì những biện pháp đó ngăn chặn được khủng bố, mà vì chúng khiến hành khách cảm thấy an tâm. Huy hiệu Audited trong thế giới tiền mã hóa đang ở một vị trí tương tự. Nó là một màn trình diễn. Một báo cáo dài ba mươi trang, với những biệt ngữ mật mã, được in trên giấy bóng và đặt trong một đường dẫn PDF. Nhà đầu tư nhìn vào logo, không nhìn vào báo cáo. Họ không kiểm tra phạm vi. Họ không so sánh commit hash. Họ không hỏi liệu báo cáo có còn hiệu lực sau hai mươi lần nâng cấp mã hay không. Họ chỉ nhìn thấy một con dấu. Và con dấu đó làm họ ngừng suy nghĩ.
Hãy công bằng với phe bò, những người vẫn khẳng định giá trị của kiểm toán. Họ đúng, theo một nghĩa rất hẹp. Một dự án chưa từng kiểm toán có nguy cơ hỏng hóc cao hơn. Các lỗi như hàm mint ẩn trong GammaChain, lỗi oracle trong FarmFi, đều có thể được phát hiện bởi một kiểm toán viên có năng lực. Kiểm toán là cơ sở hạ tầng tối thiểu. Nó giống như hệ thống phanh của một chiếc xe. Nhưng phanh không giúp bạn tránh được một tài xế khác vượt đèn đỏ. Vấn đề không nằm ở bản thân kiểm toán. Vấn đề nằm ở cách thị trường đóng gói nó. Nhà đầu tư nhìn thấy huy hiệu, và họ dừng đặt câu hỏi. Họ ngừng kiểm tra địa chỉ hợp đồng. Họ ngừng đọc báo cáo. Họ ngừng tự hỏi: hợp đồng này đã được cập nhật từ khi kiểm toán chưa? Kiểm toán, đáng lẽ là một công cụ để tăng cường sự giám sát, lại trở thành công cụ để xoa dịu sự giám sát. Nó giống như một lời cầu nguyện trước chuyến bay. Nó không làm cho chiếc máy bay an toàn hơn, nhưng nó làm cho hành khách bình tĩnh hơn. Và khi hành khách bình tĩnh, họ ít chú ý đến các dấu hiệu nguy hiểm.
Trong một thị trường đi ngang và tích lũy, khi mọi người đang sốt ruột tìm kiếm cơ hội, những kẻ xấu lợi dụng sự mệt mỏi đó. Chúng tạo ra các dự án có huy hiệu đẹp, logo sang trọng, và một câu chuyện hoàn hảo. Chúng biết rằng nhà đầu tư không đọc báo cáo kiểm toán. Chúng biết rằng nhà đầu tư chỉ nhìn vào logo. Nếu bạn muốn một cách kiểm tra thực tế, đừng nhìn vào logo. Hãy nhìn vào commit hash trong báo cáo. So sánh nó với mã nguồn đang chạy trên mạng chính. Nếu chúng khác nhau, báo cáo đó không còn giá trị cho phiên bản bạn đang sử dụng. Hãy tìm mục phạm vi trong báo cáo. Nó bao gồm những hợp đồng nào? Nó loại trừ những gì? Có bao gồm frontend, trình duyệt, hoặc các kịch bản quản trị không? Rất có thể là không. Hãy hỏi: điều gì sẽ xảy ra nếu một trong những người ký của ví đa chữ ký là một phần mềm độc hại? Câu trả lời thường là sự im lặng. Bởi vì không có hợp đồng thông minh nào có thể tự bảo vệ mình khỏi kẻ tấn công đã kiểm soát được giao diện mà con người tương tác.
Đã đến lúc ngành công nghiệp này ngừng bán bùa hộ mệnh. Các công ty kiểm toán nên áp dụng một quy chuẩn là nhấn mạnh giới hạn của mình trên chính trang web của họ. Các dự án nên hiển thị ngày hết hạn của báo cáo kiểm toán, giống như ngày hết hạn trên bao bì thực phẩm. Các nhà đầu tư nên được đào tạo để phân biệt giữa mã không có lỗi nghiêm trọng tại thời điểm X và hệ thống an toàn để lưu trữ tiền. Hai phát biểu đó cách nhau một đại dương. Khi tôi nhìn vào vụ Bybit, tôi không thấy một lỗ hổng bảo mật. Tôi thấy một sự thất bại của trí tưởng tượng. Mọi người tin rằng việc kiểm toán hợp đồng sẽ bảo vệ họ. Nhưng kẻ tấn công không bị giới hạn bởi trí tưởng tượng của chúng ta. Chúng không tấn công code. Chúng tấn công niềm tin. Và thứ chúng tấn công đầu tiên không phải là một dòng mã, mà là một biểu tượng: biểu tượng của chiếc huy hiệu Audited.
Vậy câu hỏi cuối cùng dành cho bạn rất đơn giản. Lần cuối cùng bạn thực sự đọc một báo cáo kiểm toán trước khi gửi tiền là khi nào? Nếu câu trả lời là không bao giờ, thì bạn không hề được bảo vệ. Bạn chỉ được ru ngủ. Hãy nhớ: huy hiệu audit không phải là một cái két sắt. Nó là một tấm biển trên cửa két sắt. Tấm biển có thể đẹp, có thể mạ vàng, có thể được đóng khung bởi những cái tên lớn. Nhưng cánh cửa vẫn là của bạn. Ổ khóa vẫn là của bạn. Trách nhiệm mở nó hoặc không mở nó vẫn là của bạn. Trên con phố này, kẻ móc túi thích nhất là những người đang mải ngắm nhìn tấm biển. Mã nguồn không nói dối. Nhưng nó cũng không nói toàn bộ sự thật. Phần còn lại, bạn phải tự mình nhìn thấy.


