首页
论坛
专栏
课程

[原创]仿写一个磁盘分区序列号修改器

2019-7-23 18:29 2414

[原创]仿写一个磁盘分区序列号修改器

2019-7-23 18:29
2414
0x1:
网上有个磁盘分区修改器小工具

逆向一波学习看下这个软件的修改原理.

0x2:
祭出最新的pediy ida7.2

直接拖进去,定位到mfc的窗口初始化枚举磁盘的地方

先枚举所有本地的分区,然后获取信息。


先看获取系统分区序列号的代码

先直接CreateFile打开对应的盘符.然后使用ZwQueryVolumeInformationFile的FileFsVolumeInformation(0x1)查询卷的信息。

如果失败了,就用GetVolumeInformationW来获取卷的序列号,实际上GetVolumeInformationW内部也是用 ZwQueryVolumeInformationFile来获取的....
win2k代码:


接着看程序获取磁盘分区序列号:

这部分就比较简单了,也是先打开对应的分区,然后直接读取前面一个扇区大小的数据,然后返回buffer+0x48的一个DWORD就是了


0x3 修改序列号的实现:
找到点击确定按钮的地方

看下这个CALL内部代码:

还是先打开对应的分区,然后读取第一个扇区,把+0x48写入新的序列号,然后再写回去。

返回结果

程序分析完了,那么来仿写一个吧。

0x4:

编译完运行一下,可以看到已经生效了

重启一下, ZwQueryVolumeInformationFile查询的也会生效啦。
ps:
那如何不重启就生效呢:

过滤FileFsVolumeInformation即可。
win10下面会触发pg..ntfs的driver_object有保护~


[挑战]看雪.纽盾 KCTF 2019晋级赛Q3攻击方进行中……,华为P30 Pro、iPad、kindle等你来拿!

最后于 2019-7-24 00:28 被xiaofu编辑 ,原因:
最新回复 (3)
milko 2019-7-23 18:32
2
0
膜拜大佬,顺便问下,山总不是说把你安排了吗
小希希 2019-7-28 10:12
3
0
写的不错,idapro 皮肤不错可否发出开学习下
xiaofu 8 2019-7-28 23:52
4
0
这个吗?
游客
登录 | 注册 方可回帖
返回