信息犯罪与计算机取证实训教程(txt+pdf+epub+mobi电子书下载)


发布时间:2020-08-09 08:55:28

点击下载

作者:王永全 廖根为 涂敏

出版社:人民邮电出版社有限公司

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

信息犯罪与计算机取证实训教程

信息犯罪与计算机取证实训教程试读:

前言

信息安全事关国家安全。对信息安全的保护包括事前、事中和事后保护。信息安全事件发生后,如何有效减少损失、及时追究责任人,需要运用计算机取证技术。在信息安全体系中,它是不可或缺的一个环节,发挥着不可取代的作用,是侦破信息犯罪的关键性技术。

作为一项应用实务型、交叉复合型学科领域,计算机取证的研究在我国尚未得到足够重视。总体来说,计算机取证基础理论匮乏、应用和实务操作不强。鉴此,我们根据理论、技术和实践的最新发展,重新编写了《信息犯罪与计算机取证》一书,并编写了本配套教材《信息犯罪与计算机取证实训教程》,力求理论性与实践性兼具,对主教材理论内容进一步拓展、实践内容进一步充实。

全书共10章,涵盖信息安全、信息犯罪、计算机取证、计算机司法鉴定、综合实训等方面实验,主要包括:信息安全实验、信息犯罪讨论分析、计算机取证基础实验、计算机取证技术实验、电子数据证据的发现与收集实验、电子数据证据的固定与保全实验、数据恢复实验、电子数据证据分析与评估实验、计算机司法鉴定实验、案件综合实验等相关基础知识及实训内容,与主教材《信息犯罪与计算机取证》的主要章节基本对应,以进一步增强《信息犯罪与计算机取证》课程实践性环节的教学需要。

本书第1章设计了若干信息安全实验,可作为信息安全系统性学习的引导;第2章精选了若干信息(网络)犯罪案例供学生讨论,要求能够准确对其进行法律认定;第3章为计算机取证基础实验,对常见的计算机取证工具进行了介绍,并设计了相关实验供学生锻炼;第4章为计算机取证技术实验,重点训练学生电子数据搜索、提取和远程取证的基本技能;第5章为电子数据证据的发现和收集实验,涵盖Windows、Linux、Mac OS、Android、iOS等操作系统的取证;第6章为电子数据证据的固定和保全实验,提供了Hash实验、硬盘复制机和软件镜像工具的实验;第7章为数据恢复实验,包括FAT文件系统和NTFS文件系统的分析,以及较为复杂的被删除文件的数据恢复的操作训练;第8章为电子数据证据的分析和评估实验,介绍事件过程分析、人员关联分析、证据保管链完整性评估这3种常见分析评估方法;第9章为计算机司法鉴定实验,提供了电子邮件真实性鉴定实验、恶意代码鉴定(功能分析)实验、软件相似性鉴定实验这3个实验;第10章为案件综合实验,以一个较完整的案例供读者锻炼和学习。

本书由主编王永全、廖根为拟定编写大纲并负责全书设计、统稿、校对和完善。

本书作者(以撰写章节为序)及其分工如下:赵帅第1章,第6章6.1.2节,第10章;王永全第2章2.1节、2.2节,第8章;蒋瑾第2章2.3节、2.4节,第5章5.1.2节;赵子玉第3章3.1节、3.5.2节;廖根为第3章3.2~3.4节,第4章,第5章5.2.2节、5.3节、5.4.2节、5.5.2节,第6章6.2节、6.3节,第7章7.1节、7.2节、7.3.1节,第9章,第10章;田晶林第3章3.5.1节;李毅第3章3.6.1节、3.7.1节,第9章9.3.2节;明振亚第3章3.6.1节、3.7.1节;王弈第3章3.6.2节、3.7.2节;赵庸第5章5.1.1节、5.2.1节;徐志强第5章5.1.1节、5.2.1节、5.4.1节;唐玲第5章5.2.1节、5.4.1节、5.5.1节;刘三满第5章5.4.1节、5.5.1节;涂敏第7章7.1.2节、7.2.2节;段莹第6章6.1.1节,第7章7.3.2节。

本书在撰写过程中,作为“2018年度上海高校市级精品课程”《信息犯罪与计算机取证》的配套实训教材以及上海市教育委员会2013年度市教委本科重点专业(特色)核心课程建设项目的成果之一,得到了华东政法大学以及各参编人员所在单位或部门领导的支持、关心、帮助和鼓励,在此表示衷心感谢!作者赵帅、田晶林、段莹和赵子玉除了完成各自撰写的内容外,还为本书的部分资料收集与实验验证做了相关工作,在此予以感谢!另外,本书的编辑出版得到了2014年国家社会科学基金重大项目(第二批)“涉信息网络违法犯罪行为法律规制研究”(No.14ZDB147)、江西省经济犯罪侦查与防控技术协同创新中心、山西省“1331工程”重点学科建设计划(No.1331KSC)以及“山西警察学院创新团队”建设项目的支持,在此一并表示衷心感谢!

限于时间、经验和知识水平等因素,书中难免存在一些不足甚至错误,尚祈读者能够多提供宝贵意见,以资日后进一步完善。另外,如需要实验素材,可通过邮箱forensics2019@sina.cn获取。编者2018年10月第1章 信息安全实验

随着互联网应用广度和深度不断延伸,越来越多的计算机连接到互联网上,这对信息系统的安全提出了更高要求,由单个节点扩展到局域网、广域网,直至整个互联网。网络不仅让世界互联互通,而且突破了人与人沟通上的技术阻隔,打破了传统方式交流的隔阂,在时空和逻辑关联上融合得更加紧密。但随之产生的网络安全、信息保障问题喷涌而出,如“斯诺登事件”暗示着国与国之间的网络信息战争,各种电商平台的用户信息泄露事件表明网络用户隐私数据保护的脆弱性问题,“永恒之蓝”病毒的肆意传播反映出网络用户对数据安全保护意识的缺失等问题,由此可见,信息安全与众多网络用户的合法权益和实际利益息息相关,在这样一个对抗性的领域中,有实施不法行为的破坏者,也就需要有技术能力的守护者。

应用是学习的目的,实验是应用的基础。要想做好信息网络的守护者,必须注重理论与实践相结合,针对这一要求,本书介绍涉及信息犯罪与计算机取证实训相关的理论基础和技术实验。本书给出相关实训内容,并列出实验目的、实验环境和工具、实验过程、实验现象与分析等,旨在加深对信息犯罪与计算机取证理论的理解,培养实践创新能力。

信息安全涉及的范围较广,不仅包括信息基础设施的安全、信息运行的安全,还包括信息内容的安全、信息价值的安全等。从信息系统安全体系角度看,它包括物理安全、节点安全、通信安全以及安全管理等内容。因而,信息安全外延远远超越了技术范畴。本章介绍信息安全实验,就网络安全检测、网络安全攻防和加密解密技术进行初步讨论和实训,希望通过本部分实验为深入系统地学习信息安全知识提供指引。1.1 网络安全检测

在网络信息系统中,因意外或者恶意的某种外部或内部原因,威胁并实际破坏网络系统运行,甚至切断服务、窃取数据、影响网络生态安全的行为时有发生。因此,需要针对这些影响因素开展系统性的保护措施,包括事前的积极预防,事中的实时监测,事后的修复补漏。其中,网络安全检测是贯穿整个网络安全保护活动的重要手段和方式。1.1.1 网络安全检测基础知识

1.网络安全检测的基本概念

网络安全检测是通过收集和分析网络行为、安全日志、审计数据、其他网络上可获取信息以及计算机系统中若干关键点的信息,检查网络或系统中是否存在违反安全策略的行为和被攻击的迹象。网络安全检测作为一种积极主动的安全防护技术,在网络系统受到危害之前拦截和响应入侵,提供防范内部攻击、外部攻击和误操作的实时保护。

网络安全检测技术可以分为静态安全技术(如防火墙技术)和动态安全技术(如网络入侵检测技术)。入侵检测作为防火墙防御的补充,实时应对网络入侵攻击,极大地扩展了网络系统管理人员的综合管理能力(包括监视、识别进攻、安全审计、应急响应),也提高了网络安全基础结构的完整性。以下对网络安全检测原理和分类的介绍侧重于后者的介绍。

2.网络安全检测的技术原理

从动态安全技术角度看,存在两种不同的检测思路:异常检测和特征检测。

异常检测(Anomaly Detection)的假设是入侵者活动异常于正常主体的活动,是指使用者根据使用资源状况的正常程度判断入侵与否,根据这一理念建立主体正常活动的“活动简档”,将当前主体的活动状况与“活动简档”相比较,当违反其统计规律时,认为该活动可能是“入侵”行为。这种检测方式不针对某个特定行为,其难点在于如何建立“活动简档”以及如何设计统计算法,从而把不正常的操作作为“入侵”或忽略真正的“入侵”行为。异常检测方法首先定义一组系统处于“正常”情况时的数据,如 CPU 利用率、内存利用率、文件校验和等;然后进行分析确定是否出现异常。常见方法有概率统计法、神经网络法、计算机免疫技术等。

特征检测(Signature-Based Detection)又称误用检测(Misuse Detection),这一检测假设入侵者活动可以用一种模式来表示,系统的目标是检测主体活动是否符合这些模式。它可以将已有的入侵方法检查出来,但对新的入侵方法无能为力,其难点在于如何设计模式既能够表达“入侵”现象又不会将正常的活动包含进来。具体方法是挖掘并提取网络传输中数据特征,对提取的数据特征进行信息识别、分类和学习,结合检测算法发现网络异常数据。

3.网络安全检测的技术分类(1)基于主机的安全检测(Host-based Security Detection)

基于主机的安全检测是侦测单个主机的各项表征数据源,如系统审计和日志记录,实时监控和记录系统异常操作,包括异常登录、越权访问、错误读取。这种类型的检测系统优势是不需要额外的硬件,定期扫描检查,监听主机端口活动,可以迅速做出响应,及时向管理员报警;劣势是依赖主机性能,占用主机自身资源,不能检测网络攻击,保护范围有局限性,分析检测成本可能随着主机数量而线性增长。(2)基于网络的安全检测(Network-based Security Detection)

基于网络的安全检测通过监听网络传输的原始流量,提取数据包中有用的信息特征值,对比已知攻击特征或者匹配原型的正常特征值,侦测和识别攻击事件。与基于主机的安全检测区别是,它将关联各主机,通过探测器(专用主机,其网卡设为混杂模式)监视网段流量,然后通过管理站接收从探测器传来的警报,提示管理员及时采取防范措施。此类检测系统优势是不依赖单机的操作系统作为检测资源,可应用于不同的操作系统平台;配置简单,不需要任何特殊的审计和登录机制;可检测协议攻击、特定环境的攻击等多种攻击。劣势是只能监视经过本网段的流量活动,无法得到主机系统的实时状态,精确度较差。(3)分布式安全检测

随着网速的极速提升,分析匹配数据包中的特征值所消耗的时间和资源越来越高,此外,还存在攻击特征库更新不及时,不能与其他网络安全产品兼容,不能适应多元化攻击方式下的攻击等问题。显然传统的检测方式不能满足安全需求,而分布式安全检测能够及时、可适应、跨平台地应用于不同场景。分布式安全检测系统的一般性结构包括3个组成部分:位于监控主机上的传感器、局域网上的局域网管理器以及中央数据处理器。主机上的传感器和局域网管理器分别从主机和局域网上采集有用数据,然后将数据送至中央数据处理区做全局的入侵检测。在分布式安全检测的体系结构上,检测模型是研究的重点,如哥伦比亚大学和北卡罗来纳州立大学提出基于数据挖掘的模型建立方法。

网络范围内的入侵检测系统必须协同工作,但并非所有检测系统都出自同一厂商,为了实现不同厂商检测产品之间的通信融合,应当制定标准化规范、通信数据格式和相应的规程。具体来说,建立入侵检测系统之间,以及入侵检测系统和网络系统之间通信的功能需求介绍,制定统一的系统体系结构。例如,美国国防部DARPA所资助的一个研究组,提出了统一入侵检测框架。1.1.2 网络安全检测实验

实验一 配置Linux开源防火墙

1.实验背景

netfilter/iptables组合是Linux系统中常见的防火墙技术解决方案,其中,netfilter是Linux内核的防火墙功能模块,iptables是防火墙管理工具。netfilter组件实现静态包过滤和状态报文检查,iptables则是工作在Linux用户空间中的防火墙配置工具,通过命令行方式运行允许用户为netfilter配置各种防火墙过滤和管理策略。

使用用户空间,可以自定制规则,这些规则存储在内核空间的数据包过滤表中。这些规则具有目标功能,在内核中对来自某些网络源、前往某些目的地或具有某些协议类型的数据包进行处理。例如,如果某个数据包与规则匹配,那么使用目标 ACCEPT 允许该数据包通过。还可以使用目标 DROP 或 REJECT阻塞并抛弃数据包。

2.实验目的

理解防火墙基本工作原理,配置Linux系统防火墙,并进行以下测试。(1)过滤ICMP数据包,使主机收不到ping包。(2)只允许特定IP地址访问主机的某一网络服务,而其他的IP地址无法访问。

3.实验要求(1)安装netfileter/iptables工具组件。(2)查看并记录本地主机的网络配置,扫描本地局域网状态。

提示:使用nmap查看。(3)过滤特定IP地址,进行测试并记录测试结果。

提示性操作如下。(1)安装netfilter/iptables 组件

netfilter/Iptables 的 netfilter 组件是与内核集成在一起的,所以只需要下载并安装iptables 用户空间工具。如果是 Linux 版本 7.1 或更高版本,就不需要执行安装组件步骤。该 Linux 分发版(distribution)的标准安装中包含 iptables 用户空间工具(本实验及以下实验使用了Kali Linux环境,可以使用其他Linux环境和版本,但具体操作可能略有差异)。(2)查看当前本机网络配置以及局域网连接状况

攻击端网络配置如下。

root@kali:~# ifconfig

eth0:flags=4163 mtu 1500inet 192.168.0.126 netmask 255.255.255.0 broadcast 192.168.0.255inet6 fe80::20c:29ff:feb2:6251 prefixlen 64 scopeid 0x20ether 00:0c:29:b2:62:51 txqueuelen 1000 (Ethernet)RX packets 1644577 bytes 1929033551(1.7 GiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 161828 bytes 61599390(58.7 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0device interrupt 19 base 0x2000

lo:flags=73 mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6::1 prefixlen 128 scopeid 0x10loop txqueuelen 1000 (Local Loopback)RX packets 2605 bytes 350902(342.6 KiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 2605 bytes 350902(342.6 KiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

局域网状态如下。

# nmap -n -sn 192.168.0.0/24

Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-08 09:44 HKT

Nmap scan report for 192.168.0.1 Host is up (-0.17s latency).

MAC Address: B0:95:8E:10:B8:6A (Tp-link Technologies)

Nmap scan report for 192.168.0.104 Host is up (0.020s latency).

MAC Address: 60:F8:1D:A7:30:D6 (Apple)

Nmap scan report for 192.168.0.105 Host is up (0.018s latency).

MAC Address: F0:C8:50:E2:1A:27 (Huawei Technologies)

Nmap scan report for 192.168.0.106 Host is up (0.012s latency).

MAC Address: 64:BC:0C:4D:90:A9 (LG Electronics (Mobile Communications))

Nmap scan report for 192.168.0.107 Host is up (0.11s latency).

MAC Address: 8C:25:05:38:32:89 (Huawei Technologies)

Nmap scan report for 192.168.0.108 Host is up (0.013s latency).

MAC Address: B0:48:1A:23:D5:01 (Apple)

Nmap scan report for 192.168.0.110 Host is up (0.11s latency).

MAC Address: 88:53:95:B4:D0:63 (Apple)

Nmap scan report for 192.168.0.111 Host is up (0.0048s latency).

MAC Address: 44:37:E6:D7:71:AC (Hon Hai Precision Ind.)

Nmap scan report for 192.168.0.114 Host is up (0.11s latency).

MAC Address: E0:94:67:3D:3D:DA (Intel Corporate)

Nmap scan report for 192.168.0.115 Host is up (0.097s latency).

MAC Address: 00:21:27:B4:5E:9E (Tp-link Technologies)

Nmap scan report for 192.168.0.116 Host is up (0.044s latency).

MAC Address: A8:C8:3A:3C:7A:F3 (Huawei Technologies)

Nmap scan report for 192.168.0.117 Host is up (0.00044s latency).

MAC Address: 7C:67:A2:59:8E:31 (Intel Corporate)

Nmap scan report for 192.168.0.121 Host is up (0.023s latency).

MAC Address: 88:28:B3:C0:B5:91 (Huawei Technologies)

Nmap scan report for 192.168.0.127 Host is up (0.020s latency).

MAC Address: E0:94:67:3D:3D:E9 (Intel Corporate)

Nmap scan report for 192.168.0.126 Host is up.

Nmap done: 256 IP addresses (15 hosts up) scanned in 6.15 seconds(3)显示当前默认规则链

# iptables -L

Chain INPUT (policy ACCEPT)

target  prot opt source       destination

Chain FORWARD (policy ACCEPT)

target  prot opt source       destination

Chain OUTPUT (policy ACCEPT)

target  prot opt source       destination(4)测试ping

root@kali:~# ping 192.168.0.117

PING 192.168.0.117 (192.168.0.117) 56(84) bytes of data.

64 bytes from 192.168.0.117: icmp_seq=1 ttl=64 time=1.09 ms

64 bytes from 192.168.0.117: icmp_seq=2 ttl=64 time=1.19 ms

64 bytes from 192.168.0.117: icmp_seq=3 ttl=64 time=1.29 ms

64 bytes from 192.168.0.117: icmp_seq=4 ttl=64 time=1.25 ms

^C

--- 192.168.0.117 ping statistics --

7 packets transmitted, 7 received, 0% packet loss, time 6013msrtt min/avg/max/mdev =0.499/1.095/1.334/0.268 ms

测试结果显示,此时可以ping目标端。(5)过滤ICMP数据包,使主机收不到ping包

iptables为用户提供配置netfilter规则的命令行接口,其命令语法为$ iptables[-t table] command [match] [target]

其中,-t指定配置规则所在的表,缺失表包括filter、nat、mangle、raw等。command是规则指令,如插入规则、删除规则等。

本实验配置如下。root@kali:~# iptables -A INPUT -p icmp -j DROP

其中,-A 表示将一条规则附加到链的末尾;INPUT 为规则链;-p 为命令设置链的缺省目标操作;-icmp代表数据包类型;-j DROP代表数据包与具有DROP目标操作(过滤)的规则相匹配,会阻塞该数据包,并不对其做进一步处理。

测试结果显示如下。

root@kali:~# iptables -L

Chain INPUT (policy ACCEPT)

target  prot opt source       destination

DROP   icmp-- anywhere      anywhere

Chain FORWARD (policy ACCEPT)

target  prot opt source       destination

Chain OUTPUT (policy ACCEPT)

target  prot opt source       destination

root@kali:~# ping 192.168.0.117

PING 192.168.0.117 (192.168.0.117) 56(84) bytes of data.

^C

--- 192.168.0.117 ping statistics --

52 packets transmitted, 0 received, 100% packet loss, time 52218ms

ping结果显示无法连接。

4.实验器材和环境(1)netfilter/iptables。(2)Kali操作系统。

5.实验思考

防火墙过滤数据包的基本原理是什么?

实验二 在Linux系统中配置开源网络入侵检测系统snort

1.实验背景

snort有3种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上,通过./snort-vde 输出包头信息和数据信息。数据包记录器模式把数据包记录到硬盘上,可以通过./snort-vde-l ./log将嗅探到的数据包记入指定的目录下,加上-b可以以tcpdump二进制日志文件格式记录。网络入侵检测系统分析网络数据流以发现其中包含的攻击行为。

2.实验目的

理解snort网络入侵检测模式的基本工作原理。

3.实验要求(1)正确安装snort。

提示:若存在snort依赖安装包和库的缺失问题,可对应下载并安装。(2)入侵检测测试,并记录测试结果。

提示性操作如下。(1)安装snort

若Linux最新发行版本已安装,则不执行以下步骤。如需,则安装目录可以统一设置在/usr/local/文件夹中,方便管理。

Snort支持Linux和Windows等多平台,在Linux平台上,如Ubuntu或Debian发行版本可以通过apt-get自动获取安装包,Redhat或Cent OS等发行版本可通过yum在线安装和升级snort。

通过./configure&&make&&make install安装snort工具需要提前解决依赖的源码包问题,如libpcap和libpcre等。以下为简要说明,如仍存在问题可通过网络搜索snort源码安装的具体步骤和问题解决方法:

① 在 tcpdump 官方网站下载 libpcap-1.8.1.tar.gz 软件包,通过命令 tar -zxvf libpcap-1.8.1.tar.gz 解压文件,并将其放入自定义的安装目录;复制/usr/local/lib/libpcap.a 到/usr/lib。

② 通过“Fast lexical analyser generator”在github中搜索下载flex-2.6.4.tar.gz软件包,通过 tar -zxvf flex-2.6.4.tar.gz解压文件,并将其放入上述自定义的安装目录中。

注:如果没有编译安装此文件,在编译安装libpcap 时,会出现“configure: error: Your operating system's lex is insufficient to compile libpcap.”的错误提示。

③下载bison-3.0.tar.gz软件包,通过 tar -zxvf bison-3.0.tar.gz解压文件,并将其放入上述自定义的安装目录中。

注:如果没有编译安装此文件,在编译安装libpcap时,会出现“configure: WARNING:don't have both flex and bison; reverting to lex/yacc checking for capable lex... insufficient”的错误提示。

④下载m4-1.4.18.tar.gz软件包,通过 tar -zxvf m4-1.4.18. tar.gz解压文件,并将其放入上述自定义的安装目录中。

注:如果没有编译安装此文件,在编译安装bison-2.4.1时,会出现“configure: error: GNU M4 1.4 is required”的错误提示。

而后依次进入目录m4、bison、flex、libpcap 并执行以下命令。

(sudo) ./configure

(sudo) make

(sudo) make install

⑤ 安装最新的lib库,下载pcre-8.38.tar.gz软件包,通过tar -zxvf pcre-8.38.tar.gz 解压文件,并将其放入上述自定义的安装目录中;下载libdnet-1.11.tar.gz软件包,通过tar- zxvf libdnet-1.11.tar.gz解压文件,并将其放入上述自定义的安装目录中;下载daq-2.0.2.tar.gz软件包并安装;下载zlib软件包并安装。

以上以最新版本为准。

⑥ 安装错误说明,configure过程中发现缺失依赖库,按照提示操作即可。出现snort: error while loading shared libraries: libdnet.1: cannot open shared object file: No such file or directory。

解决办法:创建一个符号链接ln -s /usr/local/lib/libdnet.1 /usr/lib/libdnet.1。

⑦ 测试安装,如图1-1所示。图1-1 测试安装(2)使用snort检测入侵

准备好配置文件后,以IDS形式启动snort的输出,并在前台运行。

root@kali:~/Downloads/snort-2.9.11.1/etc# snort -de -l logs/ -c snort.conf

Running in IDS mode--== Initializing Snort ==-

Initializing Output Plugins!

Initializing Preprocessors!

Initializing Plug-ins!

Parsing Rules file "snort.conf"

PortVar 'HTTP_PORTS' defined : [ 80:81 311 383 591 593 901 1220 1414 1741 1830 2301 2381 2809 3037 3128 3702 4343 4848 5250 6988 7000:7001 7144:7145 7510 7777 7779 8000 8008 8014 8028 8080 8085 8088 8090 8118 8123 8180:8181 8243 8280 8300 8800 8888 8899 9000 9060 9080 9090:9091 9443 9999 11371 34443:34444 41080 50002 55555]

PortVar'SHELLCODE_PORTS'defined: [0:79 81:65535]

PortVar'ORACLE_PORTS'defined: [1024:65535]

PortVar'SSH_PORTS'defined: [22]

PortVar'FTP_PORTS'defined: [21 2100 3535]

PortVar'SIP_PORTS'defined: [5060:5061 5600]

PortVar'FILE_DATA_PORTS'defined: [80:81 110 143 311 383 591 593 901 1220 1414 1741 1830 2301 2381 2809 3037 3128 3702 4343 4848 5250 6988 7000:7001 7144:7145 7510 7777 7779 8000 8008 8014 8028 8080 8085 8088 8090 8118 8123 8180:8181 8243 8280 8300 8800 8888 8899 9000 9060 9080 9090:9091 9443 9999 11371 34443:34444 41080 50002 55555]

PortVar'GTP_PORTS'defined: [2123 2152 3386]

Detection:Search-Method = AC-Full-QSplit Any/Any group = enabledSearch-Method-Optimizations = enabledMaximum pattern length = 20

ERROR: ./../rules/local.rules(0) Unable to open rules file "./../rules/local.rules": No such file or directory.

Fatal Error, Quitting..

截至最后一行,一切运行顺利。Snort期望发现一些规则文件,但没有找到,因此出现错误。

4.实验器材和环境(1)Snort(依赖库包括libpcap、libpcre、daq、zlib、bison、flex、m4)。(2)Kali操作系统。

5.实验思考

请自行设计几种过滤规则,并记录测试结果。1.2 网络安全攻防

攻与防是矛与盾的关系,是一种对立而统一的关系。从攻击方的角度思考系统的薄弱之处,可以提高防守方的能力水平,反之亦然。网络安全攻防也是如此,它是基于计算机网络相关技术并借鉴、整合其他领域的方法(如社会学调查)在网络空间中展开的角力较量。接下来,简要讲述网络安全攻防相关基础知识和网络安全攻防实验。1.2.1 网络安全攻防基础知识

在网络安全攻防基础部分需要清楚为什么会出现网络漏洞、存在哪些网络漏洞、怎么利用这些漏洞以及如何进行网络安全防护。本节简要阐述上述问题。

1.网络安全威胁类型

网络安全威胁是指能够对网络安全造成潜在破坏的任何因素,包括人、事、物。网络安全威胁可以是人为的或自然的,有意的或无意的,来自内部或外部的。从网络技术层面来看,常见的威胁类型有网络协议安全问题、操作系统与应用程序漏洞问题、恶意攻击和有害程序问题等。(1)网络协议安全问题

网络协议是不同通信主体之间的翻译机制,如中国人与美国人在语言交流上必然通过中英文翻译规则来就双方的语言文字进行理解和解释,这种不同文化之间的解释规则就是一种翻译机制。在网络空间中,网络协议是为了进行数据交换而建立的规则、标准或约定的集合。例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识。为了能进行通信,规定每个终端都将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,到达目的终端之后,再变换为该终端字符集的字符。

不论是开放式系统互联参考模型(OSI)还是TCP/IP都需要不同层级结构之间的上下通联,从物理层到网络层到应用层,不同层级之间的信息传输机制存在被利用的可能性,主要集中在拆分与重组、封装、连接控制、顺序递交、流控制、出错控制、复用等功能模块。

网络协议安全问题分为基于头部的漏洞、基于协议的漏洞、基于验证的漏洞与攻击、基于流量的漏洞与攻击。

基于头部的漏洞,是指协议头部与标准发生冲突。例如,头部中某个控制域值设置为0,标准要求至少有一个比特位置值,二者发生对应冲突,产生无效头部,“死亡之 ping”便是一个具体的实例。

基于协议的漏洞,是指虽然所有数据包是合法的,但是协议的执行与数据有冲突。一般的协议是按照一定顺序交换一系列数据包,以执行某个功能。攻击者可以不按照顺序发送数据包,发送速率过慢或过快,不发送数据包,发送合法数据包到错误的网络协议层,发送合法数据包到混合数据包中。经典的例子是“SYN洪泛攻击”,它利用TCP的3次握手协议,发送打开连接请求,使服务器一直处于打开状态,但不给予服务器响应,直至服务器缓冲区溢出,导致服务器崩溃死机。

基于验证的漏洞与攻击,验证是用户给其他用户的认可凭证,通过校对用户名和密码匹配与否,在网络传输中验证是某一协议层对其他层的识别并执行其功能,可通过伪造验证进行攻击。

基于流量的漏洞与攻击,攻击者可以截取网络流量并分析。例如,数据包嗅探可以捕获网络流量信息,掌握关键信息,进而发动破坏攻击。(2)操作系统与应用程序漏洞问题

操作系统是基于内核与接口的统一人机交互平台,但此平台存在软硬件、安全策略的缺陷和不足。攻击者可以利用这些漏洞突破正常管理权限,在未授权的情况下,访问或破坏系统,危害计算机系统安全。同时,在网络环境中,网络的安全性也依赖于各主机系统的安全性,主机系统的安全性又依赖于操作系统的安全性,因此操作系统安全是计算机和网络信息系统安全的重要基础。

网络环境中与操作系统有关的威胁主要有:其一,通过操作系统漏洞破坏系统的可用性和完整性,使应用程序或数据文件受到感染,造成程序和数据受到破坏或丢失;其二,攻击者利用窃取信息等手段获取未授权信息,通过隐秘信道破坏系统的保密性和完整性,从而非法控制用户的主机,非法访问资源;其三,用户自身的误操作也可能破坏系统的可用性和完整性,如用户误删除了系统盘中关键的启动文件,从而影响系统的稳定运行。

应用程序漏洞有关的威胁主要包含两个方面:一是利用应用程序自身安全性防护缺陷,如代码安全漏洞导致软件安全技术被破解,缺乏对软件版权的保护等;二是利用应用程序影响计算机系统安全,如恶意代码攻击。应用程序自身安全缺陷包括设计错误(如垃圾回收机制不健全、格式化字符串漏洞)和实现错误(如缓冲区溢出)等,而利用这些弱点可以轻易破解、复制软件,软件破解是通过特定的工具和方法,对软件载体或自身结构以及数据进行分析,推测运行逻辑和数据处理过程,采用如逆向工程、动态跟踪调试的手段,达到未授权使用软件的目的。恶意代码是在未授权情况下,以破坏系统软硬件设备、窃取信息、干扰正常运行而编写的软件或者代码,如二进制执行文件、宏代码或寄生在启动扇区中的非法指令等。计算机病毒、蠕虫、木马等都可以归于恶意代码的范畴。(3)恶意攻击和有害程序问题

恶意攻击是指攻击者主观上以故意且非正常手段影响网络的保密性、可用性、完整性以及可控性,通常会造成系统被破坏、数据被窃取等不良后果。有害程序是攻击者为了达到非法目的,编写制作的破坏性软件或者代码,如恶意代码为典型有害程序。恶意攻击和有害程序是手段和工具的关系,攻击者利用有害程序工具,实施恶意攻击,从而非法控制、窃取、干扰、破坏系统的正常运行和数据安全。

2.网络攻击方式

针对上述网络安全威胁,破坏者可以通过各种方式展开网络攻击。以下是一些常见的攻击类型和方式。(1)拒绝服务攻击

以下是一些DoS攻击的直接威胁。

① 导致带宽、路由器和系统等重要基础资源的严重浪费。

② 合法的用户不能获得提供的重要服务。

③ 网页浏览具体信息时,或是完全断线,或是网速很慢。

④ DoS攻击可造成大多数服务的临时瘫痪,因而可导致开发、通信、研究及其他工作的混乱。

⑤ 导致数据丢失,时间以及资源浪费。(2)口令入侵

Internet上的用户名和口令认证方法在不同的级别和场合上使用。然而,如果不考虑位置以及应用(如本地或远程应用),大多数口令可以利用以下方法破解:口令猜测、默认口令、字典攻击、暴力破解。

① 口令猜测

口令猜测是在互联网上流行的一种最普通的口令破解技术。在这种方法中,攻击者需要收集被攻击者尽量多的个人信息,如女朋友的姓名、父母姓名、生日、电话号码等,一旦这些被攻击者的个人信息被收集到,攻击者试图通过姓名和数字的不同组合,猜出被攻击者的口令。攻击者通常使用的口令如下。

例如,elizabeth0302,爱人的姓名+生日/电话号码;mqh2405,被攻击者的姓名+生日/电话号码。

② 默认口令

相当数量的本地和在线应用程序在软件开发期间,已经被注册上默认口令。大多数系统管理员在软件安装时会禁用系统默认的口令,然而,不幸的是,仍然有一些在 Internet 上运行的程序会使用默认口令,对攻击者来说,进入一个由默认口令保护的系统,访问敏感信息是非常容易的。通过互联网可以轻易查询和下载包含一些主流应用程序的默认口令列表。因此,对所有的组织来说,禁止使用全部的默认口令是十分必要的。

③ 字典攻击

基于字典的攻击是一种通过不断试验命中口令的破解技术,这种口令攻击技术被攻击者大量使用,攻击者使用自动化的工具,可以试验字典中所有的单词。一旦特定的单词与被攻击者的口令相匹配,自动工具会将单词显示在屏幕上。换言之,所有的字典单词会被作为口令试验,如果一个单词与口令相匹配,被攻击者的口令就会显示在屏幕上。这种技术最大的不足是需要消耗大量系统资源,速度相对较慢。

④ 暴力破解

当所有其他的方法失效时,大多数攻击者会诉诸暴力口令破解,破解工具会试验所有可能的按键组合(键盘上的按键),一旦与口令正确匹配,工具将口令显示在屏幕上,这种通过不同的排列组合试验来破解被攻击者口令的方法,能够破解所有的口令。但是,由于口令可能的排列组合规模太大,暴力口令攻击会消耗太长时间。(3)缓冲区溢出

Internet上的每台服务器(主机)都运行着一些特殊服务或后台程序。这些后台程序为客户提供服务,或者访问特定数据、信息或服务。每个后台程序都运行于主机中的特定端口,因此客户可通过特定的端口,以获得特定的服务。例如,运行于25号端口的邮件后台程序允许客户发送邮件,而运行于110端口的POP后台程序用于接收邮件。也就是说,每个应用程序都运行在一个特定的端口上,并为客户提供某一服务。

运行于主机的这些应用程序拥有某一特权。换句话说,由于这些应用程序运行于主机系统自身端口,它们能获取远端系统所不能访问的部分资源。运行于主机中的大多数应用程序都有访问特定系统变量、系统文件甚至在主机系统上执行特定命令的权利。因此,从黑客的角度而言,如果控制了运行于目标系统中易受攻击的应用程序,就能利用所赋予的特权对目标系统进行恶意攻击。这就是缓冲区溢出攻击的危害所在。

所有的缓冲区溢出攻击都归因于内存管理的混乱,其主要分为以下4个类型:堆栈溢出、格式串溢出、堆溢出、整型溢出。(4)恶意代码

恶意代码是指攻击者使计算机按照自己的恶意目标执行的指令集。恶意代码按照其执行方式、传播方式和对攻击目标的影响分为病毒、蠕虫、木马、后门、僵尸程序、内核套件(RootKit)。

病毒,能够自我复制的代码,通过人工干预的方式将自身嵌套入其他程序。

蠕虫,与病毒类似,能够进行自我复制,不同的是能够按照运行模式自主运行,不需要将自身嵌入其他宿主程序中,可以主动扫描和攻击网络服务的漏洞。

木马,伪装性恶意程序,以可用正常软件为壳,隐藏其恶意目的的恶意代码,有时与后门工具结合伪装成善意的软件,诱导用户安装获取访问权限,诱使用户提供信息。

后门,一种能够绕开正常安全控制机制,为攻击者提供访问主机的恶意代码。攻击者能够通过使用后门程序对目标主机进行完全控制,被控制的主机俗称“肉鸡”。

僵尸网络,攻击者出于恶意目的,传播僵尸程序控制大量主机,通过控制信道控制僵尸主机形成僵尸网络。僵尸网络区别于其他攻击方式的基本特征是一对多的命令与控制机制。

内核套件,是在用户态下通过替换或修改系统关键可执行文件,或者在内核态通过控制操作系统内核,用以获取并保持最高控制权的一类恶意代码,分为用户态 Rootkit 和内核态Rootkit两种。

3.网络保护技术

从攻击时间节点角度,网络防护分为攻击前的防护、攻击中的防护、攻击后的防护。

攻击前的防护,主要利用防火墙技术,隔断内部网和外部网的信息传输,对出入防火墙的流量建立安全审查策略,实现外部进入内部网络流量监控的良好效果。此外,还可以使用扫描漏洞技术,实时探测网络节点的漏洞,使用动态登录口令,设定邮件过滤服务器,使用VPN技术等事前防护技术措施。

攻击中的防护,入侵检测技术是主动防御,自动检测包括内部和外部之间任何传输形式的入侵,有效保护安全的网络数据运行。

攻击后的防护,主要体现在两个方面,一是备份恢复,二是寻迹问责。网络中重要的不一定是主机服务器等硬件设备,而可能是存储于其中的数据信息,若存在入侵或者突发事件,事后的核心可能是恢复原有数据,即利用技术、管理手段以及相关资源确保关键数据能够在突发灾难后及时恢复和重新运行。攻击后的防护涉及的技术主要有容灾备份技术、远程镜像技术、计算机取证与鉴定技术等。容灾备份系统是对于关键部门、企事业所必须具备的技术装备,关键技术包括数据存储技术,如DAS、NAS、SAN;数据容灾技术,如RAID、快照技术。远程镜像技术,有基于磁盘系统的数据复制技术、基于操作系统的数据复制技术以及专门针对数据库的远程复制技术。计算机取证与鉴定技术主要解决寻迹问责问题。当发生网络入侵事件,特别是造成恶性、严重、影响重大的后果的案件时,应当在攻击后通过法律和技术的手段追查入侵者,挖掘入侵证据,追究其法律责任。计算机取证相关技术涉及范围较广,包括数据固定技术、数据保全技术、数据检索技术、数据恢复技术等。1.2.2 网络安全攻防实验

实验 ARP欺骗和中间人攻击

1.实验背景

在一起知识产权诉讼案件中,嫌疑人利用黑客技术监听局域网其他用户的上网行为。要求利用教师提供的实验环境,模拟嫌疑人实施ARP欺骗和中间人攻击的操作过程。

2.实验目的(1)深刻了解TCP/IP存在的缺陷,理解ARP原理。(2)模拟获取局域网内其他用户上网浏览痕迹和访问账户密码。

3.实验要求(1)通过模拟实验,扫描局域网内活动的主机并记录结果。

提示:使用fping扫描,配置流量转发,使用arpspoof进行ARP欺骗。(2)使用driftnet工具获取被监控主机的浏览照片记录,并存储在本地。(3)使用ettercap工具获取被监控主机网页登录时的账户密码,并记录。

以下是一个参考性操作实例。

① 获取网络地址信息

通过ifconfig(Linux系统)和ipconfig(Windows系统)命令查看攻击端和目标端的IP地址和网关,如图1-2所示。图1-2 网络配置信息

例如,本模拟案例中攻击端(虚拟机Kali)IP地址为192.168.0.123,网卡为eth0;目标端(本地Windows7)IP地址为192.168.0.110,网关为192.168.0.1。

② 扫描局域网

扫描局域网内部存在哪些可ping主机。命令为fping -asg 网络地址\子网掩码,本模拟案例为fping -asg 192.168.0.0/24,如图1-3所示。图1-3 可ping主机扫描

在 Kali 的局域网中存在15个活动主机,其中,192.168.0.1是网关地址,192.168.0.110是本模拟实验的目标端。

可以使用nmap工具探测局域网的活动主机。在Kali终端输入nmap -n -sn 192.168.0.0/24,如图1-4所示。图1-4 nmap扫描

③ 转发网络流量

在 Kali 终端中使用 arpspoof 工具,在未进行 ARP 攻击前,目标端可以上网,如图1-5所示。图1-5 转发网络流量1

在终端输入 arpspoof -i 网卡 -t 网关和目标 ip。本模拟实验中输入 arpspoof -i eth0 -t 192.168.0.110 192.168.0.1。结果显示,目标端无法联网,也无法访问外部网址,如图1-6和图1-7所示。图1-6 转发网络流量2图1-7 转发网络流量3

④ 配置流量转发

出现上述问题是因为没有配置ARP欺骗中的流量控制转发配置。下面设置流量转发,如图1-8所示。在Kali终端输入echo 1 >/proc/sys/net/ipv4/ip_forward(默认状态下系统是不进行流量转发的,其值为0,所以需要将转发状态设置为1,成为开启状态)。图1-8 配置流量转发

⑤ 实施ARP欺骗

此时再进行ARP欺骗,流量可以通过攻击端网卡转发出去,实现

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载