| 网站首页 | 范文 | 演讲致词 | 汇报体会 | 总结报告 | 公文方案 | 领导讲话 | 党建工会 | 论文 | 文档 | 书信 | 
您现在的位置: 范文大全网 >> 论文 >> 计算机论文 >> 正文 用户登录 新用户注册
Windows2003 内核级进程隐藏、侦测技术           
Windows2003 内核级进程隐藏、侦测技术
> null, // no dependencies
null, // localsystem account
null // no password
);
if (schservice == null)
{
if(getlasterror() == error_service_exists)
{
printf("service has already installed!\n");
}
printf("install driver false!");
return false;
}
bool nret = startservice(schservice, 0, null);
if(!nret)
{
if(getlasterror() == error_service_already_running)
{
printf("service is already running!\n");
return false; }
}
closeservicehandle(schservice);
closeservicehandle(hscmanager);
return true;
}
以上对驱动程序大致框架做了一个非常简单的介绍,这仅仅是驱动程序中的一个”hello world!”。驱动程序是相当复杂的,由于我们只是利用驱动程序的特权,对windows内核进行修改,所以就不对驱动驱动程序进行深入讨论了。
通过hook ssdt (system service dispath table) 隐藏进程
1.原理介绍:
windows操作系统是一种分层的架构体系。应用层的程序是通过api来访问操作系统。而api又是通过ntdll里面的核心api来进行系统服务的查询。核心api通过对int 2e的切换,从用户模式转换到内核模式。2eh中断的功能是通过ntoskrnl.exe的一个函数kisystemservice()来实现的。在你使用了一个系统调用时,必须首先装载要调用的函数索引号到eax寄存器中。把指向参数区的指针被保存在edx寄存器中。中断调用后,eax寄存器保存了返回的结果。kisystemservice()是根据eax的值来决定哪个函数将被调用。而系统在ssdt中维持了一个数组,专门用来索引特定的函数服务地址。在windows 2000中有一个未公开的由ntoskrnl.exe导出的keservicedescriptortable变量,我们可以通过它来完成对ssdt的访问与修改。keservicedescriptortable对应于一个数据结构,定义如下:
typedef struct systemservicedescriptortable
{
uint *servicetablebase;
uint *servicecountertablebase;
uint numberofservice;
uchar *parametertablebase;
}systemservicedescriptortable,*psystemservicedescriptortable;
其中servicetablebase指向系统服务程序的地址(ssdt),parametertablebase则指向sspt中的参数地址,它们都包含了numberofservice这么多个数组单元。在windows 2000 sp4中numberofservice的数目是248个。
我们的任务管理器,是通过用户层的api来枚举当前的进程的。ring3级枚举的方法:
• psapi
– enumprocesses()
• toolhelp32
– process32first()
- process32next()
来对进程进行枚举。而她们最后都是通过ntquerysysteminformation来进行查询的。所以我们只需要hook掉ntquerysysteminformation,把真实ntquerysysteminformation返回的数进行添加或者是删改,就能有效的欺骗上层api。从而达到隐藏特定进程的目的。
2. hook
windows2000中ntquerysysteminformation在ssdt里面的索引号是0x97,所以只需要把ssdt中偏移0x97*4处把原来的一个dword类型的读出来保存一个全局变量中然后再把她重新赋值成一个新的hook函数的地址,就完成了hook。
oldfuncaddress = keservicedescriptortable-> servicecounte

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

  • 上一个论文:

  • 下一个论文:


  • 看了《Windows2003 内核级进程隐藏、侦测技术》的网友还看了:
    [免费范文]LabWindows/CVI的应用特点
    [免费范文]基于RRAS与虚拟专用网技术在Windows中的实现
    [今日更新]巧用PowerPoint制作高中化学多媒体课件
    [今日更新]植树节英语作文:Planting Trees(植树)
    [今日更新]植树节英语作文:Planting Trees 植树
    [今日更新]基于WinCE的嵌入式网络通信系统设计
    [今日更新]基于McWill通信技术的油气智能测控系统
    [今日更新]Windows8是微软的翻身之战
    [今日更新]Windows8 LOGO发布,经典Windows LOGO回顾
    [今日更新]见招拆招 Win8使用无难题

    计算机论文
    普通论文国内外光纤光缆现状及发展趋势
    普通论文浅谈我国网络文化的现状及管理
    普通论文计算机网络管理维护探讨
    普通论文基于J2EE平台软件开发特点综
    普通论文Cisco路由器交换机的技术应用
    普通论文试论高职院校计算机应用基础课程
    普通论文虚拟专用网在企业中的应用
    普通论文试论中职学校《计算机应用基础》
    普通论文多媒体网络教学课件的优化设计
    普通论文试论青少年网络道德教育存在的问
    普通论文硬盘物理地址与逻辑地址的转换方
    普通论文论计算机网络管理技术初探
    论文
    普通论文[经济论文]浅谈新农村建设中农村公
    普通论文[经济论文]循环经济在煤矿企业修旧
    普通论文[今日更新]试论我国证券市场QFI
    普通论文[免费范文]街道办事处党工委书记XX
    普通论文[今日更新]新形势下农林院校物理学
    普通论文[免费范文]关于人力三轮车非法营运
    普通论文[今日更新]试论违反合作原则导致的
    普通论文[今日更新]论执政组织文化的内涵建
    范文大全
    普通范文[零八零一]环卫系统班长竞职演讲稿
    普通范文[范文大全]提升司法警察素质思考建
    普通范文[范文大全]对人事局干部作风建设的
    普通范文[先进性教育]保持*党员先进性教育心得
    普通范文[零八零一]-幼儿园宣传工作计划
    普通范文[先进性教育]党的先进性教育是具体的
    普通范文[范文大全]县贯彻落实《植物检疫条
    普通范文[范文大全]执法先进个人事迹材料
    演讲致词
    普通演讲[主持词]药监局创建和谐单位暨庆祝
    普通演讲[会议发言稿]中考百日誓师大会教师发言
    普通演讲[节日祝福语]中学生有关(Tomb
    普通演讲[主持词]庆国庆、贺中秋晚会主持词
    普通演讲[庆典致辞]护士节致词
    普通演讲[会议发言稿]在全县第二批先进性教育骨
    工作范文
    普通公文方案[企划方案]硬件展示策划书
    普通公文方案[公文写作]县级骨干教师述职报告(1)
    普通公文方案[公文写作]税务系统联欢会开场白
    普通汇报体会[征文演讲]2011年烟草企业三讲教育比
    普通公文方案[公文写作]幼儿园新教师成长计划
    普通总结[个人总结]电气试用期工作总结
    普通汇报体会[先进事迹材料]优秀教师推荐材料
    普通公文方案[公文写作]县运输管理所五整顿三加强
    普通总结[工作总结]推行校务公开制度工作总结
    普通党建工会[记要]小学体育教学个人工作总结
    普通总结[工作总结]县政协机关创建文明单位工
    普通汇报体会[先进事迹材料]镇纪检书记廉洁从政先进事