Bình luận

Bảo mật trong Excel

Có thể nói rằng Excel đã trở nên rất gần gũi với người sử dụng máy tính phục vụ công việc chuyên môn. Khi đã khai thác sâu về Excel, nhu cầu bảo mật (hay bảo vệ) dữ liệu trong Excel đã trở nên rất cần thiết, có khi chỉ là chống người khác vào sửa đổi, ăn cắp dữ liệu hay là những dữ liệu quan trọng, chương trình ứng dụng trong Excel. Có nhiều trường hợp, chỉ cần sự rò rỉ thông tin do khả năng bảo mật dữ liệu kém đã ảnh hưởng đến nghề nghiệp hay sự phát triển của công ty mình. Do đó, nhu cầu bảo mật dữ liệu của file Excel là chính đáng khi sự phát triển của CNTT rất mạnh mẽ, chúng ta có thể thấy rõ khi vào các diễn đàn lớn trong và ngoài nước tìm hiểu về vấn đề này. Chính vì vậy mà tôi đặt ra chủ đề này để mong sao bạn có thể bảo vệ được dữ liệu của mình thật an toàn, không sợ người khác nhòm ngó, phá hoại, ăn cắp dữ liệu. Bài viết này chỉ là quan điểm cũng như khả năng hiểu biết của tôi, vì vậy cần sự trao đổi và đóng góp của các cao thủ tin học khác. Đầu tiên phải phân loại cách bảo mật trong Excel, đó là bảo mật để khi mở file hay bảo mật khi làm việc với file được mở.

Đầu tiên phải phân loại cách bảo mật trong Excel, đó là bảo mật để khi mở file hay bảo mật nội dung bên trong file được mở.

I. Bảo mật khi mở file:
Trong trường hợp file đó chỉ riêng mình sử dụng thì việc bảo mật không quá khó. Chỉ cần tạo password để mở file nhờ chức năng sẵn có của Excel là có thể bảo vệ một cách an toàn, hiệu quả. Việc bẻ khoá những file có password không hề đơn giản, nhất là khi password dài và nhiều loại ký tự. Các phần mềm dò password hiện nay chủ yếu dựa vào cách thử lần lượt từng password một cho đến khi trùng với password được đặt. Tuỳ loại file mà tốc độ dò tìm password sẽ khác nhau, có thể rất nhanh hoặc rất chậm. Như vậy, tôi có rút ra được kinh nghiệm bảo mật mở file như sau:
- Tạo password càng dài càng khó mở khoá (bao gồm cả số, chữ, ký tự đặc biệt) thì càng khó mở khoá, thời gian dò tìm password sẽ lâu. Tránh trường hợp chỉ dùng số hoặc chữ vì người khác dễ dàng nhìn thấy, từ đó có thể lựa chọn phương pháp tìm kiếm nhanh nhất. Tốt nhất là password có độ dài lớn hơn 9 ký tự. Nhưng cần lưu ý là bạn phải nhớ được password, nếu quên thì bạn cũng phải ngồi khóc thôi!!!
- Sử dụng các file Excel đời sau (mới nhất) sẽ vừa giảm dung lượng, vừa tốc độ tìm kiếm chậm đi.

1) Bảo vệ file, chỉ cho xem nhưng không cho sửa nội dung (nếu không nhập đúng mật khẩu hoặc chọn Read Only):
- Đầu tiên cần mở file cần bảo mật, sau đó bấm vào nút Microsoft Office Button hoặc Menu FILE và chọn Save As (hoặc bấm phím tắt là F12).
- Trong cửa sổ Save As bấm vào nút Tools và chọn General Options...
- Trong cửa sổ General Options... gõ password để mở và password để sửa.
* Hoặc đối với excel phiên bản mới có thể vdungf cách này:
+ Vào menu FILE, chọn Info, chọn Protect Worbook, chọn Encrypt password và gõ password cần bảo vệ vào ok.
+ Sau đó lưu lại hoặc bấm Ctrol+S.
- Bấm vào Save trong cửa sổ Save As... Excel sẽ hỏi ghi đè lên file cũ hay không? Chọn Yes nếu ghi đè hoặc chọn No để không ghi đè, ở trường hợp này bạn phải chuyển thư mục khác để lưu lại. Công việc bảo mật thành công, từ bây giờ trở đi để mở file để sửa phải nhập đúng password hoặc chỉ được xem nhưng không sửa đổi nội dung.

2) Bảo vệ file (nếu không nhập đúng mật khẩu sẽ không cho mở file):
- Tương tự như các bước trên nhưng trong mục Password to Open gõ password để mở.
- Bấm vào Save trong cửa sổ Save As... Excel sẽ hỏi ghi đè lên file cũ hay không? Chọn Yes nếu ghi đè hoặc chọn No để không ghi đè, ở trường hợp này bạn phải chuyển thư mục khác để lưu lại. Từ bây giờ trở đi để mở file phải nhập đúng password, nếu không gõ đúng password sẽ không mở được.

II. Bảo mật nội dung bên trong file được mở.
Đây là trường hợp phổ biến vì 1 file có thể nhiều người cùng sử dụng. Do đó tạo password để mở là không khả thi. Khi đó, cách bảo mật trong trường hợp này khó khăn hơn nhiều. Ví dụ như kẻ trộm có thể gặp khó khăn khi phá cửa chính vào ăn trộm (như trường hợp trên), nhưng khi đã vào được trong nhà rồi thì việc vào từng phòng ăn trộm sẽ dễ dàng hơn. Với trường hợp bảo mật khi đã mở file ra trong Excel hay Word cũng tương tự.
Trường hợp này được chia thành 2 loại: bảo mật bảng tính bình thường và bảo mật VBA. Các cách bảo mật này không cho phép người khác biết được nội dung tính toán trong bảng tính, các hàm và thủ tục trong VBA,...

1. Bảo vệ sheet:
 a) Bảo vệ sheet bằng password:
Hoặc thao tác trực tiếp bằng cách này:
Khi chọn cách này thì xuất hiện cửa sổ Protect Sheet với nội dung bảo vệ và password để mở. Nội dung bảo vệ gồm một số chức năng chính sau:
- Select locked cells: Cho phép (hoặc không cho phép) chọn ô đã bảo vệ. Để xác định những ô cần bảo vệ thì chọn những ô đó, sau đó bấm Ctr + 1 để hiện cửa sổ Custom List, chọn Protection và đánh dấu vào mục Locked. Nếu không đánh dấu mục Locked thì ô sẽ không được bảo vệ, đó thường là những ô nhập liệu ban đầu.
- Select unlocked cells: Cho phép (hoặc không cho phép) chọn ô không bảo vệ.
- Format cells: Cho phép (hoặc không cho phép) thay đổi định dạng của ô.
- Format rows: Cho phép (hoặc không cho phép) thay đổi định dạng của một hàng.
- Format columns: Cho phép (hoặc không cho phép) thay đổi định dạng của một cột.
- Insert rows (columns): Cho phép (hoặc không cho phép) thêm hàng (cột).
- Delete rows (columns): Cho phép (hoặc không cho phép) xoá hàng (cột).
 b) Mã hóa dữ liệu trong sheet:
Với Add-in KTExcel hoặc 1 số phần khác có chức năng mã hóa nội dung...

2. Bảo vệ Workbook:
Hãy vào nnnnn để bqor vệ sheet....
3. Bảo vệ nội dung code VBA
 a) Bảo vệ yêu cầu mật khẩu dể mở cửa sổ VBA, theo cách thông thường
Hiện nay nhiều người đã sử dụng bảng tính kết hợp với lập trình VBA để khai thác sâu hơn, mạnh hơn Excel trong công việc chuyên môn. Nhiều sản phẩm ứng dụng đó có giá trị và có thể kinh doanh được, do đó việc bảo mật là rất cần thiết.
Thông thường để bảo mật VBA Project, trong cửa sổ Microsoft Visual Basic for Applications (MVB) có thể bấm phím tắt Alt+F11 để vào, vào tiếp menu Tools, chọn ... Project Properties. Cửa sổ ... Project Properties hiện ra, chọn mục Protection, tick vào Lock project for viewing, sau đó nhập password 2 lần để bảo vệ. Và từ đó, bạn phải nhập password mới mở được cửa sổ MVB để xem hay làm việc với VBA
 b) Bảo vệ code chế độ chống xem code (Project is unviewable)
* Chúng ta sử dụng chức năng Share Workbook, để bảo mật khóa VBA chống xem code nếu cố tình truy cập sẽ hiện thông báo (Project is unviewable). Khi chọn chức năng này, cửa sổ Share Workbook hiện ra như hình dưới.
Trong mục Editing, tick vào Allow changes.... Chuyển sang mục Advanced, chọn Don't keep change history, sau đó bấm OK!
Tiếp theo bấm OK nhiều lần để xác nhận! Chức năng Share Workbook đã được thiết lập, việc bảo mật VBA đã thành công!!!
Khi bạn chuyển sang cửa sổ MVB và chọn Project, thay vì cửa sổ hỏi password là cửa sổ Project is unviewable! Các phần mềm bẻ khoá hiện nay vẫn có thể tìm được password nhưng không thể mở được cửa sổ nhập password (theo cách thông thường).

(*) Lợi bất cập hại! Khi sử dụng chức năng Share Workbook, một số chức năng của Excel bị hạn chế. Một số chức năng bị hạn chế khi sử dụng Share Workbook như sau:
- Không xóa được Sheet
- Không ẩn được Sheet
- Không copy được Sheet
- Không ghép và chia được ô (Merge cells)
- Không cho thay đổi định dạng có điều kiện (Conditional Formatting)
- Không cho thay đổi chức năng Data Validation
- Không cho vẽ các đối tượng lên bảng tính (như chèn ảnh, biểu đồ,...)
- Không cho thiết lập, xoá hoặc thay đổi password bảo vệ bảng tính
- Không cho tự động tính tổng Subtotal
- Không cho tạo hoặc thay đổi báo cáo PivotTable ...
Chính vì vậy cần cân nhắc khi sử dụng chức năng này, nên test lại các chức năng của chương trình nếu đặt chế độ bảo mật kiểu này. Ở chế độ Share Workbook, chức năng Protect Sheet vô tác dụng (bị mờ đi), vì vậy cũng dùng cách này để bảo vệ bảng tính. Nhiều chương trình trong Excel hiện nay sử dụng chức năng Share Workbook để bảo mật. Tuy nhiên bảo mật kiểu này hiện nay cũng không còn an toàn nữa.

* Nếu trên file không có chức năng Share Workbook thì tôi hướng dẫn làm Project is unviewable thông qua thủ thuật như sau:
+ Bước 1: Bước chuẩn bị, Trên máy phải có chương trình giải nén (thường dùng là Winrar) và chương trình Winhex để đọc file mã hex.
+ Bước 2: Đổi đuôi file (phần mở rộng) sang định dạng .ZIP.

+ Bước 3: Mở file .ZIP lên vào thư mục \xl, chọn file vbaProject.bin copy hoặc kéo ra ngoài.
+ Bước 4: Khởi động phần mềm WINHEX và chọn open, tìm đến đường đãn chứa file vbaProject.bin và mở lên.
+ Bước 5: Bấm Ctrol+F và gõ chữ ID="{ để tìm kiếm chuổi này.
+ Bước 6: Thay thế 1 ký tự sau chuổi ID="{ thành 1 ký tự số khác, như ví dụ trên tôi thay số 9 thành số 0 sau đó lưu lại.
+ Bước 7: Khi lưu xong, ta kéo file vbaProject.bin bên ngoài vô trong file .ZIP, nếu có hiện thông báo ghi đè thì bấm OK để đồng ý, sau đó đong file .ZIP lại.
+ Bước 8: Tiếp tục đổi lại tên file .ZIP về đuôi file ban đầu, bấm OK để chấp nhận.
+ Bước 9: Tiếp tục mở file excel sau khi đổi phần mở rộng và kiểm tra sẽ không mở được code trong cửa sổ VBA và hiện bảng thông báo như sau:
Xin nhắc lại tất cả các khóa kiểu trên chỉ khóa, làm khó khăn đối với các bạn nghiệp còn dư thôi, còn nhưng bạn có kiến thức nhiều hơn thì sẽ không gây khó khăn gì. Vì vậy tôi xin giới thiệu tiếp phần mềm bảo vệ bảng tính mạnh mẽ hơn, chuyên nghiệp hơn và có vẽ an an toàn hơn ở phần III.

III. Bảo mật file bằng phần mềm chuyên dụng:
Do khả năng bảo mật yếu kém của Excel mà một loại phần mềm chuyên bảo mật Excel đã ra đời, đáng kể trong số này là Excel Protect, Lockxls,.... Và sau đây tôi đi vào giới thiệu 2 phần mềm chuyển bảo vệ file excel:

1. Lockxls
Chi tiết:
  • Hide formulas and VBA Code
  • Add Copy Protection Options
  • All Excel features are supported
  • Convert Excel Workbook to application
  • No programming required
  • Create MSI package to deploy your workbooks
Để sử dụng và trải nghiệm các bạn có thể tải tại đây https://lockxls.com.
2. Vbacompiler
Chi tiết:
  • VBA password protection.
  • Unviewable VBA Project.
  • VBA obfuscation.
  • Protect VBA code by Translating it to another programming language.
  • VBA to Visual Basic 6 (VB6).
  • VBA to VB.NET.
  • VBA to C or C++.
  • Protect VBA code with VbaCompiler for Excel.
  • Access control to Compiled VBA methods.
  • Encryption of all text literals.
Để sử dụng và trải nghiệm các bạn có thể tải tại đây https://vbacompiler.com/.
3. XlCompiler
Chi tiết:
  • Compile Excel file to EXE
  • Benefits of Spreadsheet Compiler
  • Protect worksheet formulas
  • Protect VBA macros
  • Add your EULA
  • Your own Ribbon
  • Copy protection options
  • Easy to learn and use
  • No programming.
Để sử dụng và trải nghiệm các bạn có thể tải tại đây https://xlcompiler.com.
Tóm lại, việc bảo mật Excel như các cách trên hiện nay chưa phải là an toàn tuyệt đối. Do đó để đảm bảo an toán hữu hiệu hơn nữa thì các bạn nên chuyển qua lập trình từ các ngôn ngữ khác để tạo các file Add-in hỗ trợ cho Excel là file .DLL, .XLL... trên các ngôn ngữ lập trình như là C++, Delphi...

3 nhận xét

  1. Cám ơn bạn đã trình bày.
    Phương pháp bảo mật như vậy là tốt lắm rồi.
    Để mình test thử xem.
  2. Chương trình này có ngăn chặn "hack vba excel" bằng "vba excel" không nhỉ???
    ;))
  3. Nói về bảo mật đối với Excel thì chỉ là tạm thời thôi, không phải là tuyệt đối, cụ thể chỉ để lừa những bạn nào còn chưa chuyên nghiệp thôi bạn a.
Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.

Thông báo