Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
File nén ZIP có cài mật khẩu là phương thức phổ biến để nén và chia sẻ các file một cách an toàn, từ dữ liệu nhạy cảm đến mã độc...
Tuy nhiên, bạn có biết rằng một file ZIP có thể có tới 2 mật khẩu chính xác và cả hai đều tạo ra cùng một kết quả khi file ZIP được giải nén?
Arseniy Sharoglazov, một nhà nghiên cứu an ninh mạng tại Positive Technologies, đã chia sẻ vào cuối tuần qua một thử nghiệm tưởng đơn giản nhưng lại khá thần kỳ. Trong đó, anh tạo ra một file ZIP được bảo vệ bởi mật khẩu có tên x.zip.
Mật khẩu mà Sharoglazov chọn để mã hóa file ZIP là một cách chơi chữ của bản hit Never Gonna Give You Up năm 1987 của Rick Astley, thứ đã trở thành một meme phổ biến trong làng công nghệ:
Nev1r-G0nna-G2ve-Y8u-Up-N5v1r-G1nna-Let-Y4u-D1wn-N8v4r-G5nna-D0sert-You
Nhưng nhà nghiên cứu còn chứng minh rằng khi giải nén file x.zip bằng một mật khẩu hoàn toàn khác, anh không hề gặp bất cứ lỗi nào.
Trên thực tế, việc sử dụng mật khẩu khác cho phép trích xuất thành công file ZIP, nội dung ban đầu còn nguyên vẹn:
pkH8a0AqNbHcdw8GrmSp

Làm thế nào mà Sharoglazov có thể sử dụng hai mật khẩu cho một file ZIP? Một người dùng Twitter có tên Unblvr giải thích: Khi tạo một file ZIP có mật khẩu với chế độ AES-256 được bật, định dạng ZIP sử dụng thuật toán PBKDF2 và băm mật khẩu do người dùng cung cấp, nếu mật khẩu quá dài. Mật khẩu trên 64 bytes (ký tự) sẽ là quá dài.
Lúc đó, thay vì mật khẩu đã chọn của người dùng (trong trường hợp này là "Nev1r-G0nna-G2ve-...", hàm băm mới vừa được tính toán sẽ trở thành mật khẩu thực sự của file.
Khi người dùng giải nén file và nhập mật khẩu dài hơn 64 bytes ("Nev1r-G0nna-G2ve-..."), những gì người dùng nhập vào một lần nữa sẽ được ứng dụng ZIP băm và so sánh một lần nữa với mật khẩu chính xác (mật khẩu giờ đây là một hàm băm). Kết quả so sánh phù hợp nên việc trích xuất tệp thành công.
Mật khẩu thay thế được sử dụng trong ví vụ này ("pkH8a0AqNbHcdw8GrmSp") trên thực tế là biểu diễn ASCII của hàm băm SHA-1 của mật khẩu dài ("Nev1r-G0nna-G2ve-...").
Checksum SHA-1 của "Nev1r-G0nna-G2ve-..." = 706b4838613041714e62486364773847726d5370.
Checksum này sau khi được chuyển đổi thành ASCII sẽ tạo ra: pkH8a0AqNbHcdw8GrmSp.
Tuy nhiên, bạn cần lưu ý rằng khi mã hóa hoặc giải mã một file, quá trình băm chỉ xảy ra nếu độ dài của mật khẩu lớn hơn 64 ký tự.
Nói cách khác, mật khẩu ngắn hơn sẽ không được băm ở cả hai giai đoạn nén và giải nén file ZIP.
Dẫu vậy, bạn cần phải chú ý rằng không phải lúc nào biểu diễn ASCII của hàm băm SHA-1 của một mật khẩu dài cũng là chuỗi ký tự và số. Đôi khi, nó tạo ra một tập hợp các byte vô nghĩa, không thể nhập được vào ô mật khẩu.
Chính Sharoglazov cũng phải sử dụng một công cụ khôi phục mật khẩu nguồn mở hashcat với một chút sửa đổi để tìm ra mật khẩu có biểu diễn ASCII hợp lý. Anh đã thử các biến thể "Nev0r, Nev1r, Nev2r..." cho tới khi tìm ra mật khẩu sạch chỉ bao gồm các ký tự và số (pkH8a0AqNbHcdw8GrmSp).
Với người dùng thông thường, việc sử dụng file ZIP với mật khẩu là đã đảm bảo được sự an toàn. Tuy nhiên, thử nghiệm này cung cấp cho bạn cái nhìn về một trong những bí ẩn xung quanh việc file ZIP được mã hóa cũng như cách làm thế nào để có 2 mật khẩu cho file ZIP của bạn.
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Cách tắt app chạy ngầm Windows 11, giảm ngốn RAM trên Win 11
Câu nói hay nhất về tháng 11, chào tháng 11
TOP công cụ AI tạo tài liệu tốt nhất
Cách xây dựng plugin trong ChatGPT
Hướng dẫn tự thiết kế website Portfolio bằng Claude
5 thiết kế ChatGPT + Canva đáp ứng hầu hết các nhu cầu trong cuộc sống
Những công cụ AI tốt nhất giúp giải toán dễ dàng
Hướng dẫn kết nối Booking.com với ChatGPT lên kế hoạch du lịch
15 prompt Gemini tạo ảnh sinh nhật đẹp nhất
Cách tắt bộ nhớ an toàn trên Messenger
Hướng dẫn kết nối Claude với Figma thiết kế giao diện website
Hướng dẫn sử dụng Canva Grow tạo quảng cáo với AI
TOP phần mềm quay màn hình có hỗ trợ AI
Khóa chat trong ChatGPT: cách bật mã PIN, mở khóa và những giới hạn cần biết
4 lầm tưởng về AI trong công việc và cách kiểm chứng
Mẹo giao việc nhiều bước cho ChatGPT Agent và kịch bản bạn có thể thử
Những lời chúc đầu tuần hay cho cả 7 ngày may mắn
ChatGPT Dots là gì? Cách hoạt động, giá và những điều cần cân nhắc
Karaoke Khóc (Midi)
TOP công cụ AI viết truyện ma, truyện kinh dị hay nhất
Hướng dẫn cài đặt và sử dụng n8n trên Windows 11
Cách lập trình chuyên nghiệp hơn, dễ dàng hơn với tính năng Tệp trên Grok
Công thức tính diện tích hình Elip
Hướng dẫn ngắt kết nối ứng dụng trên ChatGPT
Hướng dẫn tạo đoạn hội thoại cho topic trên Twee
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
Cách sửa lỗi There Are Currently No Power Options Available Windows
Claude Code thực sự có giá bao nhiêu?
Hướng dẫn 8 cách mở bàn phím ảo trên Windows 10
Hướng dẫn tạo flashcard trên Canva AI