前言

对于一个网络安全从业者来说,开发能力也是十分重要的,代码决定了上线,不知其他朋友是否也有这样的困惑,在漏洞学习中愈发觉得只停留于表面方法而不去理解原理像是摸着石头过河,摆脱脚本小子进一步成长就得从基础入手,该知识库仅为个人学习笔记,摘要资料和个人笔记供记录学习使用,如有侵权请联系作者。


python的诸多优点,高效、跨平台,安全从业者乐于使用python来编写安全工具或者辅助完成渗透测试、部署蜜罐、网络编程、poc&exp的编写等。知道创宇的Seebug平台就是基于python开发的其外还有Tangscan、Bugscan等,渗透测试神器,SQLmap也是python编写的。python无论是从广度还是深度上都具有非常大的优势,同时在开发的难度上相对其他语言较低。Linux系统上一般是默认安装python的,在渗透测试中如果攻入了内网服务器那么可以利用改主机上的python环境进行进一步攻击。

话不多说,作为一个新手开始学习python需要掌握基础技能

  1. python 正则表达式 //常见漏洞匹配鉴别
  2. python Web编程 //爬虫搜集、敏感目录扫描
  3. python 多线程编程 //敏感目录、文件、后台扫描
  4. python 网络编程 //shell反弹、木马
  5. python 数据库编程 //其他程序调用

在渗透测试中

信息收集:scapy和socket模块,nmap的使用,主机发现、端口扫描、服务识别、操作系统识别

常用渗透测试脚本:zip文件暴力破解、ssh暴力破解、mysql暴力破解、SQL server暴力破解、python与metasploit交互

scapy模块:分层、常用函数、实现数据包的发送和接收
pkt=Ether()/IP()/TCP()
raw()以二进制打印
hexdump()十六进制打印
summary()函数 简要描写数据包
pkt.summary()
show()展开视图查看包的详细信息

有的时候scapy捕获到大量的数据报,需要保存起来,在我网络取证经常这么做,可以使用函数wrpcap() 例如:wrpcap(“temp.cap”,pkts) 将pkts中的数据包写到文件temp.cap中
同样scapy也有读取数据包的功能
rdpcap(“”)