行业解决方案查看所有行业解决方案
IDA 用于解决软件行业的关键问题。
发布时间:2022-10-09 14: 28: 12
本文首发在Freebuf,作者为蚁景科技,其主营业务是网络安全人才教育培养。详细的介绍了使用IDA和OD进行调试分析,针对分析D盾检查账号克隆功能,希望对关注网络安全和金融保险领域的人有所帮助。
D盾(IIS防火墙)是一款主动防御类保护软件,以内外保护的方式防止网站和服务器被入侵,在正常运行各类网站的情况下,越少功能服务器越安全的理念而设计。D盾有一项功能是账号克隆:
一、初步分析
我们进一步通过StudyPe查看,能发现其使用了NetUserEnum相关的函数,如下图:
这里通过查看微软官方的相关案例,也就是以下的链接:https://docs.microsoft.com/zh-cn/windows/desktop/api/lmaccess/nf-lmaccess-netuserenum
我们可以大致知道这些函数是怎么使用的。
二、OD调试
接下来,我们试着用OD调试,按ctrl+g输入NetUserEnum,如下图:
按F2下断点:
再按F9运行,点击D盾克隆账号检测,如下图:
此时能看到OD命中断点,我们需要记录返回地址:
三、IDA配合
接下来我们需要使用IDA,打开并按下快捷键G,输入地址:0051158B
移动并往上查找,查看函数头,地址为5114A4:
此时需要分析sub_5114A4函数:
//32此结构在系统有异常的情况下NetUserEnum将失败返回2221状态值
typedefstruct _USER_INFO_3{
LPWSTR usri3_name;0
LPWSTR usri3_password;4
DWORD usri3_password_age;8
DWORD usri3_priv;C
LPWSTR usri3_home_dir;10
LPWSTR usri3_comment;14
DWORD usri3_flags;18
LPWSTR usri3_script_path;1C
DWORD usri3_auth_flags;20
LPWSTR usri3_full_name;24
LPWSTR usri3_usr_comment;28
LPWSTR usri3_parms;2C
LPWSTR usri3_workstations;30
DWORD usri3_last_logon;34
DWORD usri3_last_logoff;38
DWORD usri3_acct_expires;3C
DWORD usri3_max_storage;40
DWORD usri3_units_per_week;44
PBYTE usri3_logon_hours;48
DWORD usri3_bad_pw_count;4C
DWORD usri3_num_logons;50
LPWSTR usri3_logon_server;54
DWORD usri3_country_code;58
DWORD usri3_code_page;5C
DWORD usri3_user_id;60
DWORD usri3_primary_group_id;64
LPWSTR usri3_profile;68
LPWSTR usri3_home_dir_drive;6C
DWORD usri3_password_expired;70
}USER_INFO_3,*PUSER_INFO_3,*LPUSER_INFO_3;
再来看一下权限问题:
接下来,读取F值:
F值二进制流30h偏移是关联的user_id:
我们通过搜索,发现了F值的含义:
http://www.beginningtoseethelight.org/ntsecurity/index.htm
以及关键字符串:
三、进一步分析
通过以上OD和IDA的一系列调试操作,我们想要的检测逻辑相比较就比较清楚:
通过逆向的分析,利用OD和IDA配合调试分析,我们挖掘和学习了D盾判断账号克隆功能实现的逻辑。
原文声明:笔者初衷用于分享与普及网络知识,若读者因此作出任何危害网络安全行为后果自负,与合天智汇及原作者无关,如需转载,请注明出处。
原文链接:https://www.freebuf.com/articles/network/205094.html
展开阅读全文
︾
读者也喜欢这些内容:
IDA怎么修改字符串内容?IDA修改后怎么保存?
在软件开发和逆向工程领域,IDA Pro是一种极其强悍的工具,广泛用于程序剖析、调试和修改。它不仅支持多种处理器架构,还提供了大量的作用,以适应高档讲解的必须。本文将围绕ida怎么修改字符串内容,ida修改后怎么保存这一主题,详细描述怎样在IDA中更改字符串内容,及其修改后的存放方式。此外,我们还将探讨IDA转变的应用场景,帮助读者更深入地了解IDA的实际应用价值。...
阅读全文 >
怎么把汇编语言转化为c语言 怎么把hex文件转换成c文件
在计算机编程的广阔领域中,理解不同编程语言之间的转换机制是一项重要的技术挑战。特别是在涉及到汇编语言和C语言这两种在软件开发中极为重要的语言时,了解它们之间的转化过程显得尤为关键。...
阅读全文 >
IDA Pro支持哪些指令集架构 IDA Pro支持哪些文件格式
在数字化时代,逆向工程和漏洞分析变得愈发重要,而IDA Pro(Interactive Disassembler Professional)以其卓越的能力在这一领域脱颖而出。...
阅读全文 >
什么叫反汇编 反汇编的软件有哪些
在计算机科学和软件工程领域,反汇编一直是一个关键的概念。与其紧密相连的反编译技术和各种反汇编软件也在不断地演进和发展。今天我们将深入探讨什么叫反汇编,反汇编的软件有哪些,以及反汇编的软件哪款比较好。我们将全方位解析这一复杂而又迷人的主题,帮助你更好地理解和掌握反汇编的核心内容。...
阅读全文 >