You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
├── kernel
|
|
|
|
|
│ ├── backdoor.c //后门程序,用于监听特定的网络数据包,并根据数据包的内容执行指定的命令
|
|
|
|
|
│ ├── dir.c //判断文件夹是否隐藏
|
|
|
|
|
│ ├── encrypt
|
|
|
|
|
│ │ └── encrypt.c //使用给定的十六进制密钥对文件内容进行加密
|
|
|
|
|
│ ├── file.c //判断文件是否隐藏
|
|
|
|
|
│ ├── include //函数声明、定义、引用的头文件
|
|
|
|
|
│ │ ├── backdoor.h
|
|
|
|
|
│ │ ├── config.h
|
|
|
|
|
│ │ ├── dir.h
|
|
|
|
|
│ │ ├── encrypt.h
|
|
|
|
|
│ │ ├── file.h
|
|
|
|
|
│ │ ├── module.h
|
|
|
|
|
│ │ ├── network.h
|
|
|
|
|
│ │ ├── proc.h
|
|
|
|
|
│ │ ├── string_helpers.h
|
|
|
|
|
│ │ └── util.h //基本的功能实现,例如加密、命令执行和权限提升
|
|
|
|
|
│ ├── Kbuild
|
|
|
|
|
│ ├── khook //替换掉需要钩掉的函数的前几个字节,替换成一个跳转指令,让X开始执行的时候跳转到框架自定义的STUB代码部分,STUB再调用用户自定义的钩子函数。然后又会执行原先被跳转指令覆盖的指令,最后回到被钩掉的函数的正常执行逻辑
|
|
|
|
|
│ │ ├── engine.c //内核级别的挂钩(hook)机制,主要用于在Linux内核中动态修改函数行为
|
|
|
|
|
│ │ ├── engine.h
|
|
|
|
|
│ │ ├── engine.lds
|
|
|
|
|
│ │ ├── internal.h
|
|
|
|
|
│ │ └── x86
|
|
|
|
|
│ │ ├── hook.c //内核中实现x86架构下的函数钩子(hook)
|
|
|
|
|
│ │ ├── Makefile
|
|
|
|
|
│ │ ├── README.md
|
|
|
|
|
│ │ ├── stub32.inc //32位汇编代码的定义或宏
|
|
|
|
|
│ │ ├── stub.inc //汇编代码的定义或宏
|
|
|
|
|
│ │ └── stub.S //x86架构上实现函数调用的拦截和转发 汇编代码
|
|
|
|
|
│ ├── kmatryoshka
|
|
|
|
|
│ │ ├── Kbuild
|
|
|
|
|
│ │ └── kmatryoshka.c //内核模块的初始化
|
|
|
|
|
│ ├── loader
|
|
|
|
|
│ │ └── loader.c ////加载所需模块
|
|
|
|
|
│ ├── main.c
|
|
|
|
|
│ ├── module.c //内核模块隐藏
|
|
|
|
|
│ ├── network.c //网络地址隐藏
|
|
|
|
|
│ ├── proc.c //进程隐藏
|
|
|
|
|
│ ├── string_helpers.c //获取命令行参数,转为可打印的字符
|
|
|
|
|
│ └── util.c //访问和操作进程的命令行参数
|
|
|
|
|
```
|
|
|
|
|
|