20189222 《网络攻防技术》第九周作业

一、KaliSecurity视频总结(31-35)

1.1 kali压力测试工具


压力测试通过确定一个系统的瓶颈或者不能接受的性能特点,来获得系统能提供的最大的服务级别的测试。通俗的讲,压力测试是为了发现在什么条件下您的应用程序的性能会变得不可接受。kali下压力测试工具宝库VoIP压力测试,WEB压力测试,网络压力测试及无线压力测试四个分类。

1、VoIP压力测试工具
包括iaxflood和inviteflood
2、WEB压力测试

借助THC-SSL-DOS攻击工具,任何人都可以把提供SSL安全连接的网站攻击下线,这种攻击方法被称为SSL拒绝服务攻击(SSL DOS)。德国黑客组织“The hacker's choice”发布THC SSL DOS,利用SSL中的已知弱点,迅速消耗服务器资源,与传统DDoS工具不同的是,它不需要任何带宽,只需要一台执行单一攻击的电脑。漏洞存在于协议的renegotiation过中,renegotiation被用于浏览器到服务器之间的验证。

1、网络测试工具
dhcpig耗尽DHCP资源池的压力测试,尝试把dhcp分配的IP地址全部耗尽,耗尽之后新链接进来获取不到IP地址,则不能上网。
2、Macof
可做泛洪攻击工具,也是网络压力测试的工具
3、Siege
Siege是一个压力测试和评测工具,设计用于WEB开发这评估应用在压力下的承受能力:可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行

4、T50压力测试
T50是一个压力测试工具,它功能强大且具有独特的数据包注入工具,T50支持Linux系统可进行多种协议的数据包注入,实际上支持15种协议。
5、无线压力测试
mdk3和reaver

1.2 数字取证工具


数字取证技术将计算机调查和分析技术应用于对潜在的,有法律效力的电子证据的确定与获取,同样他们都是针对黑客和入侵的,目的都是保障网络的安全。

1、PDF取证工具
peepdf是一个使用python编写的PDF文件分析工具,它可以检测恶意的PDF文件。其设计目标是为安全研究人员提供PDF分析中可能使用到的所有组件,无需使用3或者4中工具来完成同一件任务。

2、内存取证工具
volatility是开源的windowa,Linux,MAC,Android的内存取证分析工具,由python编写成,命令行操作,支持各种操作系统。

3、取证分隔工具binwalk
binwalk是一个固定的分析工具,旨在协助研究人员对固件非分析,提取及逆向工程用处。简单易用,完全自动化脚本,并通过自定义签名,提取规则和插件模块,还有重要的一点的是可以轻松的扩展。借助binwalk有个很强大的功能是提取文件(压缩包)中存在的隐藏文件(或内容文件),亦可分析文件格式。,解压缩包,查看压缩包。


分析一个压缩包,可告知从什么地址开始什么地址结束

使用-e功能可直接将文件解压出来

可作为文件格式分析的工具

4、取证哈希验证工具集
md5deep是一套跨平台的方案,可以计算和比较MD5等哈希加密信息的摘要MD5,SH-1,SHA-256,Tiger,Whirlpool.
5、取证镜像工具集
针对镜像文件的取证工具,如mmsstat与mmls

mmls 可以直接分析镜像的目录与状态信息

6、数字取证套件
两个图形化的界面autopsy(以浏览器的形式访问本地的9999端口)

程序的图形化界面dff,图形界面是dff.gui

1.3 报告工具与系统服务


1、Dradis
Dradis是一个用于提高安全监测效率的信息共享框架(协作平台),Dradis提供了一个集中地信息仓库,用于标记我们目前已经做的工作和下一步计划。
打开dradis会打开浏览器

2、Keepnote
一个很精简的笔记软件,特点如下:
富含文本格式,彩色字体,内置图片,超链接,树型分层组织内容,全文搜索,综合截图,文件附件,集成的备份和恢复,拼写检查(通过gtkspell),自动保存,内置的备份和恢复(zip文件存档)

创建后可以加page

3、媒体捕捉工具:cutycapt

可以将图像保存

4、Recordmydesktop
屏幕录像工具,用来录制桌面。
5、Magic Tree
是一个面向渗透测试人员的工具,可以帮助你轻松直接的进行数据合并,查询,外部命令执行和报告生成,所有的数据都会以树形结构存储,非常方便。可以调用nmap
6、Truecrypt
是一款免费开源的加密软件,同时支持windows vista,7/Xp,MAc OS X,linux等操作系统。
7、服务功能介绍
及时启动和关闭某些服务,使用命令,每一项对应每一项的服务。
ssh可以远程连接

二、教材学习内容总结

1、第九章 恶意代码安全攻防

恶意代码定义

  恶意代码是指使计算机按照攻击者的意图执行以达到恶意目标的指令集。
类型包括:计算机病毒、蠕虫、恶意移动代码、后门、特洛伊木马、僵尸程序、内核套件、融合型恶意代码。

  • 计算机病毒

    • 基本特性:感染性、潜伏性、可触发性、破坏性、衍生性
    • 感染及引导机制:可执行文件、引导扇区、支持宏指令的数据文件。
    • 传播机制:移动存储、电子邮件、下载、共享目录。
  • 网络蠕虫

    • 基本特性:通过网络自主传播
    • 组成结构:弹头、传播引擎、目标选择算法、扫描引擎、有效载荷
  • 后门与木马
      后门是允许攻击者绕过系统常规安全控制机制的程序,能够按照攻击者自己的意图提供访问通道;而木马作为特洛伊木马的简称,是指一类看起来具有某个有用或者善意目的,但实际掩盖着一些隐藏恶意功能的程序。

  • 僵尸程序与僵尸网络

    • 僵尸网络功能结构:网络控制器和僵尸程序,其中僵尸程序分为主体功能模块和辅助功能模块
    • 僵尸程序的命令与控制机制:基于IRC协议的命令与控制机制、基于HTTP协议的命令与控制机制、基于P2P协议的命令与控制机制
  • Rootkit

    • 用户模式Rootkit和内核模式Rootkit。其中内核模式Rootkit包括Linux内核模式Rootkit和Windows内核模式Rootkit

恶意代码分析方法

  • 静态分析技术:反病毒软件扫描、文件格式识别、字符串提取分析、二进制结构分析、反汇编、反编译、代码结构与逻辑分析、加壳识别与代码脱壳。
  • 动态分析技术:快照对比、系统动态行为监控、网络协议栈监控、沙箱、动态调试。

2、软件安全攻防——缓冲区溢出和Shellcode

本章针对缓冲区溢出这类最为基础与传统的安全漏洞类型,详细介绍了它的基本概念、渗透攻击技术原理与具体过程,以及通过缓冲区溢出攻击注入Shellcode的实现技术原理。最后,为软件开发与使用人员提供了防御缓冲区溢出攻击的技术和方法。

  • 软件安全概述

    • 安全漏洞:在系统安全流程、设计、实现或内部控制中所存在的缺陷和弱点,能够被攻击者所利用并导致安全侵害或对系统安全策略的违反,包括三个基本元素:系统的脆弱性或缺点、攻击者对缺陷的可访问性以及攻击者对缺陷的可利用性。
    • 软件安全漏洞类型:内存安全规范类、输入验证类、竞争条件类、权限混淆与提升类。
  • 缓冲区溢出

    • 定义:计算机程序中存在的一类内存安全违规类漏洞,在计算机程序向特定缓冲区内填充数据时,超出了缓冲区本身的容量,导致外溢数据覆盖了相邻内存空间的合法数据,从而改变了程序执行流程破坏系统运行完整性。
    • Linux平台上的栈溢出与Shellcode
      • Linux平台栈溢出攻击技术:NSR、RNS、RS三种模式。NSR和RNS模式适用于本地缓冲区溢出和远程栈溢出攻击,而RS模式只能用于本地缓冲区溢出攻击。
      • Linux平台的Shellcode实现技术:Linux本地Shellcode实现机制、Linux远程Shellcode实现机制
    • Windows平台上的栈溢出与Shellcode
      • Windows平台栈溢出攻击技术:Windows平台栈溢出攻击技术机理(对程序运行过程中废弃栈的处理方式差异、进程内存空间的布局差异、系统功能调用的实现方式差异)、远程栈溢出攻击示例、野外Windows栈溢出实例
      • Windows平台Shellcode实现技术:Windows本地Shellcode、Windows远程Shellcode
  • 堆溢出攻击

    • 函数指针改写
    • C++类对象虚函数表改写
    • Linux下堆管理glibc库free()函数本身漏洞
  • 缓冲区溢出攻击的防御技术

    • 尝试杜绝溢出的防御技术

    • 允许溢出但不让程序改变执行流程的防御技术

    • 无法让攻击代码执行的防御技术

三、《Python 黑帽子》第十、十一章代码

码云链接:BHP_CH10_CH11_Code

posted on 2019-04-26 11:49  20189209郑炜  阅读(168)  评论(0编辑  收藏  举报