前言
在网络安全领域,是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
Python语言近年来已经变得越来越流行,越来越强大。Python除了语法简洁、开发效率高外,最重要的是拥有数量庞大的第三方库,很多知名的网络安全工具、安全系统框架都是用Python开发的,掌握Python编程已经成为网络安全从业人员的必备技能之一。如果你立志成为一名合格的安全从业者,就不能仅停留在使用他人工具的层面,应具备利用Python打造出属于自己的神兵利器的能力!
目前,高校计算机信息安全专业很少将Python在安全领域的应用列入必修课程,市面上的安全书籍也大多以介绍安全工具的使用为主,而忽略了对最为重要的网络安全编程能力的培养,所以这也是我们撰写本书的初衷。优秀的编程能力和丰富的渗透测试经验是一名优秀的渗透测试人员所必备的,希望本书可以让更多的网络安全爱好者和从业人员重视网络安全编程。
本书是MS08067安全实验室继《Web安全攻防:渗透测试实战指南》《内网安全攻防:渗透测试实战指南》后推出的又一本渗透测试实战指南方面的力作,建议读者联合阅读。同时MS08067安全实验室计划于2021年推出《CTF入门之道:安全竞赛实战指南》《区块链安全攻防:渗透测试实战指南》《Java代码安全审计(入门篇)》《工控安全攻防:渗透测试实战指南(入门篇)》等书籍,具体目录及进展情况可在MS08067安全实验室公众号或官网https://www.ms08067.com中查看。
本书结构
本书围绕Python在网络安全渗透测试各个领域中的应用展开,通过大量图解,从实战攻防场景分析代码,帮助初学者快速掌握使用Python进行网络安全编程的方法,深入浅出地讲解如何在渗透测试中使用Python,使Python成为读者手中的神兵利器。
全书理论讲解和实践操作相结合,内容深入浅出、迭代递进,未过多涉及学术性、纯理论性的内容,所讲述的渗透测试编程技术都是干货,读者按照书中所述步骤即可还原实际渗透测试场景。本书主要内容如下。
第1章 渗透测试概述。简单介绍了信息安全发展史、信息安全行业的现状、渗透测试的基本流程以及渗透测试的具体方法。
第2章 Python语言基础。介绍Python相关的基础知识,主要包括Python环境的搭建,编写第一个Python程序,Python模块的安装与使用,Python语言的序列、控制结构、文件处理、异常处理结构,Socket网络编程和可执行文件的转换等基础知识。
第3章 渗透测试框架。详细介绍了Pocsuite渗透测试框架的安装和使用,以及POC、EXP脚本编写。
第4章 信息搜集。介绍主动信息搜集和被动信息搜集的方法,以及如何通过Python编写一套属于自己的信息搜集工具。
第5章 漏洞检测与防御。详细介绍了几种常见漏洞的原理、检测方法以及防御策略,如未授权访问漏洞、外部实体注入漏洞、SQL盲注漏洞、服务端请求伪造漏洞等,还介绍了SQLMap的Tamper脚本的编写方法。
第6章 数据加密。介绍了常见加密算法的原理,如Base64编码、DES、AES、MD5等加密算法,以及如何通过Python脚本的方式实现对数据加解密。
第7章 身份认证。主要介绍如何混合破解弱口令,结合社会工程学的知识以及网络协议的弱点,找到极具可能性的密码组合。主要内容包括社会工程学密码字典的生成,后台弱口令问题,SSH以及FTP口令问题。
第8章 模糊测试。主要介绍模糊测试在安全测试中的使用及思路,主要包括模糊测试的基本原理,利用模糊测试绕过安全狗以及优化。
第9章 流量分析。介绍如何通过Python脚本获取网络中的流量数据并进行有效分析。主要内容包括流量嗅探、ARP毒化、拒绝服务攻击及防御策略。
第10章 Python免杀技术。主要介绍如何通过Python实现免杀,包括Python中shellcode加载与可执行文件生成,Cobalt Strike的使用及拓展等。
第11章 远程控制工具。介绍如何利用Python编写远程控制工具,主要内容包括Python远程控制工具的基础模块,远程控制工具的编写和使用。
特别声明
本书仅限于讨论网络安全技术,严禁利用本书所提到的漏洞和技术进行非法攻击,否则后果自负,本人和出版商不承担任何责任!
读者服务
本书的同步公众号为“MS08067安全实验室”,公众号号码为Ms08067_com,公众号中可提供以下资源:
·本书中的全部脚本源代码。
·本书讨论的所有资源的下载或链接。
·关于本书内容的勘误更新。
·关于本书内容的技术交流。
·阅读本书的过程中遇到的任何问题或意见的反馈。
致谢
感谢机械工业出版社策划编辑吴怡为本书出版所做的大量工作;感谢王康对本书配套网站的维护;感谢唐洪玉、lake2、杨文飞、鲍弘捷、四爷、倪传杰、张鉴百忙之中抽空为本书写序或推荐语。
MS08067安全实验室是一个低调潜心研究技术的团队,衷心感谢团队的所有成员,他们是椰树﹑李华峰﹑令狐甲琦、cong9184﹑rkvir﹑roach、AskTgs、杨斌斌、冯杰、支树福、谢鸿俊、孙培豪、恩格尔﹑mzfuzz﹑王老师﹑曲云杰﹑王恺﹑赵风旺﹑500﹑q1ng﹑王康﹑Harveysn0w﹑大王叫我来巡山等,希望通过我们的努力能给安全圈留下一点东西。这里还要特别感谢安全圈的好友,包括但不限于莫名﹑李文轩﹑陈小兵﹑王坤﹑Phorse、杨凡、key﹑klion﹑陈建航﹑陈亮﹑王东亚﹑不许联想、兜哥﹑张胜生﹑程冲﹑周培源、laucyun﹑Demon﹑玄魂、sunvimp、Arcobaleno、星晴、3had0w、eth10、Twe1ve、Leafer、Sin、墨竹星海、清晨﹑Amzza0x00、叶杰锋、xiaoYan、bios000、DarkZero、云顶、许本川、冯正平、电信安全帮研究团队等,感谢他们对这本书给予支持和建议。
念念不忘,必有回响!
徐焱
2020年6月30日