【Sword系列】第七届全国残疾人职业技能大赛样题-网络安全-突破软件注册权限
【摘要】 OllyDbg是一款Windows平台下的32位汇编语言调试器,具有反汇编、单步执行、断点调试、内存分析等功能。常用于软件逆向工程、漏洞分析等方面。
前言
下面是在OllyDbg中搜索字符串的步骤:
打开OllyDbg并加载您想要搜索字符串的可执行文件。
打开“搜索”窗口。在OllyDbg的默认布局中,可以通过单击菜单栏中的“搜索”选项卡或使用快捷键Ctrl+S打开该窗口。
在“搜索”窗口中,选择您想要搜索的字符串类型。可以选择“ANSI字符串”、“Unicode字符串”或“所有字符串”选项。
在“搜索”窗口中,输入您想要搜索的字符串。
在“搜索”窗口中,选择搜索的范围。您可以选择在代码段、数据段或整个可执行文件中搜索字符串。
点击“搜索”按钮开始搜索字符串。
OllyDbg将搜索结果显示在“搜索”窗口中。您可以双击结果以在OllyDbg的代码窗口中打开相应的位置。
请注意,搜索字符串可能会花费很长时间,具体取决于可执行文件的大小和复杂性。
其具体功能包括:
反汇编和调试:对可执行文件进行反汇编并可以在其中设置断点,以方便调试和分析。
动态调试:可以动态地修改软件的内存和寄存器值,以修改软件的执行流程,达到对软件的修改目的。
插件支持:OllyDbg支持插件,可以扩展其功能。
内存查看:可以查看软件运行时的内存状态,并可以修改和搜索内存中的值。
寄存器查看:可以查看和修改CPU寄存器的状态。
一、突破软件注册权限
1.打开题目
2.解题
右键搜索字符串 看到username字样 点进去,在下面函数的位置下断点 F7进入这个函数 ,分析关键位置
import base64
name = "yg"
b = ""
for i in range(len(name)):
num = (ord(name[i]) + i + 1)^(i<<2)
if (num < 0x30):
num += 0x65
b=b+chr(num)
b=b.encode('utf-8')
passws = base64.b64encode(b)
print(passws)
输入密码:em0=
得到flag:
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)