1、1 项目九 跳板与痕迹清除项目九 跳板与痕迹清除2 项目九 跳板与痕迹清除【项目概述】l攻击者攻击目标计算机时,为了避免被追踪,会采用各种跳板技术。跳板的实现有很多种方式,最简单的就是使用代理技术,早期的代理有HTTP代理和SOCKS代理。如今有更加便于使用的Web在线代理。由于Web在线代理有较大的局限性和安全隐患,VPN技术也成了很重要的跳板技术。这些技术也常被用作翻墙,访问因为某种原因而被封锁的网络。除了采用代理、VPN等技术隐藏攻击者真正的IP外,攻击者也常常在入侵成功后清除入侵的痕迹。本项目将介绍常见的代理服务器的使用、Windows痕迹清除、Linux痕迹清除。3 项目九 跳板与痕
2、迹清除l【项目分析】l当攻击者入侵被攻击者时,被攻击者可以根据IP地址追踪攻击者来自哪里。攻击者为了隐藏自己真正的IP,通常会采用跳板,这样被攻击者进行反向追踪时就只能追踪到攻击来自跳板。如果攻击者采用多个跳板,且跳板分布在不同的国家,那么被攻击者就需要依次追踪每一个跳板,追踪将变得非常困难。了解常见的跳板技术以及攻击者清除入侵痕迹的技术,对于防范网络攻击、追踪攻击者具有重要意义。l本项目将通过以下内容讲述跳板与痕迹清除技术:l1.代理服务器的使用;l2.Windows痕迹清除;l3.Linux痕迹清除。4 项目九 跳板与痕迹清除项目主要内容:任务一 代理服务器的使用任务二 Windows痕迹
3、清除任务三 Linux痕迹清除5 项目九 跳板与痕迹清除任务三 Linux痕迹清除6 项目九 跳板与痕迹清除l任务描述l Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并从中检索出需要的信息。黑客在对Linux系统进行攻击后,会在系统中留下痕迹,甚至对系统的运行产生影响。为了掩盖攻击痕迹,攻击不被发现,请清除相关系统日志,清除痕迹。7 项目九 跳板与痕迹清除l任务分析l大部分Linux系统发行版默认的日志守护进程为syslog,位于“/etc/syslog”或“/etc/syslogd”或“/etc/rsyslog.d”,默认配置文件为“/etc/syslog.con
4、f”或“rsyslog.conf”,任何希望生成日志的程序都可以向syslog发送信息。syslog可以根据日志的类别和优先级将日志保存到不同的文件中。l1.Linux系统日志系统的分类。l(1)系统接入日志。l多个程序会将该日志记录到“/var/log/wtmp”和“/var/run/utmp”文件中,telnet、ssh等程序会更新wtmp和utmp文件,系统管理员可以根据该日志跟踪到谁在何时登录到系统。l(2)进程统计日志。lLinux内核记录该日志,当一个进程终止时,进程统计文件pacct或acct中会进行记录。进程统计日志可以供系统管理员分析系统使用者对系统进行的配置以及对文件进行的
5、操作。8 项目九 跳板与痕迹清除l(3)错误日志。lSyslog日志系统已经被许多设备兼容。Linux系统的syslog可以记录系统事件,主要由syslogd程序执行。Linux系统下各种进程、用户程序和内核都可以通过syslog文件记录重要信息,错误日志记录在“/var/log/messages”中。有许多Linux/UNIX程序创建日志,像HTTP和FTP这样提供网络服务的服务器也保持详细的日志。l2.Linux系统常用日志文件位置。lLinux系统的日志文件有很多,为了消除痕迹并不需要清除所有的日志,因此需要先了解Linux系统的常用日志文件的位置及作用,以便更有针对性的清除相关日志。L
6、inux系统的日志文件一般位于“/var/log”下,常用的日志文件如表9-2所示。9 项目九 跳板与痕迹清除表9-2 代理服务器的使用任务IP地址规划日志文件说明/var/log/boot.log该文件记录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息。/var/log/syslog它只记录警告信息,常常是系统出问题的信息,所以更应该关注该文件。要让系统生成syslog日志文件,需要在“/etc/syslog.conf”文件中加上“*.warning/var/log/syslog”。该日志文件能记录当用户登录时login文件记录下的错误密码、Sendmail的问题、s
7、u命令执行失败等信息。/var/log/authlog该日志文件记录系统身份认证的信息,如SSH登录的身份认证等。/var/log/cron该日志文件记录crontab守护进程crond所派生的子进程的动作,前面加上用户、登录时间和PID以及派生出的进程的动作。/var/log/maillog该日志文件记录了每一个发送到系统或从系统发出的电子邮件的活动。它可以用来查看用户使用哪个系统发送工具或把数据发送到哪个系统。/var/log/messages该日志文件是许多进程日志文件的汇总,从该文件可以看出任何入侵企图或成功的入侵。10 项目九 跳板与痕迹清除/var/log/secure该日志文件记
8、录与安全相关的信息。基本上,只要涉及需要输入账号、密码的软件,当登录时(不管登录正确与否)都会被记录到这个文件中,包括系统的login程序、图形界面登录所使用的gdm程序、su、sudo等程序,还有网络联机的ssh、telnet等程序,登录信息都会被记录在这里。/var/log/lastlog该日志文件记录最近成功登录的事件和最后一次不成功的登录事件,有login生成。在每次用户登录时被查询,该文件是二进制文件,需要使用last命令查看,根据UID排序显示登录名、端口号和上次登录时间。/var/log/wtmp该日志文件永久记录每个用户登录、注销及系统的启动、停机事件。因此,随着系统正常运行时
9、间的增加,该文件也会越来越大,增加的速度取决于系统用户登录的次数。/var/run/utmp该日志文件记录有关当前登录的每个用户的信息。因此,这个文件会随着用户登录和注销系统而不断变化,它只保留当时联机的用户记录,不会为用户保留永久的记录。/var/log/xferlog该日志文件记录FTP会话,可以显示用户向FTP服务器上传或从服务器复制了什么文件。该文件会显示用户复制到服务器上的用来入侵服务器的恶意程序,以及该用户复制了哪些文件进行使用。11 项目九 跳板与痕迹清除l通过对表9-2的分析,可以看出和渗透测试系统或入侵系统相关的日志文件有“/var/log/syslog”、“/var/log
10、/authlog”、“/var/log/messages”、“/var/log/secure”、“/var/log/lastlog”、“/var/log/wtmp”、“/var/run/utmp”,因此要清除这些日志文件的内容。为了加快清理日志文件的速度,可以采用编写批量清除命令脚本的方法。因此,清除Linux日志的步骤包括:l(1)查看相关日志文件;l(2)编写批量清除日志文件内容的命令脚本;l(3)运行脚本,清除文件内容;l(4)查看清除结果。12 项目九 跳板与痕迹清除l任务实施l1.编写脚本文件批量清除日志。l步骤1 在red hat linux 7系统中使用命令查看日志文件,如图9-
11、43所示。图9-43 查看linux 7系统中日志文件13 项目九 跳板与痕迹清除l步骤2 编写批量清除日志文件内容的命令脚本。启动vim编辑器,在/var/log目录下新建一个“cl.sh”文件,在文件中输入如图9-44所示内容,完成后保存退出。图9-44 编写批量清除日志的命令脚本14 项目九 跳板与痕迹清除l在图9-44中,“#!/bin/sh”是指此脚本使用“/bin/sh”来解释执行,“#!”是特殊的表示符,其后面跟的是解释此脚本的shell的路径。脚本中“/dev/null”可以看成Linux中的一个垃圾箱,这里的值永远是空的。以第二行命令为例,“cat/dev/null /var
12、/log/syslog”意思为把syslog文件扔进垃圾箱,赋空值syslog。15 项目九 跳板与痕迹清除l步骤3 运行批量清除日志文件内容的命令脚本。在终端中输入命令“bash cl.sh”运行命令脚本。l步骤4 查看清除结果。Linux系统的日志文件大部分是文本格式,也有部分文件是二进制格式,如lastlog、wtmp、utmp等。以secure文件为例,清除日志后文件的内容变为空,如图9-45所示。图9-45 清除secure日志内容后的结果同样的,对于wtmp这样的二进制格式文件,使用命令“who wtmp”可以查看到清除日志后文件的内容也变为空。16 项目九 跳板与痕迹清除l2.直
13、接删除日志文件。l除了可以将日志文件内容变为空值,还可以通过使用Linux系统中的rm命令直接删除文件,但是这个方法比较暴力,一般不建议这样做。l3.使用脚本命令清除文件内容。l除了使用cat命令编写清除日志文件内容的脚本外,还可以使用echo命令,如“echo /var/log/messages”,意思是输入空值到messages文件中,如图9-46所示,在/var/log目录下新建一个文件cl2.sh,并输入相关脚本内容。图9-46 使用echo命令清除日志内容的脚本文件17 项目九 跳板与痕迹清除l4.清除history历史命令记录。lLinux系统大部分功能是通过命令行执行的,对于执行
14、过的命令,可以使用history命令查看,因此在清除操作痕迹时,还需要将执行过的相关命令记录进行清除。l在终端中输入history c 命令清除已执行过的命令,清除效果如图9-47所示,清除之后对于已经执行过的命令不再显示。图9-47 清除history历史命令记录18 项目九 跳板与痕迹清除l【项目拓展】l1.本项目介绍了跳板与痕迹清除技术,请根据任务二的内容,通过命令行窗口运行wevtutil命令查看系统中的日志信息,并进行删除等操作。l2.根据任务三的内容,对于web系统、文件服务器等系统的专属日志文件进行清除。还可使用shred命令或dd命令等从硬盘上擦除数据文件。19 项目九 跳板与痕迹清除l【项目总结】l本项目介绍了跳板与痕迹清除技术,包括代理服务器的使用、Windows痕迹清除、Linux痕迹清除。本章知识点总结如下图所示。20 项目九 跳板与痕迹清除THANKS