首页
学习
活动
专区
圈层
工具
发布

修改后门ctime | Linux 后门系列

0x00 前情提要 在 alias 后门 | Linux 后门系列一文中,我们为了让后门完美一些,修改了后门文件的 atime、mtime,但是 ctime 一直没有办法修改,今天我们来把这一块补齐,...所以可以查看 stat 的源代码,看一下 stat 应用是如何获取和管理 ctime 的,针对其调用的方法进行系统性地修改应该也是可以实现修改文件 ctime 的 0x03 系统时钟与硬件时钟 Linux...系统时间恢复 通过上面的指令,我们已经可以将文件的 ctime 伪装成和系统某些文件一模一样的状态了,现在面临的问题是如何恢复系统时间。...在修改系统时间之前可以先看一下系统时间和硬件时间是否有较大差距 sudo hwclock --show && date +"%Y-%m-%d %H:%M:%S" 可以看到,差距不大,可以考虑从硬件时间恢复系统时间 修改前将系统时间覆盖到硬件时间,修改后恢复时从硬件时间恢复系统时间...2022-11-02 00:37:06 目录和文件名也要进行对应修改 同时,既然是配置文件,我们将恶意配置文件的权限和所有权也都设置和同目录下正常文件一致(权限和所属方面要符合后门实际情况,不要造成修改后没有权限读取了

6.9K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    初识Linux · 信号保存

    前言: 前文我们已经介绍了信号产生,在时间的学习线上,信号的学习分为预备知识,信号产生,信号保存,信号处理,本文我们学习信号保存,在前言部分,我们介绍几个信号保存中的概念。...所以进程是如何识别信号的呢? 两个位图 + 一个函数指针数 == 让进程接收到信号。 这里需要注意,忽略是递达之后的一种可选动作,阻塞是信号一旦被阻塞就不会递达。...信号保存 对于函数的调用,我们需要认识的是这5个函数,分别是sigemptyset, sigfillset, sigaddset, sigdelset,sigismember。...对于函数sigprocmask的参数来说: how:指定如何更改当前的信号屏蔽字。它可以是以下三个值之一: SIG_BLOCK:将 set 中指定的信号添加到当前信号屏蔽字中。

    1K10

    【Linux】信号的保存

    今天我们一起来看看信号时如何进行保存。 信号的保存 在认识信号的保存之前,我们先来熟悉几个概念 实际执行信号的处理动作称为信号递达(Delivery):递达动作: 默认 , 忽略和自定义。...阻塞和忽略是不同的,只要信号被阻塞就不会递达,而忽略是在递达之后可选的一种处理动作 对于一个信号要不要进行处理由block和pending表来决定,如何执行由handler表决定!...Linux操作系统为我们提供了用户级别的位图!: sigset_t 每个信号只有一个bit的未决标志,非0即1,不记录该信号产生了多少次,阻塞标志也是这样表示的。...sigset_t的内部结构类似: struct bits { uint32_t bits[400]; // 400 * 32个比特位 }; 如何读取指定位置的比特位呢?...sizeof(uint32_t)*8) ;// -> bits[i]第几个数字中 j = 40 % (sizeof(uint32_t)*8) ;// -> bits[i]:j该数字中的第几位 sigset_t是Linux

    2.7K10

    Linux进程信号【信号保存】

    记录信号是否产生,对于 31 个普通信号来说,一个 int 整型就足以表示所有普通信号的产生信息了;信号还有可能被 “阻塞”,对于这种多状态、多结果的事物,操作系统会将其进行描述、组织、管理,这一过程称为 信号保存...在下单后,快递可能一会儿送达(没有阻塞),可能五天送达(阻塞 -> 解除阻塞),有可能永不送达,因为快递可能永远堵车(阻塞) 堵车也有可能在你下单前发生(信号产生前阻塞) 至于 信号递达后的处理动作 如何理解呢...表示 未被阻塞/未产生未决,1 则表示 阻塞/未决 对于信号的状态修改,其实就是修改 位图 中对应位置的值(0/1) 对于多次产生的信号,只会记录一次信息(实时信号则会将冗余的信号通过队列组织) 如何记录信号已产生...信号在被解除 阻塞状态 后,很快就会 递达 了 关于信号何时递达、以及递达后的处理动作,在下一篇文章中揭晓 以上关于 信号、信号集 的操作都是在进程中进行的,不影响操作系统 ---- 总结 以上就是本次关于 Linux...- 解除阻塞 - 递达信号 的全过程,最终证明 信号在产生之后是保存在 未决表 中的 ----

    1.8K20

    Linux信号的保存和处理

    信号的保存 信号其他常见概念 实际执行信号的处理动作称为信号递达(Delivery): 默认 忽略 自定义捕捉 信号从产生到递达之间的状态,称为信号未决(Pending)。...如果在进程解除对某信号的阻塞之前这种信号产生过多次,将如何处理?POSIX.1允许系统递送该信号一次或多次。...Linux是这样实现的:常规信号在递达之前产生多次只计一次,而实时信号在递达之前产生多次可以依次放在一个队列里。...如何理解操作系统如何正常运行 操作系统的本质是一个死循环+时钟中断,不断调度系统调用。 如何执行系统调用?...内核和用户 在Linux操作系统中,用户态(User Mode)和内核态(Kernel Mode)是两种不同的执行级别,它们定义了程序(包括操作系统内核和用户程序)的权限和访问资源的能力。

    1.7K10

    【linux学习指南】详解Linux进程信号保存

    保存信号 信号其他相关常⻅概念 实际执⾏信号的处理动作称为信号递达(Delivery) 信号从产⽣到递达之间的状态,称为信号未决(Pending)。 进程可以选择阻塞(Block)某个信号。...如果在进程解除对某信号的阻塞之前这种信号产⽣过多次,将如何处理?POSIX.1允许系统递送该信 号⼀次或多次。...Linux是这样实现的:常规信号在递达之前产⽣多次只计⼀次,⽽实时信号在递达之 前产⽣多次可以依次放在⼀个队列⾥。本章不讨论实时信号。..._sighandler_t sa_handler; unsigned long sa_flags; void (*sa_restorer)(void); /* Not used by Linux...信号集操作函数 sigset_t类型对于每种信号⽤⼀个bit表⽰“有效”或“⽆效”状态,⾄于这个类型内部如何存储这些。

    60510
    领券