| 网站首页 | 范文 | 演讲致词 | 汇报体会 | 总结报告 | 公文方案 | 领导讲话 | 党建工会 | 论文 | 文档 | 书信 | 
您现在的位置: 范文大全网 >> 论文 >> 计算机论文 >> 正文 用户登录 新用户注册
Windows2003 内核级进程隐藏、侦测技术           
Windows2003 内核级进程隐藏、侦测技术
smode
+135 byte enablestackswap
+136 byte largestack
+137 byte resourceindex
+138 uint32 kerneltime
+13c uint32 usertime
+140 struct _kapc_state savedapcstate
+158 byte alertable
+159 byte apcstateindex
+15a byte apcqueueable
+15b byte autoalignment
+15c void *stackbase
+160 struct _kapc suspendapc
+190 struct _ksemaphore suspendsemaphore
+1a4 struct _list_entry threadlistentry
+1ac char freezecount
+1ad char suspendcount
+1ae byte idealprocessor
+1af byte disableboost
在偏移0x5c处有一个waitlistentry成员,这个就是用来链接到线程调度链表的。在偏移0x34处有一个apcstate成员结构,在apcstate中的process域就是指向当前线程关联的进程的kprocess块,由于kprocess块是eprocess块的第一个元素,所以找到了kprocess块指针也就是找到了eprocess块的指针。找到了eprocess就不用多少了,就可以取得当前线程的进程的名字,id号等。
2. 线程调度
在windows系统中,线程调度主要分成三条主要的调度链表。分别是kiwaitinlisthead, kiwaitoutlisthead,kidispatcherreadylisthead,分别是两条阻塞链,一条就绪链表,当线程获得cpu执行的时候,系统分配一, , 个时间片给线程,当发生一次时钟中断就从分配的时间片上减去一个时钟中断的值,如果这个值小于零了也就是时间片用完了,那么这个线程根据其优先级载入到相应的就绪队列末尾。kidispatcherreadylisthead是一个数组链的头部,在windows 2000中它包含有32个队列,分别对应线程的32个优先级。如果线程因为同步,或者是对外设请求,那么阻塞线程,让出cpu的所有权,加如到阻塞队列里面去。cpu从就绪队列里面,按照优先权的前后,重新调度新的线程的执行。当阻塞队列里面的线程获得所需求的资源,或者是同步完成就又重新加到就绪队列里面等待执行。
3.通过线程调度链表进行隐藏进程的检测
void displaylist(plist_entry listhead)
{
plist_entry list = listhead->flink;
if ( list == listhead )
{
// dbgprint("return\n");
return;
}
plist_entry nextlist = list;
while ( nextlist != listhead )
{
pkthread thread = ontaining_record(nextlist, kthread, waitlistentry);
pkprocess process = thread->apcstate.process;
peprocess peprocess = (peprocess)process;
dbgprint("imagefilename = %s \n",peprocess->imagefilename);
nextlist = nextlist->flink;
}
}
以上是对一条链进行进程枚举。所以我们必须找到kiwaitinlistheadkiwaitoutlistheadkidispatcherreadylisthead的地址,由于他们都没有被ntoskrnl.exe导出来,所以只有通过硬编码的办法给他们赋值。通过内核调试器,能找到(windows2000 sp4):
plist_entry kiwaitinlisthead = (plist_entry)0x80482258;
plist_entry kidispatcherreadylisthead = (plist_entry)0x804822e0;
plist_entry kiwaitoutlisthead = (plist_entry)0x80482808;
遍历所有的线程调度链表。
for ( i =0; i<32 ;i++ )
{
displaylist(kidispatcherreadylisthead+i);
}
displaylist(kiwaitinlisthead);
displaylist(kiwaitoutlisthead

 << 上一页  [11] [12] [13] [14] 下一页

  • 上一个论文:

  • 下一个论文:


  • 看了《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年烟草企业三讲教育比
    普通公文方案[公文写作]幼儿园新教师成长计划
    普通总结[个人总结]电气试用期工作总结
    普通汇报体会[先进事迹材料]优秀教师推荐材料
    普通公文方案[公文写作]县运输管理所五整顿三加强
    普通总结[工作总结]推行校务公开制度工作总结
    普通党建工会[记要]小学体育教学个人工作总结
    普通总结[工作总结]县政协机关创建文明单位工
    普通汇报体会[先进事迹材料]镇纪检书记廉洁从政先进事