20159208 《网络攻防实践》第九周学习总结

20159208 《网络攻防实践》第九周学习总结

教材学习内容总结

本周学习了教材的第九章和第十章。第九章主要介绍了恶意代码安全攻防。首先介绍了恶意代码的基础知识,包括恶意代码的概念和分类。恶意代码指的是使计算机按照攻击者的意图执行以达到恶意目的的指令集。恶意代码的分类:计算机病毒、蠕虫、恶意移动代码、后门、特洛伊木马、僵尸程序、内核套件(Rootkit)、融合型恶意代码。分别就这些分类分别做了比较详细的介绍。比如,僵尸程序与僵尸网络:概念、演化过程、僵尸网络功能结构(网络控制器和僵尸程序,其中僵尸程序分为主体功能模块和辅助功能模块)、僵尸程序的命令与控制机制(基于IRC协议的命令与控制机制、基于HTTP协议的命令与控制机制、基于P2P协议的命令与控制机制)接下来介绍了恶意代码的分析方法,包括静态分析和动态分析,静态分析的方法有反病毒软件扫描、二进制结构分析、反汇编反编译、代码结构与逻辑分析等方法;动态分析的方法有系统动态行为监控、网络协议栈监控、沙箱技术、动态调试技术等。最后通过实例介绍了些实践应用。
第十章主要介绍了缓冲区溢出和Shellcode。首先介绍了软件安全漏洞的基本概念,软件安全漏洞包括系统的脆弱性或缺陷、攻击者对缺陷的可访问性和攻击者对缺陷的可利用性三个元素。软件安全具有复杂性、可扩展性、连通性。软件安全漏洞有以下几类,有内存安全违规类、输入验证类、竞争条件类、权限混淆与提升类。接下来介绍了缓冲区溢出的概念,即在计算机程序向特定缓冲区内填充数据时,超出了缓冲区本身的容量,导致外溢数据覆盖了相邻内存空间的合法数据,从而改变了程序执行流程破坏系统运行完整性。然后介绍了缓冲区溢出攻击背景知识,例如编译器与调试器的使用、汇编语言基础知识、进程内存管理、函数调用过程等,然后介绍了Linux和Windows平台上的栈溢出和Shellcode,并介绍了相关的攻击技术。然后介绍了堆溢出的相关知识,包括函数指针改写,C++类对象虚函数表改写和Linux下堆管理glibc库free()函数本身漏洞。最后介绍了缓冲区溢出的防御技术,有尝试杜绝溢出、允许溢出但不让程序改变执行流程、无法让攻击代码执行三种方法。

教材学习中的问题和解决过程

第九章主要介绍了恶意代码的攻防,通过介绍各类恶意代码的原理,并且通过静态分析与动态分析技术对这些恶意代码进行分析,让我们能够对恶意代码有充分的理解。还通过具体的例子来进行实践,让我们更加容易学会弄懂。
第十章详细介绍了缓冲区溢出的基本概念、渗透攻击技术原理及其过程,重点介绍了缓冲区溢出攻击注入Shellcode的实现技术原理,并且提出了防御缓冲区溢出攻击的技术和方法。非常使用。
这方面自己实践还是不够,需要多进行实践学习以更加透彻的弄懂其原理,学习渗透攻击方法。

视频学习中的问题和解决过程

本周学习的视频介绍了压力测试工具,包括VoIP、WEB、网络和无线压力四类测试工具。然后介绍了数字取证工具,其中包括PDF取证工具、反数字取证工具、内存取证工具,以及取证镜像工具集等。最后介绍了报告工具与系统服务,包括Dradis、Cutycapt、Recordmydesktop、Truecrypt等工具的使用以及Kali下的其他工具的基本使用。
以下是一些工具使用截图。
VOIP压力测试工具iaxflood

网络压力测试工具siege

Web压力测试工具thc-ssl-dos
![](http://images2015.cnblogs.com/blog/909781/201605/909781-20160501220713613-1081169601.png
无线压力测试工具reaver

学习目标(本学期)

第二周进度

  • 上周目标完成情况
    良好

第九周进度

  • 教材第九章和第十章
    kali视频36-38

参考资料

原文地址:https://www.cnblogs.com/yin-20159208/p/5451304.html