典型进程隐藏技术
1  基于系统服务的进程隐藏技术
在 W I N 9X 系列操作系统中, 系统进程列表中不能看到任何系统服务进程, 因此只需要将指定进程注册为系统服务就能够使该进程从系统进程列表中隐形

在win9x下用RegisterServiceProcess函数隐藏进程,NT架构下用不了 即win2000  xp等什么的用不了此方法。

2  基于API HOOK的进程隐藏技术
API HOOK指的是通过特殊的编程手段截获WINDOWS系统调用的API函数,并将其丢弃或者进行替换。 通过API
HOOK编程方法,截获系统遍历进程函数并对其进行替换,可以实现对任意进程的隐藏

3  基于 DLL 的进程隐藏技术:远程注入Dll技术
DLL文件没有程序逻辑,不能独立运行,由进程加载并调用,所以在进程列表中不会出现DLL文件。如果是一个以DLL形式存在的程序,通过某个
已有进程进行加载, 即可实现程序的进程隐藏。在windows系统中, 每个进程都有自己的私有地址空间, 进程不能创建属于另一个进程的内存指针
。而远程线程技术正是通过特殊的内核编程手段, 打破进程界限来访问另一进程的地址空间, 以达到对自身 进行隐藏的目的。
远程线程注入DLL技术指的是通过在某进程中创建远程线程的方法进入该进程的内存空间, 然后在其内存空间中加载启动DLL程序。

4  基于远程线程注入代码的进程隐藏技术
这种方法与远程线程注入 DLL 的原理一样,都是通过在某进程中创建远程线程来共享该进程的内存空间。所不同的是,远程线程注入代码通过直接
拷贝程序代码到某进程的内存空间来达到注入的目的。因为程序代码存在于内存中, 不仅进程列表中无法检测, 即使遍历进程加载的内存模块也无法
找到被隐藏程序的踪迹。

5  Rootkit方式
Intel CPU 有4 个特权级别: Ring 0, Ring 1, Ring 2, Ring 3。Windows 只使用了其中的 Ring  0 和  Ring  3 两个级别。
操作系统分为内核和外壳两部分:内核运行在Ring0级,通常称为核心态(或内核态),用于实现最底层的管理功能,在内核态
可以访问系统数据和硬件,包括处理机调度、内存管理、设备管理、文件管理等;外壳运行在 Ring 3 级,通常称为用户态,
是基于内核提供的交互功能而存在的界面,它负责指令传递和解释。通常情况下,用户态的应用程序没有权限访问核心态的地址空间。
Rootkit 是攻击者用来隐藏自己的踪迹和保留 root 访问权限的工具,它能使攻击者一直保持对目标机器的访问,以实施对目标计算机的控制[1]。从 Rootkit 运行的环境来看,可将
其分为用户级 Rootkit 和内核级 Rootkit。
用户态下,应用程序会调用 Wi n32 子系统动态库(包括Kernel32.dll, User32.dll, Gdi32.dll等) 提供的Win32 API函数,
它们是  Windows  提供给应用程序与操作系统的接口,运行在Ring  3 级。用户级 Rootkit 通常就是通过拦截 Win32  API,建立系统钩子,插入自己的代码,从而控制检测工具对进程或服务的遍历调用,实现隐藏功能。
内核级 R o o t k it 是指利用驱动程序技术或其它相关技术进入Windows 操作系统内核,通过对 Windows 操作系统内核相关的数据结构或对象进行篡改,以实现隐藏功能。
由于Rootkit 运行在 Ring  0 级别,甚至进入内核空间,因而可以对内核指令进行修改,而用户级检测却无法发现内核操作被拦
截。
下面介绍两种使用 Rootkit 技术来实现进程隐藏的方法。册表来实现启动,因而易于被检测出来。显然,要增强进程的隐蔽性,关键在于增强加载程序文件的隐藏性。

<1>   SSDT Hook

参考本文最下面的链接

<2> DKOM (Direct Kernel Object Manipulation,直接内核对象操作)

使用DKOM方法进行进程隐藏。在Windows操作系统中,系统会为每一个活动进程创建一个进程对象EPROCESS,为进程中的每一个线程创建一个线程对象 ETHREAD。

在 EPROCESS 进程结构中有个双向链表 LIST_ENTRY,LIST_ENTRY结构中有FLINK 和BLINK 两个成员指针,分别指向当前进程的前驱进程和后继进程。

如果要隐藏当前进程,只需把当前进程的前驱进程的BLINK 修改为当前进程的BLINK,再把当前进程的后继进程的FLINK修改为当前进程的FLINK。

好文章 :进程隐藏与进程保护(SSDT Hook 实现)

http://www.baidu.com/link?url=ydyu3Qv5alN_GUSE7LSYWJjc-X_amMh75qSN024ldqUGbcQ8YLT1nUlOV07ePFTl

http://www.cnblogs.com/BoyXiao/archive/2011/09/04/2166596.html

http://www.baidu.com/link?url=D3YtcDlkmUvyvVCYbH4hWzmCkHLZt8HQ4L2L9TzapcV99dUgnlOMS2akwXYqq2VllPnvI5Q6XCxZ9HFie-TLUZ0qDogyZJGH5zHd7ROUCru

远程注入  http://hi.baidu.com/fpsixkukaiadmwr/item/19c1b1794a418647ee1e5339

http://www.cnblogs.com/BoyXiao/archive/2011/08/11/2134367.html

貌似 ssdt hook  在win7下不能用来隐藏进程了  貌似是因为找不到偏移,因为win7采用了随机偏移

一个好的支持win7的隐藏方法

http://bbs.pediy.com/showthread.php?p=1085174

进程隐藏的各种方法 以及分析比较以及实现链接相关推荐

  1. linux系统调用劫持隐藏进程,linux 下隐藏进程的一种方法及遇到的坑

    前言 1.本文所用到的工具在 https://github.com/gianlucaborello/libprocesshider 可以下载 2.思路就是利用 LD_PRELOAD 来实现系统函数的劫 ...

  2. linux 进程隐藏常见方法

    一.基于用户空间进程隐藏手法 1.偷梁换柱型 1)隐藏原理 ​ 道理很简单,通过替换系统中常见的进程查看工具(比如ps.top.lsof)的二进制程序,导致原先查看进程相关信息的工具(ps.top.l ...

  3. php下拉列表框 是隐藏变色的代码,jQuery设置下拉框显示与隐藏效果的方法分析...

    本文实例讲述了jQuery设置下拉框显示与隐藏效果的方法.分享给大家供大家参考,具体如下: jQuery的 hide() 和 show() 方法分别用来隐藏和显示 HTML 元素,而 toggle() ...

  4. linux进程隐藏 hook readdir函数 挂载覆盖/proc/pid 目录

    前言 上篇介绍了如何在有源码的情况下,通过 argv[] 及 prctl 对进程名及参数进行修改,整篇围绕/proc/pid/目录和 ps.top 命令进行分析,做到了初步隐藏,即修改了 /proc/ ...

  5. Linux下进程隐藏的常见手法及侦测手段

    痕迹清理 1.  退出前 history -c 2.  多使用sftp吧 0.0 3.  web日志删除一些 4.  用户目录下很多 history,一言不合就是删 :) 4.  btmp wtmp ...

  6. [网友LionD8的毕业论文]Windows2000 内核级进程隐藏、侦测技术

    Windows2000 内核级进程隐藏.侦测技术 指导老师:龙老师 学生:LionDB        学号:0137506 摘要 信息对抗是目前计算机发展的一个重要的方向,为了更好的防御,必须去深入的 ...

  7. Windows2000 内核级进程隐藏、侦测技术[毕业论文]

    Windows2000 内核级进程隐藏.侦测技术 指导老师:龙老师 学生:LionDB        学号:0137506 摘要 信息对抗是目前计算机发展的一个重要的方向,为了更好的防御,必须去深入的 ...

  8. CRUX下实现进程隐藏(2)

    前面我们介绍了如何修改/proc目录读取函数的方法实现进程隐藏.这篇博文将介绍另一种方法-- 劫持系统调用实现进程隐藏. 其基本原理是:加载一个内核模块(LKM),通过劫持系统调用sys_getden ...

  9. 《进程隐藏》:DLL挟持实现进程隐藏

    <进程隐藏技术系列之简介>https://blog.csdn.net/weixin_43742894/article/details/105793689 在上一篇文章中,对进程隐藏技术进行 ...

  10. CRUX下实现进程隐藏(3)

    通过一个内核模块拦截文件系统的回调函数来实现进程隐藏. VFS(Virtual File System)是Linux在实际文件系统(如ext3,ext4,vfat等)上抽象出的一个文件系统模型,简单来 ...

最新文章

  1. 特斯拉:即将推出神经网络雨刷
  2. DotNET企业架构应用实践-系列目录
  3. c#与api类型对照表
  4. 【Kafka】Kafka inter.broker.listener.name must be a listener name defined in advertised.listeners
  5. Kudu 使用注意点
  6. vue下载导出Excel案例
  7. 服装免费收银系统哪个好-云上铺会员管理软件
  8. 青花瓷抓HTTPS数据
  9. ViPER4Android驱动平台,viper4android驱动
  10. linux查看隐藏大文件夹,Linux系统隐藏文件/文件夹操作教程
  11. 硬件编码相关知识(H264,H265),IPB分别压缩率/H265/H264压缩率
  12. SOHUDBA/SOHU-DBProxy: 搜狐公司强大的数据库中间件
  13. c51单片机汇编语言1秒延时,51单片机汇编延时程序算法详解
  14. MEGA软件——系统发育树构建方法(图文讲解) 转载
  15. jquery去掉onclick事件
  16. 当 BBR 面对时延抖动
  17. 在OpenStack全球开源社区里,中国力量正在异军突起
  18. 从计算机应用的角度进行分类,计算机考试文档
  19. 计算机基础:今天一次把 Unicode 和 UTF-8 说清楚
  20. 集中趋势测度平均数之一(算术、调和、位置)

热门文章

  1. mac 上安装selenium, phantomjs 和 chromedriver
  2. Pro Tools播放引擎设置详解
  3. 全球及中国飞行时间传感器芯片行业研究及十四五规划分析报告
  4. ORACLE公司传奇历史
  5. win环境安装October CMS
  6. 【Windows】 rundll32.exe 在 Windows10 上的应用
  7. 与现代教育技术有关的计算机知识,基于计算机的现代教育技术手段的利用与开发...
  8. java duplicate key_java.lang.IllegalStateException: Duplicate key 1
  9. 图像压缩编码和解码原理——阐述了DCT变换的实质
  10. 轮子王-原创数据结构-V2.0--内存//二级指针//小样儿练习