Hơn 1,2 triệu ứng dụng ethereum đã sử dụng một công cụ bảo mật ít được biết đến để giúp họ tránh các lỗi tốn kém phát sinh từ các dòng mã tự thực thi được gọi là hợp đồng thông minh.

Ra mắt bởi startup công nghệ ethereum Amberdata vào tháng 10, công cụ miễn phí có sẵn cho bất kỳ ai trong cộng đồng nói chung để giải thích tính bảo mật của các ứng dụng đang hoạt động trên blockchain ethereum. Hợp đồng thông minh với các lỗi đã bị khai thác đã dẫn đến những tổn thất lớn, thậm chí là điều chỉnh hàng trăm triệu.

Dịch vụ tự động quét các lỗ hổng phổ biến được tìm thấy trong mã hợp đồng thông minh và tạo ra xếp hạng cấp thư (ví dụ: A, B hoặc C) để bảo mật cho ứng dụng phi tập trung (dapp).

Tính năng này là một trong nhiều công cụ khuyến khích thực tiễn tốt nhất và tăng tính minh bạch giữa các nhà phát triển dapp và người dùng cuối trong hệ sinh thái ethereum.

Điều gì nữa, đó là một tính năng đã xuất hiện trong không gian web rộng hơn trong một thời gian dài. Trình duyệt quan tâm đến quyền riêng tư DuckDuckGo gần đây đã ra mắt tiện ích mở rộng trình duyệt Chrome được sử dụng để xếp hạng các trang web (không phải dapps) với cấp độ chữ cái, giúp người dùng hiểu rõ về cách quản trị viên dịch vụ bảo vệ quyền riêng tư của người dùng tốt hoặc kém.

Viễn Tầm nhìn của chúng tôi là nâng cao tiêu chuẩn của niềm tin trực tuyến, anh viết DuckDuckGo trong một bài đăng trên blog từ tháng 1 năm 2017.

Tương tự, tầm nhìn đằng sau công cụ phân loại bảo mật của Amberdata, như được nhấn mạnh bởi Giám đốc điều hành Amberdata, Shawn Doulass trong một thông cáo báo chí, là cung cấp quyền truy cập lớn hơn và tăng cường khả năng hiển thị vào các hợp đồng thông minh.

Ông nói thêm:

Hồi Chúng tôi hy vọng rằng bằng cách cung cấp các công cụ này cho cộng đồng, chúng tôi có thể giảm bớt sự phụ thuộc bên ngoài và cho phép cộng đồng phát triển nhanh hơn và an toàn hơn.

Xếp hạng

Nhưng chính xác thì những ứng dụng này trên ethereum được xếp hạng như thế nào trên Amberdata?

Chỉ ra 13 loại lỗ hổng được quét tự động bởi chương trình, Amberdata CTO Joanes Espanol đã ví từng loại này với đèn báo động cơ trên bảng điều khiển [a car].

Triệu Điều đó chỉ có nghĩa là tôi cần kiểm tra những gì diễn ra với chiếc xe. Bất kỳ điều nào trong số này có thể dẫn đến lỗi bảo mật, đã giải thích Espanol cho CoinDesk.

Và càng nhiều lỗi bảo mật được phát hiện bởi quét bảo mật Amberdata, thì bảng chữ cái càng thấp mà một dapp sẽ nhận được. Các xếp hạng này nằm trong khoảng từ A + đến F.

Nhưng họ không hoàn toàn phụ thuộc vào số lỗi bảo mật. Mỗi trong số 13 lỗ hổng có mức độ nghiêm trọng khác nhau, Espanol giải thích, điều đó sẽ ảnh hưởng đến lớp cuối cùng của dapp. Hai lỗ hổng mức độ nghiêm trọng thấp phổ biến được đánh dấu bởi Espanol bao gồm cuộc gọi ủy nhiệm của người dùng đến một địa chỉ do người dùng cung cấp và cuộc gọi tin nhắn đến hợp đồng bên ngoài. [[9009003]

Loại thứ hai có thể gây ra rủi ro bảo mật tiềm ẩn nếu một dapp, thay vì độc lập trong một hợp đồng thông minh, gọi các hợp đồng bổ sung sở hữu mã lỗi.

Tương tự, một cuộc gọi đại biểu là một hoạt động khác thường được sử dụng để phân chia mã hợp đồng thông minh thành nhiều hợp đồng phụ, do đó, mọi nâng cấp cần thiết cho phần mềm đều có thể được thực hiện mà không cần chấm dứt toàn bộ ứng dụng.

Đổi đó là phần tốt của những cuộc gọi đại biểu đó. Nhưng phần tồi tệ là bây giờ với tư cách là chủ sở hữu của hợp đồng, tôi có thể bắt đầu làm những điều xấu. Vì vậy, tôi có thể bắt đầu thay thế các hợp đồng thay đổi hành vi của [application,] ban đầu giải thích Espanol.

Như vậy, trên cả hai tổng số, Espanol đã mô tả kiểm toán bảo mật là gửi đi các cảnh báo của Cameron, thay vì chỉ ra các lỗi mã ngay lập tức.

Thật vậy, một dapp như vậy hiện đang tận dụng cuộc gọi tin nhắn và trước đây đã triển khai nâng cấp hợp đồng thông minh bằng cách sử dụng cuộc gọi lại của đại biểu vào tháng 1 là TrueUSD. Được tạo bởi công ty khởi nghiệp blockchain TrustToken, stablecoin được hỗ trợ bằng USD trên ethereum hiện được xếp hạng với loại chữ C.

Mặc dù điều đó nghe có vẻ tốt, nhưng nhìn vào các lỗ hổng được gắn cờ cho TrueUSD, kỹ sư bảo mật TrustToken William Morriss đã nói với CoinDesk trong một cuộc phỏng vấn trước đây, tất cả các mối lo ngại được xác định thực sự không nghiêm trọng.

Các lỗ hổng đang được báo cáo không phải là cách mà chúng ta có thể bị tấn công, chúng tôi nhận thức được chúng và khi mọi người mang lỗ hổng cho chúng tôi, chúng tôi đối xử với chúng rất nghiêm túc, Morriss nói.

Xây dựng vấn đề về các cuộc gọi tin nhắn cụ thể, Morriss nói thêm rằng đối với TrueUSD, tất cả các hợp đồng bên ngoài đều được sở hữu và vận hành bởi chính các công ty, trái ngược với các bên thứ ba có tiêu chuẩn bảo mật thấp hơn.

Cách nhận A +

Lỗi về mức độ nghiêm trọng của thang điểm cao sẽ ảnh hưởng đến xếp hạng bảo mật của ứng dụng vì nó cho thấy tiềm năng lớn hơn đối với lỗi mã và khai thác.

Một trong những trường hợp phổ biến nhất trong số này, tràn số nguyên, chỉ ra các hoạt động được thực hiện trong hợp đồng thông minh có thể tạo ra các giá trị vượt quá giới hạn mã, dẫn đến hành vi khó đoán, trong trường hợp xấu hơn, có thể dẫn đến mất tiền

Flipside là dòng dưới số nguyên, một lỗ hổng khác của mức độ nghiêm trọng của Niết cao, do đó điều ngược lại chính xác có thể xảy ra và một giá trị dưới phạm vi được xác định tương tự gây ra đầu ra sai.

Ngoài ra còn có một số tính năng trong Solidity mà các nhà phát triển dapp nên tránh, theo hệ thống phân loại của Amberdata, bao gồm vụ tự tử () và và tx.origin. Sau đó, được mô tả bởi Espanol là mã bị loại bỏ. đã loại bỏ hoàn toàn ngôn ngữ Solidity vào một ngày trong tương lai, trong khi trước đây có nguy cơ bị các bên ngoài chiếm đoạt để đóng băng tiền của người dùng – rằng họ không bao giờ có thể lấy lại được.

Vì nó không có bất kỳ lỗ hổng nào trong bốn lỗ hổng này, nên CryptoKitties ethereum nổi tiếng hiện đang có xếp hạng bảo mật A + trên Amberdata. Kỹ sư phần mềm CryptoKitties Fabiano Soriani quy định điều này cho việc thực hiện càng nhiều thử nghiệm càng tốt.

Thêm vào đó các tài nguyên thụ động của người Viking, chẳng hạn như tài liệu bằng văn bản và hướng dẫn bằng video về phát triển dapp là không đủ để xây dựng các ứng dụng an toàn trên ethereum, Soriani nói với CoinDesk:

Cứu Khi ai đó thực hiện kiểm toán, họ chỉ ra những điều cho bạn. Nó có một nguồn tài nguyên bổ sung rất tốt [to passive resources] bởi vì các nhà phát triển đến từ một nền tảng truyền thống hơn aren quen thuộc với blockchain. [[9009003]

’s Nó Hầm một loạt vấn đề mới

Thật vậy, khi nói đến việc xây dựng các dapps, tầm quan trọng của việc kín gió, mã không thể xuyên thủng không thể được đánh giá cao. Lý do cốt lõi cho điều này là hai lần.

Đầu tiên, không giống như các ứng dụng truyền thống, dapps nói chung là các chương trình máy tính nguồn mở và như Morriss giải thích, một mức độ thận trọng nâng cao là bắt buộc khi chạy mã công khai.

nếu có bất kỳ lỗi nào trong ứng dụng truyền thống, bạn có thể thoát khỏi nó trong vài năm, nhưng nếu bạn gặp lỗi trong hợp đồng thông minh, mọi người sẽ tìm thấy nó một cách nhanh chóng và tận dụng nó sự phá hủy của bạn hoặc vì lợi ích của họ, ông Morriss nói.

Thứ hai, dapps trên ethereum chạy độc quyền trên các hợp đồng thông minh. Được mã hóa đặc biệt trong ngôn ngữ lập trình Solidity và được thực thi trong trung tâm thần kinh blockchain, được gọi là Máy ảo Ethereum (EVM), một điểm mạnh của các dapps là chúng có thể được thay đổi.

Nhược điểm này là rõ ràng. Các lập trình viên không dễ dàng có thể sửa các lỗi hoặc lỗi trong phần mềm một khi được triển khai trên blockchain.

Gọi đó là một lỗi nghiêm trọng của Tử vi để bỏ qua kiểm toán bảo mật của bên thứ ba hoặc quét vì những lý do này, Morriss nói với CoinDesk, điều quan trọng đối với các nhà phát triển là không trở thành nạn nhân của chính họ. nhánh mã của bạn. |

Qua với ethereum, nó có một loạt vấn đề mới mà mọi người không biết khi mã hóa trong Solidity, đã nhấn mạnh Espanol vào CoinDesk.

Lập trình hình ảnh qua Shutterstock

        



Nguồn bitcoinmagazine