首页
社区
课程
招聘
[原创]Symbian 杀毒软件文件监控核心代码
2007-8-23 00:06 8327

[原创]Symbian 杀毒软件文件监控核心代码

2007-8-23 00:06
8327
最近很忙,有工作上的也有生活上的。

无聊的时候忽然想学习一下 Symbian 杀毒软件的原理,于是便有了这篇帖子。
大家知道,Symbian 上实现杀毒软件说容易不容易,说难不难。

最大的困难有两点:
1. 病毒样本收集,到目前为止 Symbian 病毒已经超过300种(接近 400);
2. 文件的实时监控;

实现文件监控方法很多,国内的网秦我就不做评论了,当然,如果那个也叫实时监控的话:)
至于光华的那个,怎么说呢,如果仅仅从 Nokia 公开的 SDK 来说,能做到那样也实属不易,但是,远远不能称得上是实时监控,至于另外的几家国内公司的,有的甚至不提供实时监控(看得很粗糙,如果有误,请大家见谅或者来信指正)。

所以,手痒的时候分析了一个国外的比较著名的杀毒软件的监控引擎。鉴于不能公开分析的结果,所以,我把分析后得到的代码重新整理了一遍,并作了适当的修改,删除节略部分,把一个可以正确编译和运用的代码框架贴出来。

需要说明的是,该方法使用了很多不公开的东西,有兴趣的朋友可以看看。

最后要感谢那些帮助我理解 Symbian 的朋友!

注:从 Symbian 8.0a+ 开始,支持病毒过滤接口,但是,之前的版本不通用。本文所附的方法通用于几乎所有的 S60 2nd 版本,Symbian 9.0 未作测试,估计不能用。嘿嘿!

附件密码: codez

阿里云助力开发者!2核2G 3M带宽不限流量!6.18限时价,开 发者可享99元/年,续费同价!

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (6)
雪    币: 451
活跃值: (78)
能力值: ( LV12,RANK:470 )
在线值:
发帖
回帖
粉丝
zhuwg 11 2007-8-23 07:34
2
0
lz牛啊 0点还在研究代码
雪    币: 233
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
okdodo 2 2007-8-23 08:11
3
0
没接触过 学习  
雪    币: 228
活跃值: (114)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
machoman 1 2007-8-23 09:08
4
0
看不懂,顶楼主。是文件系统过滤驱动吗?
一点感想:
OS 在别人手里,就得按人家的规矩办,Symbian不熟悉的说。
雪    币: 709
活跃值: (2270)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
sudami 25 2007-8-23 10:00
5
0
没看懂啥意思 ...

偶看代码也不是很复杂啊~
雪    币: 239
活跃值: (40)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
codez 3 2007-8-23 10:24
6
0
恩,程序很简单,因为我砍掉了 Hook 之后的拦截代码,并对代码做了一定的修正。
其实,这个实现原理比较容易,就是同过 fsy 插件位于 File server 同一领空,强行搜索 File Server 对象,并且 Hook File Server 派生自 CServer 的类的 vptr,替换对应的 CServer::RunL 函数地址,以便截获系统调度。

因为很多内容不是公开的,或者说对于没有购买 DevKit 的朋友来说是不公开的,所以,很多内容比较隐晦。不过,这个实现比较有意思,第一次看到 Hook class vptr 的情况。

有兴趣的朋友可以一起讨论。
雪    币: 425
活跃值: (412)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
鸡蛋壳 2007-8-23 18:43
7
0
楼主好像是专门搞手机系统的
游客
登录 | 注册 方可回帖
返回