开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 27074|回复: 162
收起左侧

[Windows逆向] Ob回调之反向降权破图标

  [复制链接]
结帖率:89% (8/9)
发表于 2023-2-7 18:22:49 | 显示全部楼层 |阅读模式   天津市天津市
本帖最后由 BeaFeng 于 2023-2-7 20:22 编辑

开发环境
Win10 X64/Visual Studio 2019/WDK 10.0 SDK 10.0.19041.0/易语言5.9


前段时间太忙,开源大赛都没时间和大家见面,今天开源个非常简单的CallBack回调的使用


相信很多人都很熟悉这个回调,一般都是拿来做保护进程使用,但是大部分不知道这个回调还能这么利用,有提权操作当然也有降权,这些在微软文档也是公开的,只是有时候很难注意到。


先看一下函数解释


NTSTATUS ObRegisterCallbacks(
  [in]  POB_CALLBACK_REGISTRATION CallbackRegistration,
  [out] PVOID                     *RegistrationHandle
);

参数
[in] CallbackRegistration


指向指定回调例程列表和其他注册信息的 [color=var(--theme-hyperlink)]OB_CALLBACK_REGISTRATION 结构的指针。


[out] RegistrationHandle

指向接收标识已注册回调例程集的值的变量的指针。 调用方将此值传递给 [color=var(--theme-hyperlink)]ObUnRegisterCallbacks 例程,以取消注册回调集


返回值
ObRegisterCallbacks 返回 NTSTATUS 值。 此例程可能返回以下值之一:


返回值
ObRegisterCallbacks 返回 NTSTATUS 值。 此例程可能返回以下值之一:
返回代码
说明
STATUS_SUCCESS指定的回调例程注册到系统。
STATUS_FLT_INSTANCE_ALTITUDE_COLLISION调用驱动程序或其他驱动程序已经为 CallBackRegistration->海拔高度 指定的高度注册了回调例程。 有关此高度的详细信息,请参阅[color=var(--theme-hyperlink)]OB_CALLBACK_REGISTRATION中海拔成员的说明。
STATUS_INVALID_PARAMETER注册中指定的一个或多个参数无效。 ObRegisterCallbacks 可能会返回此错误,例如,如果指定 了 CallBackRegistration->版本的 无效值,或者尝试为不支持回调例程的对象类型注册。
STATUS_ACCESS_DENIED回调例程不驻留在已签名的内核二进制映像中。
STATUS_INSUFFICIENT_RESOURCES尝试分配内存失败。

省略大部分的废话,直接上代码
驱动入口非常简单,上一个帖子也讲过这些,通用的IO通讯,创建符号链接设备,再注册CallBack回调
值得注意的是由于ObRegisterCallbacks函数会校验驱动,所以我们用测试签名肯定是无法正常挂回调的,所以打一个补丁让他正常创建。
接下来用Ark看一下一般的回调是长啥样的。
这个页面大家应该也是熟悉的不能再熟悉了,稍微需要注意的另外一个地方就是原始函数地址0x383300,代表回调注册高度,如果我们想要降权破图标创建的回调高度必须小于被保护进程的回调,这里随便设置一个0x166666
接下来就是两种回调的对比,非常的明显
通俗的讲一个是特定进程的句柄被打开是开放全部权限,另外一个是关闭权限
直接进入实战,易语言调用也是简单易懂,没有一滴代码是浪费的
可以看得到回调成功的创建了,接下来把需要破图标的进程ID用DeviceIoControl传给驱动看一下实际效果。
大功告成,当然这仅限于对CallBack回调来保护的进程有效果(目前大部分应该都是用的这个吧~)
内核真的是无比奇妙,学无止境,我也仅仅是一个学生,大佬有好建议可以评论给我。
另外不要私信我说什么游戏,那个游戏,开源的都是学习研究仅此而已,我平时不玩游戏,也没时间玩,谢谢。
易密码:050273



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点评

drv=#sys 浪费了一滴~   湖北省随州市  发表于 2023-9-15 22:05
666666   北京市北京市  发表于 2023-2-7 18:31

评分

参与人数 30好评 +2 精币 +31 收起 理由
niuyanpeng + 1 奉上小小红包希望笑纳
聿聿 + 1 感谢分享,很给力!~
3266167 + 1 感谢分享,很给力!~
qweipuq + 1 感谢分享,很给力!~
Mainli + 1 感谢分享,很给力!~
Zźh926 + 1 感谢分享,很给力!~
望尘莫及 + 1 感谢分享,很给力!~
风雨3137 + 1 感谢分享,很给力!~
t176 + 1 感谢分享,很给力!~
keyi5566 + 1 感谢分享,很给力!~
YzZA + 1 感谢分享,很给力!~
1828902364 + 1 感谢分享,很给力!~
cbl521ysys + 1 感谢分享,很给力!~
qq1872087833 + 1 + 1 YYDS~!
VR非凡 + 1 感谢分享,很给力!~
ican8 + 1 感谢分享,很给力!~
pj小黑屋 + 1 感谢分享,很给力!~
a524666979 + 1 无风大佬牛逼
微风已过 + 1 感谢分享,很给力!~
hhhql + 1 感谢分享,很给力!~
qq1004043585 + 1 + 2 简直神之一手
183 + 1 感谢发布原创作品,精易因你更精彩!
flyk + 1 感谢分享,很给力!~
无尘666 + 1 感谢分享,很给力!~
XXGL2005 + 1 感谢分享,很给力!~
※逍遥游※ + 1 感谢分享,很给力!~
qiyuer + 1 感谢分享,很给力!~
Arui + 1 感谢分享,很给力!~
mumulu + 1 感谢分享,很给力!~
mypursue + 1 感谢分享,很给力!~

查看全部评分

本帖被以下淘专辑推荐:

发表于 2024-3-19 10:49:34 高大上手机用户 | 显示全部楼层   贵州省贵阳市
11111
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2024-3-1 14:37:15 | 显示全部楼层   黑龙江省大庆市
撒大苏打
回复 支持 反对

使用道具 举报

结帖率:100% (5/5)

签到天数: 19 天

发表于 2024-2-1 11:33:27 | 显示全部楼层   广东省佛山市
        感谢分享,很给力!~
回复 支持 反对

使用道具 举报

发表于 2024-1-30 11:03:49 | 显示全部楼层   河南省郑州市
111111111111111111111111111
回复 支持 反对

使用道具 举报

发表于 2024-1-30 10:48:34 | 显示全部楼层   河南省郑州市
1111111111111111111111111111111111
回复 支持 反对

使用道具 举报

发表于 2024-1-28 18:45:57 | 显示全部楼层   江苏省连云港市
小小心意,意思一下
回复 支持 反对

使用道具 举报

签到天数: 14 天

发表于 2024-1-23 15:06:54 | 显示全部楼层   浙江省杭州市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 1 天

发表于 2024-1-22 12:51:10 | 显示全部楼层   四川省成都市
        感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)

签到天数: 22 天

发表于 2024-1-21 14:46:07 | 显示全部楼层   广东省汕头市
上面说明已经很清楚了,对照情况自行判断解决
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表