网络攻击行为分析平台中的日志分析技术
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
00:01:30:bb:13:e0:08:00 SRC=211.80.42.73 DST=202.120.6.36 LEN=40
TOS=0x00 PREC=0x00 TTL=125 ID=50348 DF PROTO=TCP SPT=2712 DPT=2223
WINDOW=17520 RES=0x00 ACK URGP=0
*.info;mail.none;authpriv.none;cron.none @<IP of remote syslog server>
系统 实现击键记录的技术各不相
authpriv.* @<IP of remote syslog server>
图2 日志统一分析模型 在所设计的网络攻击行为分析平 台上的日志统一分析模型如图 2所示 其中日志分析和存储服务器中有一个 预处理模块 它应处理如下一些工 作 分类 时间归一化和格式统一化 首先 从不同数据捕获点中获取 的日志应根据记录行为的不同层次来 进行分类 将其归为网络行为 系统 行为 应用行为 用户行为中的一种 其次 时间归一化是个必不可少 的步骤 因为统一时间的格式是日后 排序和分析日志的前提条件 由于各
略中设置各种相关的审计内容 并可通过事件察看器来察看审计日志 这里 我
Dec 13 21:33:56 eric snort[19228]:
们可以使用微软提供的工具(如 dumpel.exe)或手动脚本编程来远程定期备份和 SCAN synscan portscan: 202.52.99.203:21
火墙的回馈信息 防火墙此 时如捕获到异样的外发数据 包 开始报警或发出其它提 示 则说明有成功的攻击发 生 这时 就需要从原先留档 的临时日志文件中人工分析 (或使用智能化的日志分析工 具) 出相关的日志记录 并结合 Honeypot 中传送出来的击键记录进行 分析 从中得到攻击者的攻击方法 流程和攻击样本(工具 代码等) 可见 日志分析能在构建和更新 攻击知识库的工作中发挥着不小的作 用 当然 日志分析技术在其它领域 也有相当大的应用空间 相信随着时 间的推移 会有更广阔的应用前景
使用防火墙系统的主要作用还在于进行数据控制 但其完备的日志记录同 者的目的 而在Unix类Honeypot主机
时也能为数据捕获模块所利用 在所构建的攻击行为分析平台中所使用的是一 上则一般使用替换shell的技术 即改
个基于Netfilter架构的防火墙软件iptables 如果加入如下规则
写系统的默认shell(如/bin/bash) 将
个数据捕获点收集到的日志记录都包 含有日期 时间这两个字段 但彼此 的格式不尽相同 所以可以统一格式 化为 GMT Time 或者本地时间(Local Time) 从而为下一步的排序和整合 日志做准备 这里需注意统一设置和 更新各数据捕获点的系统时间 否则 时间排序就会错乱而不能真实地反映 攻击行为流程
"OUT: "
志记录示例
对任何进出防火墙的连接和传输信息进行记录 则所记录的日志格式类似
Dec 13 08:47:05 eric -bash: HISTORY:
于下例
PID=4172 UID=0 ls
Dec 13 21:09:21 eric kernel: IN: IN=eth0 OUT= MAC=00:e0:4c:e2:35:11: 表1 日志记录行为的层次关系
(这些容易被攻击者更改或删除) 大多通过syslog 服务来进行系统日志记录 重 台中还有一个非常重要记录转储至远程主机 只要在它的配置文 点 那就是在各个 Honeypot 主机上进
件 /etc/syslog.conf 中加入类似于以下一些条目即可
行用户击键的记录 针对不同的操作
/sbin/iptables -t mangle -A PREROUTING -i eth0 -j LOG --log-level 6 --log-prefix "IN: 用户的击键行为记录下来并同时调用
"
执行正常的命令操作 这同 Comlog 技
/sbin/iptables -t mangle -A PREROUTING -i eth1 -j LOG --log-level 6 --log-prefix 术类似 下面的是 Unix 系统中击键日
4. 入侵检测系统日志
入侵检测系统用来进行数据捕获 是网络攻击行为分析平台中
56
信息安全与通信保密 2004 11
万方数据
学术研究
Academic Research
综合分析以上各类的日志记录 它们与记录行为的层次关系如表 1 所 示
从表 1 可以看出 数据捕获较为 全面 能记录攻击行为的各个层次 基本可以重现攻击者所做的一切 但 随之而来的就是对所有日志进行统一 分析将有一定的难度
日志分析在构建攻击知识 库中的应用
平时所说的攻击知识库主要包括 漏洞库 攻击样本库和攻击状态特征 库 而这里提出的日志分析技术以及 日志统一分析模型可用来帮助构建和 更新攻击样本库和攻击状态特征库
此处需另外添加一个模块 对当
前从各数据捕获点收集上来的网络行 为 系统行为 应用行为进行实时分 析 如果当前日志反映的行为匹配或 符合已知的攻击状态特征( 从攻击状 态特征库中查询) 则可将相应的攻 击事件次数加一( 用来进行网络攻击 类型统计 也可不做) 然后简单丢 弃 而关键部分在于若无任何攻击状 态特征匹配 则将本条日志存入另外 的临时文件以待事后分析 并等待防
再次 需定义统一的日志合并格 表2
式 可以参照使用如表 2 规范 所有的日志记录通过预处理模块
之后 应针对各自的分类不同 开始 进行同步合并工作 即按照时间先后 排序 归并即可 从而可以清晰分析
出攻击的过程和效 果 若能结合用户行 为记录就可进一步获 取攻击的手段和样 本
最后 将分类 排序 合并后的日志 记录定期( 如每小时) 远程备份至另一台数据库服务器中 从而可为后续的攻击行为分析存储较 为原始和完备的材料
学术研究
Academic Research
网络攻击行为分析 平台中的日志分析技术
摘 要 网络攻击行为分析平台主要通过诱骗攻击者的攻击来学习和研究新的攻击技术 是一 种主动的安全防御 其中 日志分析技术对于提取和研究攻击行为至关重要
王轶骏 薛 质 / 文
引 言
1. 网络攻击行为分析平台概述 所谓的网络攻击行为分析平台是 为了满足主动防御这个发展趋势而构 建的 它的主要目的是用于诱骗攻击 者对其进行攻击 然后尽可能地记录 攻击者在上面所做的一切 事后的工 作就是分析 学习和研究所有的日志 记录 提取出未知的攻击方法和样 本 然后尽早提出相应的防御技术 2. 网络攻击行为分析平台的组 成单元 一个能够实际运行的行为分析平 台应该包括网络系统及服务运行 数 据控制 数据捕获以及数据采集和分 析等四大模块 如图 1 所示 其中 网络系统及服务运行模块 是等待被攻击者实施攻击行为的对 象 是真正运行在网络上的主机 数 据库和网络设备等 而且对外提供真 实的服务 只是平时在上 面没有正常的系统或人为 行为 我们统称为 Honeypot(蜜罐主机) 数据控制模块在此平 台上用于对进出的数据信 息进行严密的控制 根据 预定义的规则进行必要的 限制 适当降低风险 这 是因为 一方面在主动研
总 结
现今 网络攻击手段层出不穷 不断翻新 传统的被动防御概念已经 不能适应这种发展趋势 攻击行为分 析平台正是为了适应主动防御思想而 构建的 它主要通过诱骗攻击者来学 习和研究新的攻击技术 而日志分析 技术则是其中的关键技术 本文通过 分析不同种类的日志记录 提出了一 个实用的日志统一分析模型 但是 由于日志记录的种类繁多 而且灵活 性非常大 所以一定存在未考虑完备 的地方 但可在此模型的基础上开发 出可实际工作的日志分析模块 来辅 助构建完善的攻击行为分析平台
图1 攻击行为分析平台的模块构成
据采集和分析模块还需归类 统一格 式化和分析从不同主机 系统上收集 到的日志记录
日志分析的意义
从搭建攻击行为分析平台的初衷 可以看出 为了学习和研究动态的黑 客行为 根本的落脚点还在于分析大 量的日志记录 从中快速 有效地提 取出动态 未知的攻击行为信息 可 以说 日志分析技术是搭建攻击行为 分析平台之中最基本 最重要的技 术 具体来说 进行日志分析有以下 意义
同
下面所示的是从 ssh 端口登录失败时的 syslog 记录
在 Win 类 Honeypot主机上一般使
Dec 16 20:59:05 eric sshd(pam_unix)[1910]: authentication failure; logname= uid=0 euid=0 用钩子(Hook)技术来截获键盘消息
格式 它的默认记录格式如下
此系统上通过 cmd.exe 执行的命令记
日期 时间 客户IP地址 用户名 服务器IP地址 服务器端口 方法 URI资源 URI查询 录下来并传递给远程日志主机 同时
协议状态 用户代理
将指令参数传递给系统正常 cmd.exe
3. 防火墙日志
的备份文件加以执行 达到欺骗攻击
究攻击者行为的同时 绝不能让攻击 者将其作为跳板来攻击其它系统和主 机 如拒绝服务攻击 对外网进行扫 描等 所以需要对外发的连接和数据 包的发送做必要的限制 但另一方 面 如果数据控制过严过紧的话 比 如完全拒绝外出平台的数据包 就会 使得攻击者很容易觉察到异样 从而 停止攻击行为
数据捕获模块的作用就是尽可能 全面 准确地记录下攻击者所有的攻 击行为信息 其中包括攻击者所使用 的攻击方法(手段 策略)和攻击样本 (工具 代码) 也就是通常所说的日 志记录 日志记录将可能有多种形式 (由各个不同的数据捕获点获取) 如 系统日志 防火墙日志 入侵检测日 志 击键记录等 而如何将这些不同 格式的日志统一归档和分析 从中提 取出有价值的黑客行为信息 则将由 数据采集和分析模块完成 此外 数
寻找未知的黑客攻击方法和 样本 并在此基础上分析和提炼出相 应的攻击状态特征
对各种系统和应用服务所遭 受的攻击方式和强度进行分析和统 计
日志分析技术也是攻击取证 技术中的关键部分
日志记录的种类
日志记录是进行日志 分析的前期准备 而日志 分析正是对所有的日志记 录 包括从各种数据捕获 点获取到的日志以及从不 同系统中收集到的日志 进行统一归档和分类 其
格式化 Honeypot 主机上的系统日志 应用程序日志和安全日志 标准的转储日 -> 172.16.1.101:21
志格式如下所示
5. 击键记录
日期 时间 类别 类型 事件标示符 来源 用户 主机名(非IP地址) 描述
除了以上所说的各种日志记录方
而 Unix 系统除了使用 wtmp 和 utmp 等文件来记录用户登录 注销情况之外 式 在所构建的网络攻击行为分析平
日志的统一分析模型
1. 日志统一分析的必要性 无论是各个Honeypot主机上的系 统 应用 用户行为日志 还是网络 行为日志 都应该快速进行实时记 录 然后输出到固定的一台远程主机 上去 而这台远程主机就必须负责对 所有的日志记录分别进行格式化处理 和统一归档 由于各种日志记录的格 式不尽相同 这里就需要引入一个预 处理模块 在归档日志之前进行分 类 时间归一和格式统一等工作 2. 统一分析模型
行为来全面反映黑客的攻击行为 所以在网络攻击行为分析平台之中 设置了 为 Snort 的配置灵活性非常大 可根
多个数据捕获点(参见图 1) 其中主要有以下 5 种
据各自平台的实际情况进行配置 下
1. 系统审计日志
面所示的是一个较为典型的日志记录
Windows 系统的系统审计较为丰富 可在本地安全策略 | 本地策略 | 审核策 格式
tty=ssh ruser= rhost=192.168.33.116 user=root
除此之外 Comlog 技术也使用较多
2. 应用服务日志
Comlog 技术指的是用一个perl脚本程
这里以 Windows 系统的 IIS WEB 服务为例 默认使用 W3C 扩充日志文件 序替换系统的 cmd.exe 将攻击者在
55
2004 11 信息安全与通信保密
万方数据
学术研究
Academic Research
中难度主要在于从各种数据捕获点获取的日志种类和格式不尽相同 而且记录 非常重要的数据捕获点之一 这里使
格式的灵活度也很大
用的是一个经典的开放源码 IDS 软件
为了实现日志记录的多层次化 即需记录网络 系统 应用和用户等各种 Snort 它几乎可以捕获所有的网络行