进程隐藏技术系列之简介
什么是进程隐藏?
对 Windows系统可以用自带的任务管理器,查看进程列表, 找出可疑进程。
恶意代码为了保护自己的进程不被发现,所以就有了进程隐藏技术,用来对抗进程检测。
为什么需要进程隐藏?
进程隐藏是病毒和木马确保自己不被查杀所要做的最重要的事,而分析检测隐藏进程和发现木马病毒是反病毒工作者的一个重要任务。
为了对抗病毒检测,病毒开发者也在一直寻找更有效的进程隐藏的技术。
进程隐藏的方法
1.基于API HOOK的进程隐藏技术
API HOOK指的是通过特殊的编程手段截获WINDOWS系统调用的API函数,并将其丢弃或者进行替换。 通过API HOOK编程方法,截获系统遍历进程函数并对其进行替换,可以实现对任意进程的隐藏。
进程隐藏:通过HOOK函数ZwQuerySystemInfornation实现进程隐藏
2.基于DLL 的进程隐藏技术:远程注入Dll技术
DLL文件没有程序逻辑,不能独立运行,由进程加载并调用,所以在进程列表中不会出现DLL文件。如果是一个以DLL形式存在的程序,通过某个已有进程进行加载, 即可实现程序的进程隐藏。
在windows系统中, 每个进程都有自己的私有地址空间, 进程不能创建属于另一个进程的内存指针。而远程线程技术正是通过特殊的内核编程手段, 打破进程界限来访问另一进程的地址空间, 以达到对自身 进行隐藏的目的。
远程线程注入DLL技术指的是通过在某进程中创建远程线程的方法进入该进程的内存空间, 然后在其内存空间中加载启动DLL程序。
3.基于远程线程注入代码的进程隐藏技术
这种方法与远程线程注入 DLL 的原理一样,都是通过在某进程中创建远程线程来共享该进程的内存空间。
所不同的是,远程线程注入代码通过直接拷贝程序代码到某进程的内存空间来达到注入的目的。因为程序代码存在于内存中, 不仅进程列表中无法检测,即使遍历进程加载的内存模块也无法找到被隐藏程序的踪迹。
下列是现在几种比较常用的方法:
进程伪装:通过修改指定进程PEB中的路径和命令行信息实现伪装。
傀儡进程:通过进程挂起,替换内存数据再恢复执行,从而实现创建傀儡进程
进程隐藏:通过HOOK函数ZwQuerySystemInfornation实现进程隐藏
DLL劫持:通过#pragma comment指令直接转发DLL导出函数或者通过LoadLibrary和GetProcAddress函数获取DLL导出函数并调用
参考:
《黑客技术Windows编程详解》
《Windows 木马的各种进程隐藏技术及应对策略》
进程隐藏技术系列之简介相关推荐
- IPv6技术系列①——开篇简介
写在开头 17年10月开启51cto博客之路,原想将自己所学所想,或者在各种不同情况下走过的坑,踩过的雷,能够利用51cto的平台和大家分享,作为马上步入工作岗位的大学生,我深深能够理解我们学生在 ...
- 《进程隐藏》:DLL挟持实现进程隐藏
<进程隐藏技术系列之简介>https://blog.csdn.net/weixin_43742894/article/details/105793689 在上一篇文章中,对进程隐藏技术进行 ...
- linux进程隐藏 hook readdir函数 挂载覆盖/proc/pid 目录
前言 上篇介绍了如何在有源码的情况下,通过 argv[] 及 prctl 对进程名及参数进行修改,整篇围绕/proc/pid/目录和 ps.top 命令进行分析,做到了初步隐藏,即修改了 /proc/ ...
- linux进程隐藏 argv[0] prctl 修改进程名
目录 前言 一.通过修改进程argv[0]修改进程名 二.通过Linux prctl修改进程名 三.两者方法相结合 前言 Linux下查看进程信息的途径通常有以下几种方式 途径 说明 top.ps等命 ...
- [网友LionD8的毕业论文]Windows2000 内核级进程隐藏、侦测技术
Windows2000 内核级进程隐藏.侦测技术 指导老师:龙老师 学生:LionDB 学号:0137506 摘要 信息对抗是目前计算机发展的一个重要的方向,为了更好的防御,必须去深入的 ...
- Windows2000 内核级进程隐藏、侦测技术[毕业论文]
Windows2000 内核级进程隐藏.侦测技术 指导老师:龙老师 学生:LionDB 学号:0137506 摘要 信息对抗是目前计算机发展的一个重要的方向,为了更好的防御,必须去深入的 ...
- windows黑客编程技术之隐藏技术(进程伪装,傀儡进程,进程隐藏)
进程伪装:通过修改指定进程PEB中的路径和命令行信息实现伪装. 傀儡进程:通过进程挂起,替换内存数据再恢复执行,从而实现创建"傀儡进程". 进程隐藏:通过HOOK函数ZwQuery ...
- 【半导体先进工艺制程技术系列】FinFET和UTB-SOI简介
有两种途径可以实现工艺特征尺寸进入到小于25nm工艺制程: 一种是采用三维立体型结构的FinFET晶体管代替平面结构的MOSFET作为集成电路的晶体管.FinFET晶体管凸起的沟道区域是一个被三面栅极 ...
- Linux 环境下的高级隐藏技术
摘要:本文深入分析了Linux环境下文件.进程及模块的高级隐藏技术,其中包括:Linux可卸载模块编程技术.修改内存映象直接对系统调用进行修改技术,通过虚拟文件系统proc隐藏特定进程的技术. 隐藏技 ...
- linux目录隐藏技术,Linux环境下的高级隐藏技术
摘要:本文深入分析了Linux环境下文件.进程及模块的高级隐藏技术,其中包括:Linux可卸载模块编程技术.修改内存映象直接对系统调用进行修改技术,通过虚拟文件系统proc隐藏特定进程的技术. 隐藏技 ...
最新文章
- 使用Pandas的rolling函数计算滚动平均值(rolling average with Pandas rolling)、seaborn使用lineplot函数可视化时间序列数据、并添加滚动平均值
- ntp服务器源码c语言,搭建自己的NTP时间服务器
- awk的正则表达式提取
- JMeter初探-安装与使用
- Gridview中实现求和统计功能
- React开发(208):react代码分割在嵌套组件中更新 Context
- mysql添加索引后查询先用索引吗_mysql 添加索引后 在查询的时候是mysql就自动从索引里面查询了。还是查询的时候有单 独的参数查询索引?...
- Python安装与库导入
- 《智能家居产品 从设计到运营》——2.2 智能设备的触角:传感器
- RNA_seq(1)植物转录组实战(上)之salmon进行索引建立和转录组定量
- python生成手写汉字字体_「zi2zi」:用AI生成自己的手写字体
- 软考常考知识点整理-项目风险管理计划
- hdu多校(三)1004 Tokitsukaze and Multiple(easydp)
- Linux网络流量监控
- 如何将页脚(footer)保持在页面底部
- Thinkpad E470重装WIN7系统后,重启进入boot menu的问题
- 化工专业和计算机专业哪个好就业前景,2019化学工程与工艺专业就业前景和就业方向分析...
- 做一个成功的软件项目经理
- LaTex使用技巧10:公式中的各种英文字体
- 分享!快速申请抖音企业蓝V认证的方案