Cách kiểm tra tính xác thực của phần mềm Windows bằng chữ ký số

Mỗi khi tải xuống một chương trình từ Internet, bạn buộc phải tin tưởng vào nhà phát triển rằng đó không phải là phần mềm độc hại. Không có cách nào khác. Nhưng thông thường, đây không phải là một vấn đề, đặc biệt là với các nhà phát triển và phần mềm nổi tiếng.

Tuy nhiên, các trang web lưu trữ phần mềm dễ bị tấn công hơn. Kẻ tấn công có thể phá hoại bảo mật của một trang web và thay thế các chương trình bằng phiên bản độc hại của chúng. Phiên bản độc hại trông giống và hoạt động chính xác như bản gốc, ngoại trừ nó có một backdoor được chèn vào. Với backdoor này, kẻ tấn công có thể kiểm soát các phần khác nhau của máy tính. Máy tính của bạn sẽ bị chèn vào botnet hoặc tệ hơn, phần mềm độc hại sẽ đợi cho đến khi bạn sử dụng thẻ tín dụng/thẻ ghi nợ của mình và đánh cắp thông tin đăng nhập. Bạn nên đặc biệt cẩn thận khi tải xuống phần mềm quan trọng như hệ điều hành, ví tiền điện tử hoặc các phần mềm tương tự khác.

Chữ ký số có thể bảo vệ bạn trong thời buổi hiện nay

Những người viết phần mềm có thể “ký” vào sản phẩm của họ. Trừ khi kẻ tấn công có thể đánh cắp private key của người viết phần mềm, nếu không sẽ chẳng có cách nào để ai đó có thể giả mạo chữ ký này. Có rất nhiều trường hợp hàng ngàn người dùng đã tải xuống các chương trình độc hại và trong hầu hết mọi trường hợp, nếu họ kiểm tra chữ ký điện tử, họ sẽ nhận thấy rằng chúng không hợp lệ và có thể tránh được tình huống này. Tương đối dễ dàng để thay thế phần mềm trên một trang web dễ bị tấn công nhưng cực kỳ khó để đánh cắp một private key được lưu trữ và cách ly đúng cách khỏi truy cập Internet.

Bạn có thể đọc nhiều hơn về chữ ký số trong bài viết: Cách kiểm tra tính xác thực của phần mềm Linux bằng chữ ký số. Bài viết này thảo luận điều tương tự, ngoại trừ bạn sẽ sử dụng những tiện ích Windows để xác thực các bản tải xuống.

Cách sử dụng Gpg4win để xác minh chữ ký số

Tải xuống và cài đặt Gpg4win. Những người thông minh sẽ tự hỏi làm sao biết chắc phần mềm này là hợp pháp. Đây là một câu hỏi hay và nếu trang tải xuống này bị phá vỡ, thì tất cả các bước sau đó sẽ vô ích.

May mắn thay, nhà phát triển Gpg4win đã trải qua tất cả những khó khăn để phần mềm của mình được ký bởi cơ quan cấp chứng chỉ, và nêu chi tiết các bước để xác minh chương trình của mình trên trang web. Mặc dù mật mã tương tự được sử dụng để kiểm tra tính hợp lệ, nhưng phương pháp tổng thể sẽ khác nhau. Giấy chứng nhận kỹ thuật số được sử dụng cho việc này.

Xác nhận checksum file

Giả sử bạn muốn tải xuống ví Bitcoin Core. Tải xuống file thực thi Windows x64 (exe, không phải zip). Sau đó, nhấp vào “Verify release signatures” để tải về file SHA256SUMS.asc. Bước đầu tiên là xác minh hash của file thiết lập.

Chuyển đến thư mục tải xuống và với Gpg4win được cài đặt, giờ đây bạn có thể nhấp chuột phải vào một file và menu ngữ cảnh mới sẽ xuất hiện. Nhấp chuột phải vào file cài đặt Bitcoin (exe bạn đã tải xuống) và chọn More GpgEX Options > Create checksums, giống như trong hình dưới đây.

Xác nhận checksum file

Mở cả 2 file sha256sum.txt đã được tạo và SHA256SUMS.asc đã tải xuống. So sánh checksum SHA256 và chúng nên giống nhau.

Mở cả 2 file sha256sum.txt đã được tạo và SHA256SUMS.asc đã tải xuống

Kiểm tra chữ ký file liệt kê checksum

Mặc dù bạn vừa tải xuống file thiết lập và danh sách checksum từ cùng một trang web, nhưng nếu kẻ tấn công thay thế file thiết lập, hắn ta cũng có thể dễ dàng thay thế danh sách checksum. Tuy nhiên, hacker không thể giả mạo chữ ký. Điều đó có thể được xác nhận bởi một public key (hợp pháp) đã biết. Đầu tiên, bạn cần tải key này.

Hình ảnh chữ ký trông giống như sau:

Hình ảnh chữ ký

Đây là một chữ ký nội tuyến (bao gồm trong cùng một file mà nó xác nhận). Đôi khi chữ ký này sẽ được tách ra và đặt trong một file riêng biệt. Nếu bạn thay đổi chỉ một chữ cái trong file văn bản này, chữ ký sẽ không hợp lệ nữa. Đây là một cách để biết chắc rằng nhà phát triển đã phê duyệt và ký các nội dung chính xác, cụ thể này với đúng checksum.

Nhập public key dành cho nhà phát triển

Bạn có các public key có sẵn để tải xuống trong phần “Bitcoin Core Release Signing Keys” trên trang tải xuống của Bitcoin. Để đề phòng, bạn có thể tải chúng từ một nguồn khác. Nếu kẻ tấn công thay thế các key hợp pháp bằng private key của mình, bạn sẽ tìm thấy các key (và fingerprint) chính xác ở tất cả các địa điểm khác, nơi chúng đã được đăng hoặc thảo luận.

Nhấp chuột phải vào SHA256SUMS.asc và chọn Decrypt and Verify. Chương trình sẽ cho bạn biết bạn không có public key. Nhấp vào Search.

Nhấp vào Search

Việc tìm kiếm có thể mất một lúc. Lưu ý chuỗi trong trường Find.

Lưu ý chuỗi trong trường Find

Bạn có thể sao chép và dán vào Google để xem fingerprint public key đã được thảo luận trên các trang web hoặc diễn đàn hợp pháp. Càng nhiều địa điểm bạn tìm thấy public key này, bạn càng có thể chắc chắn rằng nó thuộc về chủ sở hữu hợp pháp.

Bấm vào key và sau đó nhập nó. Bạn có thể nhấp vào No trong lời nhắc bạn nhận được tiếp theo (thực hiện các biện pháp để xác nhận key), nếu bạn không biết cách hoặc không muốn làm điều này ngay bây giờ.

Cuối cùng, nhấp vào Show Audit Log.

Nhấp vào Show Audit Log

Bạn sẽ thấy phần văn bản Good signature được highlight trong hình ảnh tiếp theo.

Good signature được highlight

Hãy thử thay đổi chỉ một chữ cái trong SHA256SUMS.asc, và bạn sẽ nhận được kết quả như được mô tả trong hình ảnh sau đây.

Hãy thử thay đổi chỉ một chữ cái trong SHA256SUMS.asc

Rất ít nhà phát triển cung cấp cho bạn khả năng kiểm tra xem phần mềm có đến từ chính họ không. Nhưng thông thường các chương trình xử lý dữ liệu nhạy cảm hoặc rất quan trọng sẽ cung cấp cho bạn tùy chọn này. Hãy sử dụng tùy chọn kiểm tra chữ ký số và nó có thể cứu bạn khỏi rắc rối một ngày nào đó.

Chúc bạn thực hiện thành công!

Thứ Năm, 13/06/2019 14:02
31 👨 123