首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Excel VBA密码通过十六进制编辑器

Excel VBA密码通过十六进制编辑器
EN

Stack Overflow用户
提问于 2014-03-26 06:18:30
回答 4查看 216.6K关注 0票数 36

过去,我曾多次使用“十六进制编辑器将DPB修改为DPx”来绕过旧Excel项目(.xls)上的VBA项目安全性,所以我肯定知道如何做,并且知道我能做到。

然而,我昨天才试着去做,发现它似乎不再起作用了。我尝试使用Excel 2011 (Mac)和Excel 2003 (Windows),在这两种情况下,我都有相同的行为;

打开VBA编辑器会发出一条消息,表示项目已损坏,项目将被删除。然后,VBA编辑器打开,果然,所有的VBA都从模块和工作表中删除。

我已经尝试过这个方法:Is there a way to crack the password on an Excel VBA Project? (即。创建具有已知密码的电子表格,然后跨相关字段进行复制)

但是发现在我的‘虚拟’电子表格上创建的"GC“键的长度比我希望访问的电子表格(”目标“)上的"GC”键的长度要短。我在其他地方读到,在“目标”键较长的情况下,您可以将“虚拟”键按相同的长度,但在相反的情况下,我找不到该做什么。

所以-我的问题;

  • 是否有人知道是否已经应用了使“十六进制编辑器”方法无效的修补程序?
  • 当虚拟键比目标键长时,有人能帮上忙吗?
  • 其他人能提供任何关于这个问题的现场更新吗?

编辑现在已经解决了这个问题(在某种程度上),我想在这里添加一个摘要。

还没能让在Mac 2011上工作。将文件从filname.xlsm更改为fielname.zip并再次返回会导致excel文件损坏,Excel 2011拒绝识别该文件。

通过将.xlsm文件名修改为.zip,用十六进制编辑器编辑vbaproject.bin文件中的DPB=和GC=值,然后将其保存在.zip文件中,然后将.zip重命名为xlsm,我成功地使其在旧windows机器(XP/Excel 2007)上工作。我在底部使用了Ricko给出的"test“示例,它使用了一个警告--我不得不‘删除’我的GC值,使其与我的文件中的原始值相同。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ORIGINAL:       GC="0F0DA36FAF938494849484"
NEW:  (TEST)    GC="BAB816BBF4BCF4BCF4"  (from Ricko below)
NEW:  (TEST)    GC="BAB816BBF4BCF4BCF40000"  (what i used and what worked)
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-03-28 13:51:05

我有你的答案,因为我今天也遇到了同样的问题:

有人为所有excel文件(包括.xlsm (2007+版本))制作了一个工作的vba代码,该代码将vba保护密码更改为“宏”。通过浏览他的代码,你可以看到它是如何工作的。

这是这个家伙的博客:http://lbeliarl.blogspot.com/2014/03/excel-removing-password-from-vba.html,这是做这个工作的文件:https://docs.google.com/file/d/0B6sFi5sSqEKbLUIwUTVhY3lWZE0/edit

粘贴自他博客上的前一篇文章:

对于Excel2007/2010 (.xlsm)文件,请执行以下步骤:

  1. 创建新的.xlsm文件。
  2. 在VBA部分中,设置一个简单的密码(例如“宏”)。
  3. 保存文件并退出。
  4. 将文件扩展更改为“..zip”,由任何归档程序打开它。
  5. 找到文件:'vbaProject.bin‘(在'xl’文件夹中)。
  6. 从档案馆里提取出来。
  7. 打开刚才用十六进制编辑器提取的文件。
  8. 从参数DPB (以引号表示的值)查找并复制该值,例如: DPB="282A84CBA1CBA1345FCCB154E20721DE77F7D2378D0EAC90427A22021A46E9CE6F17188A".(此值为“宏”密码生成。您可以使用这个DPB值跳过步骤1-8)
  9. 对于具有未知密码的文件(要解锁的文件),请执行步骤4-7。
  10. 根据步骤8中复制的值更改此文件中的DBP值。 如果复制的值小于加密文件中的值,则应使用0(零)填充缺失字符。如果值更长--这不是问题(按原样粘贴)。

  1. 保存'vbaProject.bin‘文件并退出十六进制编辑器。
  2. 用修改后的文件替换现有的“vbaProject.bin”文件。
  3. 将扩展从“.zip”改为“.xlsm”
  4. 现在,打开excel文件,您需要查看VBA代码。VBA代码的密码将只是宏(如我在这里展示的示例)。
票数 58
EN

Stack Overflow用户

发布于 2015-02-13 11:02:48

新版本,现在您还可以使用GC=尝试将DPB和GC替换为

DPB="DBD9775A4B774B77B4894C77DFE8FE6D2CCEB951E8045C2AB7CA507D8F3AC7E3A7F59012A2“GC="BAB816BBF4BCF4BCF4”

密码将是“测试”

票数 23
EN

Stack Overflow用户

发布于 2015-01-31 03:38:20

  1. 用十六进制编辑器打开xls文件。
  2. 搜索DPB
  3. DPB替换为DPx
  4. 保存文件。
  5. 在Excel中打开文件。
  6. 如果收到任何消息框,请单击“是”。
  7. 从VBA项目属性设置新密码。
  8. 关闭并再次打开文件,然后键入要取消保护的新密码。

检查http://blog.getspool.com/396/best-vba-password-recovery-cracker-tool-remove/

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22663809

复制
相关文章
如何破解Excel VBA密码
首先,如果文件格式是(.xslm),需要先打开Excel文件,另存为2003版格式(.xls)。
landv
2018/09/26
6.9K0
如何破解Excel VBA密码
VBA: 打开带密码的Excel文件
文章背景:想要通过VBA打开一份带密码的Excel文件,然后在文件内填入信息。前述要求可以借助workbook.open来实现。
Exploring
2022/09/20
4.6K0
Excel: 通过VBA代码打开ppt文件
文章背景:使用Excel的Userform时,有时想要打开指定路径的ppt文件。下面介绍两种打开ppt文件的方式。
Exploring
2022/09/20
3.5K0
Excel: 通过VBA代码打开ppt文件
Excel: 通过VBA代码打开word文件
文章背景:在使用Excel的Userform时,有时想要打开指定路径的word文件。下面介绍打开word文件的一种方式。
Exploring
2022/09/20
3.8K0
Excel: 通过VBA代码打开word文件
VBA破解VBA密码
'如果是xlsm的请另存为xls后运行破解 Sub MoveProtect() Dim FileName As String FileName = Application.GetOpenFilename("Excel文件(.xls & .xla),.xls;.xla", , "VBA破解") If FileName = CStr(False) Then Exit Sub Else If Dir(FileName) = "" Then Exit Sub Else FileCopy File
林万程
2018/06/21
3.1K4
探索VBA代码编辑器——《Excel VBA宏编程》系列讲座2
Excel已经为我们准备好了编写VBA代码的编辑器,让我们非常方便地编写、运行和调试、保存VBA代码。
fanjy
2022/06/04
3.9K0
探索VBA代码编辑器——《Excel VBA宏编程》系列讲座2
Excel VBA 通过字典进行数据计数/求和
字典的计数/求和都是通过利用,字典keys键的唯一性进行统计,当key键出现相同时进行数量的加一或者进行keys键的值求和!
办公魔盒
2023/03/08
2.5K0
Excel VBA 通过字典进行数据计数/求和
Excel VBA编程
在Excel中,数据只有文本,数值,日期值,逻辑值和错误值五种类型。但是在VBA中,数据类型跟Excel不完全相同。根据数据的特点,VBA将数据分为布尔型(boolean),字节型(byte),整数型(integer),单精度浮点型(single),双精度浮点型(double),货币型(currency),小数型(decimal),字符串型(string),日期型(date),对象型等等
全栈程序员站长
2022/08/11
45.9K0
Excel VBA编程
Excel VBA事件
在Excel VBA里提供了接口,在发生这些事件之前或者之后,让使用者可以设置一段运行的程序。
xyj
2020/07/28
1.5K0
Excel VBA事件
excel vba 解密
大家好,又见面了,我是你们的朋友全栈君。Private Sub VBAPassword() ‘你要解保护的Excel文件路径 Filename = Application.GetOpenFilename(“Excel文件(*.xls & *.xla & *.xlt),*.xls;*.xla;*.xlt”, , “VBA激活成功教程”) If Dir(Filename) = “” Then MsgBox “没找到相关文件,清重新设置。” Exit Sub Else FileCopy Filename, Filename & “.bak” ‘备份文件。 End If Dim GetData As String * 5 Open Filename For Binary As #1 Dim CMGs As Long Dim DPBo As Long For i = 1 To LOF(1) Get #1, i, GetData If GetData = “CMG=””” Then CMGs = i If GetData = “[Host” Then DPBo = i – 2: Exit For Next If CMGs = 0 Then MsgBox “请先对VBA编码设置一个保护密码…”, 32, “提示” Exit Sub End If
全栈程序员站长
2022/09/15
9400
Excel VBA学习
学习一下,记录一下,资料来自于网络 网络代码收集一: Sub test() Dim arr, brr, i&, r&, k Set d = CreateObject("scripting.dictionary") Set d1 = CreateObject("scripting.dictionary") With Sheet1 r = .Cells(Rows.Count, 1).End(3).Row For i = 2 To r
哆哆Excel
2022/10/31
2K0
进击的恶意文档之 VBA 进阶之旅
Office 版本历经十几年的变迁,现已趋于成熟,但仍存在着新老版本交替使用的问题。Office 97-2003 Word 的文件后缀为 doc,新版本的 Office 文件后缀为 docx,包含宏的文档后缀为 docm。微软是不会允许将包含宏的文档命名为 docx,但是可以被命名为老版的 doc。例如一个 docm 文件,文件头的魔数是 504b0304(ZIP 文件的魔数),修改其后缀为 doc 后,文件头的魔数不变,且能够正常执行。而老版的 doc 文件头的魔数是d0cf11e(docfile 的十六进制表示 ^_^),所以我们可以通过文件后缀和魔数是否匹配来判断一个文档是不是恶意的。
信安之路
2019/07/27
4.6K0
在Excel中通过VBA对Word文档进行查找替换
哆哆Excel
2023/09/09
7040
在Excel中通过VBA对Word文档进行查找替换
VBA解析VBAProject 06——清除VBA工程密码
如果你收到过一些这样的Excel文件,文件里有VBA代码,实现了很好的功能,可是作者却对VBA工程进行了加密,你可能会非常希望查看到里面的VBA代码。
xyj
2020/10/27
6.6K0
Excel VBA项目实战
前面的《Excel VBA:办公自动化》和大家分享了VBA常用的基础知识,就有同学留言问我:猴子老师,能不能出一个项目实战案例,可以把前面的知识都应用起来。
猴子数据分析
2021/04/15
1.7K1
Excel VBA事件——Worksheet
这个事件的有个比较典型的应用场景,选择改变后,将选择的单元格所在行标上颜色,也就是所谓的聚光灯:
xyj
2020/07/28
3.2K0
Excel VBA事件——Worksheet
excel vba获取拼音
Function PinYin2(Hz As String) Dim PinMa As String Dim MyPinMa As Variant Dim Temp As Integer, i As Integer, j As Integer PinMa = "a,20319,ai,20317,an,20304,ang,20295,ao,20292," PinMa = PinMa & "ba,20283,bai,20265,ban,20257,bang,20242,b
landv
2018/05/24
2K0
Excel VBA事件——Workbook
这两个事件在Office2007版本之前使用应该还是比较多的,那时候还没有Ribbon菜单,菜单是下拉式的,也就是和VBA编辑器菜单是一样的。
xyj
2020/07/28
1.2K0
Excel VBA 编程练习
最近做了一个VBA的小case,用于方便excel数据的处理,主要的功能代码记录如下。
全栈程序员站长
2022/09/05
8240
Excel VBA之Find
使用,因为我们的工作表中常常在最后会写一此“备注”,我们在取数据的时候,备注与后面的东西是没用的,所以我们要取到备注以上的东西,以"金额合计"或“合计”为最后一行号
哆哆Excel
2022/10/25
2.2K0

相似问题

使用vba和windows api通过Excel保存十六进制编辑器文件

20

通过代码从excel启动vba编辑器

25

VBA多重密码excel

33

Excel VBA编辑器问题

213

Excel VBA -忽略密码提示

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文