AIDE

Wesley13
• 阅读 495

##AIDE

    当一个入侵者进入了你的系统并且种植了木马,通常会想办法来隐蔽这个木马(除了木马自身的一些隐蔽特性外,他会尽量给你检查系统的过程设置障碍)。
    通常入侵者会修改一些文件,比如管理员通常用ps -aux 来查看系统进程,那么入侵者很可能用自己经过修改的ps 程序来替换掉你系统上的ps 程序,以使用ps 命令查不到正在运行的木马程序。如果入侵者发现管理员正在运行crontab 作业,也有可能替换掉crontab程序等等。
    所以由此可以看出对于系统文件或是关键文件的检查是很必要的。
    目前就系统完整性检查的工具用的比较多的有两款:Tripwire 和AIDE,前者是一款商业软件,后者是一款免费的但功能也很强大的工具。
    
    AIDE(Adevanced Intrusion Detection Environment),高级入侵检测环境,是一个入侵检测工具,主要用途是检查文件的完整性,审计计算机上的那些文件被更改过了。
    AIDE 能够构造一个指定文件的数据库,它使用aide.conf 作为其配置文件。
    AIDE 数据库能够保存文件的各种属性,包括:权限(permission) 、索引节点序号(inode number) 、所属用户(user)、 所属用户组(group) 、文件大小、最后修改时间(mtime) 、创建时间(ctime) 、最后访问时间(atime) 、增加的大小以及连接数。
    AIDE还能够使用下列算法:sha1 、md5 、rmd160 、tiger ,以密文形式建立每个文件的校验码或散列号。
    这个数据库不应该保存那些经常变动的文件信息,例如:日志文件、邮件、/proc 文件系统、用户起始目录以及临时目录.
    
    安装
        yum install aide
    
    aide
        aide - Advanced Intrusion Detection Environment
        aide [parameters] command
        Commands:
            -i, --init            Initialize the database
            -C, --check            Check the database
            -u, --update            Check and update the database non-interactively
            --compare            Compare two databases
        Miscellaneous:
            -D, --config-check        Test the configuration file
            -v, --version            Show version of AIDE and compilation options
            -h, --help            Show this help message
        Options:
            -c [cfgfile]    --config=[cfgfile]        Get config options from [cfgfile]
            -B "OPTION"    --before="OPTION"        Before configuration file is read define OPTION
            -A "OPTION"    --after="OPTION"        After configuration file is read define OPTION
            -r [reporter]    --report=[reporter]        Write report output to [reporter] url
            -V[level]    --verbose=[level]        Set debug message level to [level]
            
    
    修改配置文件
        vim /etc/aide.conf ( 指定对哪些文件进行检测)
            /test/chameleon     R
            /bin/ps     R+a
            /usr/bin/crontab     R+a
            /etc     PERMS
            !/etc/mtab     # “!” 表示忽略这个文件的检查
            R=p+i+n+u+g+s+m+c+md5      权限+ 索引节点+ 链接数+用户+ 组+ 大小+ 最后一次修改时间+ 创建时间+md5 校验值
            NORMAL = R+rmd60+sha256    
    初始化默认的AIDE 的库:
        /usr/local/bin/aide --init
    生成检查数据库(建议初始数据库存放到安全的地方)
        cd /var/lib/aide
        mv aide.db.new.gz aide.db.gz
    检测:
        /usr/local/bin/aide --check
    更新数据库
        aide --update
点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Karen110 Karen110
2年前
​一篇文章总结一下Python库中关于时间的常见操作
前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在
Wesley13 Wesley13
2年前
VirtualBox导入已安装好的操作系统的方法
VirtualBox导入已安装好的操作系统的方法1、修改UUID进入VirtualBox安装目录,运行VBoxManage修改UUID,命令运行如下:D:\\VirtualBoxVBoxManage.exe internalcommands setvdiuuid E:\\VirtualX
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Stella981 Stella981
2年前
Linux应急响应(四):盖茨木马
0x00前言Linux盖茨木马是一类有着丰富历史,隐藏手法巧妙,网络攻击行为显著的DDoS木马,主要恶意特点是具备了后门程序,DDoS攻击的能力,并且会替换常用的系统文件进行伪装。木马得名于其在变量函数的命名中,大量使用Gates这个单词。分析和清除盖茨木马的过程,可以发现有很多值得去学习和借鉴的地方。0x01应急场景
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
JOptionPane修改图标
1.在Linux平台下.JOptionPane会显示Java默认的图标,在window平台不显示图标,如何替换这个图标了?2JOptionPane.setIcon(Icon)修改的是内容区域的icon,而不是左上角的Icon.所以需要通过修改Jdialog/Frame的图标来达到修改默认图标的问题.3.代码:if(JOptio
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这