攻击检测和防范方法之日志分析

      攻击检测和防范方法之日志分析无评论

  1. 引言

  针对linux服务器攻击主要包括溢出提权攻击、端口扫描、后门程序植入等攻击手段,而针对web应用程序的攻击则覆盖更加广泛,包括SQL注入、XSS、命令执行、文件包含、木马上传等漏洞。本文主要考虑如何通过日志分析技术实现对攻击的检测和防范技术。

  2. 常见攻击手段

  常见的操作系统攻击和web攻击如下:

攻击检测和防范方法之日志分析

  图1:攻击手段分类

  操作系统攻击方法和web的攻击防范很多,本文仅考虑上传攻击手段的检测和防范技术。

  环境如下:

  操作系统:CentOSrelease 6.4 (Final)

  数据库系统:mysql Ver 14.14 Distrib 5.1.66

  中间件环境:Apache/2.2.15(Unix)

  Web应用程序环境:DVWA1.0.8

  3. 日志配置方法 3.1 Linux操作系统日志

  日志是Linux安全结构中的一个重要内容,是提供攻击发生的唯一真实证据。Linux中日志包括以下几类:登录时间日志子系统、进程统计日志子系统、错误日志子系统等。

  登录时间日志子系统:登录时间通常会与多个陈旭的执行产生关联,一般情况下,将对应的记录写到/var/log/wtmp和/var/run/utmp中。为了使用系统管理员能够有效地跟踪谁在合适登录过系统,一旦触发login等程序,就会对wtmp和utmp文件进行相应的更新。

  进程统计日志子系统:主要由系统内核实现完成记录操作。当一个进程终止时,系统就自动记录该进程,往进程统计文件或中写一个纪录。进程统计的目的是为系统中的基本服务提供命令使用统计。.

  错误日志子系统:其主要由系统进曾syslogd(以及替换版本rsyslogd)实现操作有各个应用系统(FTP、Samba等)的守护进程、系统内核来自动利用syslog向/var/log/secure中添加纪录,用来记录系统错误日志。

  审计子系统:审计子系统提供了一种记录系统安全信息的方法,为系统管理员在用户违反系统安全法则时提供及时的警告信息。在用户空间,审计系统由auditd、ausearch等应用程序组成。审计后台auditd应用程序通过netlink机制从内核中接收审计消息,然后,通过一个工作线程将审计消息写入到审计日志文件中,其中,还有一部分消息通过消息分发后台进程dispatcher调用syslog写入日志系统。

发表评论