Home | 简体中文 | 繁体中文 | 杂文 | 知乎专栏 | Github | OSChina 博客 | 云社区 | 云栖社区 | Facebook | Linkedin | 视频教程 | 打赏(Donations) | About
知乎专栏多维度架构 微信号 netkiller-ebook | QQ群:128659835 请注明“读者”

第 9 章 多维度架构之安全

目录

9.1. 植入式攻击入侵检测解决方案
9.1.1. 什么是植入式攻击?
9.1.2. 为什么骇客会在你的系统里面植入木马?
9.1.3. 什么时候被挂马?
9.1.4. 在那里挂马的?
9.1.5. 谁会在你的系统里挂马?
9.1.6. 怎样监控植入式攻击
9.1.6.1. 程序与数据分离
9.1.6.2. 监控文件变化
9.1.6.3. 安装日志收集程序
9.2. Shell 历史记录异地留痕审计与监控
9.2.1. 什么是Shell历史记录异地留痕与监控
9.2.2. 什么要将Shell历史记录异地留痕并监控
9.2.3. 何时做历史记录异地留痕
9.2.4. 在哪里做历史记录异地留痕
9.2.5. 角色与权限
9.2.6. 怎么实现历史记录异地留痕
9.2.6.1. 节点配置
9.2.6.2. 推送端
9.2.6.3. 收集端
9.3. 延伸阅读

9.1. 植入式攻击入侵检测解决方案

9.1.1. 什么是植入式攻击?

什么是植入式攻击,通俗的说就是挂马,通过各种手段将木马上传到你的系统,修改原有程序,或者伪装程序是你很难发现,常住系统等等。

9.1.2. 为什么骇客会在你的系统里面植入木马?

通常挂马攻击骇客都是有目的的很少会破坏你的系统,而是利用你的系统。

例如,使用你的网络作DDOS攻击,下载你的数据资料卖钱等等

9.1.3. 什么时候被挂马?

有时你到一家新公司,接手一堆烂摊子,俗称“擦屁股”。这是中国是离职,中国式裁员,中国式工作交接.....的结果,各种奇葩等着你。

你接手第一项工作就是工作交接,最重要的工作可能就是检查系统后门。通常工作交接少有积极配合的,全要靠你自己。

9.1.4. 在那里挂马的?

在我多年的工作中遇到过很多种形式挂马,有基于Linux的rootkit,有PHP脚本挂马,Java挂马,ASP挂马。通常骇客会植入数据库浏览工具,文件目录管理工具,压缩解压工具等等。

9.1.5. 谁会在你的系统里挂马?

98%是骇客入侵,1%是内人干的,1%是开后门仅仅为了工作方便。

本文对现有的系统无能为力,只能监控新的入侵植入

9.1.6. 怎样监控植入式攻击

9.1.6.1. 程序与数据分离

程序包括脚本,变异文件等等,通常是只读权限

数据是指由程序生成的文件,例如日志

将程序与数据分离,存放在不同目录,设置不同权限, 请关注“延伸阅读”中的文章,里面有详细介绍,这里略过。

我们这里关注一旦运行的程序被撰改怎么办,包括入侵进入与合法进入。总之我们要能快速知道那些程序文件被修改。前提是我们要将程序与数据分离,才能更好地监控程序目录。

9.1.6.2. 监控文件变化

我使用 Incron 监控文件变化

# yum install -y incron
# systemctl enable incrond
# systemctl start incrond
			

安装日志推送程序

$ git clone https://github.com/netkiller/logging.git
$ cd logging
$ python3 setup.py sdist
$ python3 setup.py install			
			

配置触发事件

# incrontab -e
/etc IN_MODIFY /srv/bin/monitor.sh $@/$#
/www IN_MODIFY /srv/bin/monitor.sh $@/$#

# incrontab -l
/etc IN_MODIFY /srv/bin/monitor.sh $@/$#
/www IN_MODIFY /srv/bin/monitor.sh $@/$#
			

/srv/bin/monitor.sh 脚本

# cat /srv/bin/monitor.sh
#!/bin/bash
echo $@ | /usr/local/bin/rlog -d -H 172.16.0.10 -p 1220 --stdin						
			

/etc 与 /www 目录中的任何文件被修改都回运行/srv/bin/monitor.sh脚本,/srv/bin/monitor.sh脚本通过/usr/local/bin/rlog程序将文件路径数据发给远程主机172.16.0.10。

9.1.6.3. 安装日志收集程序

$ git clone https://github.com/netkiller/logging.git
$ cd logging
$ python3 setup.py sdist
$ python3 setup.py install				
			

配置收集端端口,编辑文件logging/init.d/ucollection

			
done << EOF
1220 /backup/172.16.0.10/incron.log
1221 /backup/172.16.0.11/incron.log
1222 /backup/172.16.0.12/incron.log
EOF
			
				

然后根据incron.log给相关管理人员发送邮件或短信警报等等,关于怎么发邮件与短信不再本文谈论范围,有兴趣留意我的官网。