V/v Unhide module

tester777

Yêu THVBA
Chào mọi người,

Mình đang ngâm cứu một số vấn đề liên quan đến bảo mật VBA. Hiện nay có một vấn đề mình chưa tìm thấy tài liệu nào để nghiên cứu. Đó là: Làm sao để Unhide 1 module?

Rất mong được các bạn hướng dẫn. Hoặc có thể định hướng, chỉ dẫn tài liệu cho mình tự nghiên cứu cũng được. Mình có background cơ bản về IT, biết code, biết reverse ở mức độ cơ bản.

Bản tính vốn tò mò thôi chứ không có gì cả. Trước đây mình từng sinh hoạt ở HVA, REA. Cũng mày mò tìm hiểu nhiều lắm. Bỏ nghề 15 năm nay rồi nên kiến thức có hơi hụt. Rất mong các bạn chỉ bảo.
 

tuhocvba

Administrator
Thành viên BQT
Bạn tham khảo topic này:
 

tester777

Yêu THVBA
Bạn tham khảo topic này:
Cảm ơn admin. Mình mới reg nick thôi chứ mình cày forum tuhocvba cũng một thời gian rồi.

Mình đã đọc topic bạn gửi. Mình nhận thấy có một vấn đề đó là phải biết được tên chính xác ban đầu mới có thể unhide. Như vậy, làm sao để biết được tên đó? Mình có thử đào bới trong vbaProject.bin nhưng không thấy tên được lưu ở chỗ nào nữa.

Rất mong bạn hướng dẫn thêm.
 

lyly

Nghiện THVBA
Mò mấy cái dll, exe hay unpack cho vui mấy cái module VBA này có gì đâu mà mò !
 

tuhocvba

Administrator
Thành viên BQT
Tôi nhớ là USA-Covid19 trước đây đã cung cấp tool, mà ở tool này show hết tên module ra.
 

tester777

Yêu THVBA
Mò mấy cái dll, exe hay unpack cho vui mấy cái module VBA này có gì đâu mà mò !
Rất mong được bạn lyly chỉ bảo thêm. Công việc giờ đụng cái gì thì học cái đó thôi bạn. Ngày xưa sinh viên, tỷ phú thời gian thì làm này làm nọ. Giờ mình học, làm vừa vừa đủ thôi bạn à.
 

tester777

Yêu THVBA
Tôi nhớ là USA-Covid19 trước đây đã cung cấp tool, mà ở tool này show hết tên module ra.
Cảm ơn admin. Mình đã thử dùng tool này. Nó có thể list ra các tên các module ẩn được thật. Nó cũng có thể unhide được các module đó. Nhưng khi bấm vào để xem code của các module đã được unhide thì vẫn bị lỗi trắng tinh (giống như kiểu bị treo, nhưng thực tế lại không treo) .

Dù sao đây cũng là một bước tiến rất lớn. Mình sẽ ngâm cứu cái tool unhide này. Trong lúc này, nếu có được một vài lời vàng ngọc của các bạn hướng dẫn xem tại sao dù đã unhide được nhưng code vẫn không thể xem được thì thật là tốt.
 

tester777

Yêu THVBA
Click vào Tên module nó hiện ra hết. Thấy triển vọng, mình click vào Hiện module nó cũng xử luôn dc. Mở file đã xử ra nó hiện ra hết. Tuy nhiên khi click vào từng module nó chỉ hiện ra như này:

Bạn cần đăng nhập để thấy hình ảnh


Bấm vào là nó hiện ra cửa sổ code nhưng không thấy nội dung.
 

Euler

Administrator
Thành viên BQT
@tester777
Bạn có thể ghi lại màn hình, tạo video upload lên youtube và kéo link về đây thì dễ hình dung hơn.
Cho tới thời điểm hiện tại, Tool của bạn USA-Covid 19 đang được đánh giá là mạnh, có khả năng công phá rất cao. Nên chúng tôi cũng rất quan tâm vấn đề mà bạn nêu, nhưng nếu không ghi lại video chỉ rõ bạn làm như nào, hiện tượng gặp phải là gì, thì rất khó để phán đoán thêm.
 

tester777

Yêu THVBA
Mình gửi mọi người video như bên dưới:

Bạn cần đăng nhập để thấy đa phương tiện

Thật ra có tool trong tay nhưng mình vẫn chưa thoả mãn lắm. Vì mình chưa hiểu được nguyên lý phía sau đó. Có bạn nào có thể chỉ cho mình nguyên lý của việc unhide này được không? Làm sao có thể xem được tên các module đã bị ẩn?

Xin cảm ơn!
 

lyly

Nghiện THVBA
Trong video trên sở dĩ không xem được code là vì các module đó chưa chuẩn theo qui định của MS không phải bị treo gì cả ! Vì tên module đã bị làm rối nên phần mềm tìm chưa chính xác tên module gốc !
 

lyly

Nghiện THVBA
Còn vấn đề tìm tên module gốc bằng code là rất khó ! Phần mềm chỉ đáp ứng đúng trong một số trường hợp chứ không phải tất cả !
 

tester777

Yêu THVBA
Còn vấn đề tìm tên module gốc bằng code là rất khó ! Phần mềm chỉ đáp ứng đúng trong một số trường hợp chứ không phải tất cả !
Bạn có thể chia sẻ cách làm thủ công được không? Mình cũng nghĩ là tool ko thể cover hết các exceptions được. Mình tự làm bằng tay thì sẽ biết ra quyết định tuỳ tình huống.
 

Euler

Administrator
Thành viên BQT
Hơ, vậy là cứ làm rối tên module là từ nay kê gối cao ngủ, đúng không @lyly
 

tester777

Yêu THVBA
Mình tìm được tool bao xịn luôn: OfficeMalScanner :

Cách dùng: Extract file vbaProject.bin ra. Dùng tool trên với option "info". Nó sẽ dump ra hết code, module name các thứ hầm bà lằng. Xịn và đẹp luôn.

Nguyên tắc thì các bạn đọc mấy tài liệu mô tả này từ Microsoft là sẽ rõ. Bản chất code được lưu trong các stream trong VBA Project :
(đọc từ cái này trước)

Chúc các bạn may mắn.

Về cơ bản, không được pack, encrypt gì thì file excel luôn giơ bụng ra cho người ta xiên. Không có cách nào bảo vệ đựoc cả.

Tips: với các file bị ẩn module, các bạn vẫn có thể patch được code nếu đoán được tác giả viết gì. VD if registered thì thực hiện hành động abc. Mình ctrl F, replace thành if unregistered thực hiện hành động abc là cũng xong :v . Ctrl F để tìm kiếm thì bị treo máy (vì ẩn rồi). Nhưng replace vẫn chạy ngon lành nha.
 
Sửa lần cuối:
Top