AIDE,sudo

2017-09-15  本文已影响0人  尛尛大尹

1.AIDE(监控信息有没有变化)

(1)我们为什么会用AIDE呢?

当一个入侵者进入了你的系统并且种植了木马,通常会想办法来隐蔽这个木马(除了木马自身的一些隐蔽特性外,他会尽量给你检查系统的过程设置障碍),通常入侵者会修改一些文件,比如管理员通常用ps -aux来查看系统进程,那么入侵者很可能用自己经过修改的ps程序来替换掉你系统上的ps程序,以使用ps命令查不到正在运行的木马程序。如果入侵者发现管理员正在运行crontab作业,也有可能替换掉crontab程序等等。所以由此可以看出对于系统文件或是关键文件的检查是很必要的。
目前就系统完整性检查的工具用的比较多的有两款:Tripwire和AIDE,前者是一款商业软件,后者是一款免费的但功能也很强大的工具

(2)什么是AIDE?

AIDE(Adevanced Intrusion Detection Environment)
(高级入侵检测环境)是一个入侵检测工具,主要用途是检查文件的完整性,审计计算机上的那些文件被更改过了。
AIDE能够构造一个指定文件的数据库,它使用aide.conf作为其配置文件。
AIDE数据库能够保存文件的各种属性,包括:权限(permission)、索引节点序号(inode number)、所属用户(user)、所属用户(group)、文件大小、最后修改时间(mtime)、创建时间(ctime)、最后访问时间(atime)、增加的大小以及连接数。
AIDE还能够使用下列算法:sha1、md5、rmd160、tiger,以密文形式建立每个文件的校验码或散列号.
这个数据库不应该保存那些经常变动的文件信息,例如:日志文件、邮件、/proc文件系统、用户起始目录以及临时目录.

(3)安装

yum install aide
 修改配置文件

vim /etc/aide.conf (指定对哪些文件进行检测)


Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png

/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

(4)常用的命令

初始化默认的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
aide -u

2.sudo

sudo和su区别:su只要有口令就可以切换用户,sudo要授权才可以
• man 5 sudoers

(1)sudo作用?

sudo能够授权指定用户在指定主机上运行某些命令。如果未授权用户尝试使用 sudo,会提示联系管理员
sudo可以提供日志,记录每个用户使用sudo操作
sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机
sudo使用时间戳文件来完成类似“检票”的系统,默认存活期为5分钟的“入场券”
通过visudo命令编辑配置文件,具有语法检查功
visudo –c 检查语法

(2)sudo文件放置

 配置文件:/etc/sudoers, /etc/sudoers.d/
 时间戳文件:/var/db/sudo
 日志文件:/var/log/secure
 配置文件支持使用通配符glob:

?:任意单一字符
* :匹配任意长度字符
[wxc]:匹配其中一个字符
[!wxc]:除了这三个字符的其它字符
\x : 转义
[[alpha]] :字母 示例: /bin/ls [[alpha]]*

 配置文件规则有两类;
1、别名定义:不是必须的
2、授权规则:必须的

(3)sudoers 授权规则格式:

用户 登入主机=(代表用户) 命令
user host =(runas) command
 格式说明:

user: 运行命令者的身份
host: 通过哪些主机
(runas):以哪个用户的身份
command: 运行哪些命令
 示例:
root ALL=(ALL) ALL

 Users和runas:

username #uid
%group_name
%#gid
user_alias|runas_alias

 host:ip或hostname

network(/netmask)
host_alias

 command:

command name
directory
sudoedit
Cmnd_Alias

(4)sudo别名

 别名有四种类型:

User_Alias, Runas_Alias, Host_Alias,Cmnd_Alias

 别名格式:

[A-Z]([A-Z][0-9]_)*

 别名定义:

别名类型 名称1=程序;名称2=程序
Alias_Type NAME1 = item1, item2, item3 : NAME2 =item4, item5

示例1:

Student ALL=(ALL) ALL
%wheel ALL=(ALL) ALL(wheel组的所有用户可以代表所有用户执行所有命令)

 示例2:

student ALL=(root) /sbin/pidof,/sbin/ifconfig
%wheel ALL=(ALL) NOPASSWD: ALL

 示例3

User_Alias NETADMIN= netuser1,netuser2
Cmnd_Alias NETCMD = /usr/sbin/ip
NETADMIN ALL=(root) NETCMD

 示例4

User_Alias SYSADER=wang,mage,%admins
User_Alias DISKADER=tom
Host_Alias SERS=www.magedu.com,172.16.0.0/24
Runas_Alias OP=root
Cmnd_Alias SYDCMD=/bin/chown,/bin/chmod
Cmnd_Alias DSKCMD=/sbin/parted,/sbin/fdisk
SYSADER SERS= SYDCMD,DSKCMD
DISKADER ALL=(OP) DSKCMD 

 示例5

User_Alias ADMINUSER = adminuser1,adminuser2
Cmnd_Alias ADMINCMD = /usr/sbin/useradd,/usr/sbin/usermod, /usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root
ADMINUSER ALL=(root) NOPASSWD:ADMINCMD,PASSWD:/usr/sbin/userdel

 示例6

Defaults:wang runas_default=tom
wang ALL=(tom,jerry) ALL(如果切换的时候不用-u指定用户,默认是wang)

 示例7

wang 192.168.175.136,192.168.175.138=(root) /usr/sbin/,!/usr/sbin/useradd

 示例8

wang ALL=(ALL) /bin/cat /var/log/messages*
(5)sudo用法

 sudo [-u user] COMMAND

-V 显示版本信息等配置信息
-u user 默认为root
-l,ll 列出用户在主机上可用的和被禁止的命令
-v 再延长密码有效期限5分钟,更新时间戳
-k 清除时间戳(1970-01-01),下次需要重新输密码
-K 与-k类似,还要删除时间戳文件
-b 在后台执行指令
-p 改变询问密码的提示符号

eg:

sudo –i –u wang 切换身份
sudo -p ”password on %h for user %p:"
上一篇下一篇

猜你喜欢

热点阅读