Python 渗透测试编程技术方法与实践 ------全书整理
1、整个渗透测试的工作阶段
( 1 )前期与客户的交流阶段。
( 2 )情报的收集阶段。
( 3 )威胁建模阶段。
( 4 )漏洞分析阶段。
( 5 )漏洞利用阶段。
( 6 )后渗透攻击阶段。
( 7 )报告阶段。
2、关于kali linux 相关的知识
apt-get update :使用这个命令是为了同步 /etc/apt/sources.list 中列出来的源的索引这样能够获得最新的软件包
aot-get upgrade : 这条命令是用来安装 /etc/apt/sources.list中所列出来的所有包的最新版本。 也就是说kali linux中的所有软件都会更新 ,这条命令不会改变和删除之前没有跟新操作的软件,但是也不会安全当前系统中没有安装的软件
apt-get dist-upgrade 会将软件包升级到最新的版本,并且引入依赖包,除了提供upgrade全部的功能之外,还会智能的处理新版本的依赖关系的问题

3、渗透测试的时候经常会发生系统的崩溃,所以系统备份是非常必须的一件事,VMware提供了系统快照的功能。以及导出虚拟机,克隆虚拟机(连接克隆和独立克隆)
python中涉及很多已经写好的模块,所以很多时候 不需要关注协议上的实现细节,只是注重自己的逻辑即可
Python中进场使用的三个模块是 Socket 模块、 pyhton-nmap模块、 scapy 模块
首先我们看Scoket模块
Python中提供解决网络上连个程序之间建立通信通道,分别提供了服务端Socket和客户端的socket 在使用Socket编程额时候,首先实例化一个Socket,需要填充地址、流、协议标志的三个参数
使用Socket建立服务端和客户端:
使用socket建立服务端:
测试的
4、导入 python-nmap 配置的问题
在Windows操作系统中使用python的编辑器pycharm等其他IDE的时候需要配置。并且版本也要合适,不然会像下面一样报错,无法获取nmap的配置路径。

5、我们使用kali首先直接可以使用命令 pip install pythpn-nmap 安装轮子之后使用 可以导入nmap 来测试
6、修改秘密 passwd +用户名
添加用户 adduser 用户名
动态网络地址配置: ifconfig eth0 192.168.1.2 netmask 255.255.255.0
route add default gw 172.16.1.245
echo nameserver 211.200.9.2>/etc/resolv.conf
静态IP地址设置:
编辑文件: /etc/network/interfaces
便捷: auto eth0
iface eth0 inet static
adress 172.12.1.122
netmask 255.255.255.0
network 172.12.1.0
broadcast 172.12.1.255
gateway 172.12.1.254
编辑文件 /etc/resolv.conf
domian
nameserver 101.10.101.1
nameserver 102.54.18.2
便捷完之后重新 服务 : /etc/init.d/networking restart
一直在使用 : apt 工具管理文件,者个命令主要是从互联网的软件仓库中搜索,安装,升级,卸载或者操作系统,但在编译代码的时候可以找出该缺少的文件,
7、创建新的SSH密钥
dpkg-reconfigure poenssh-server
将旧的秘钥备份到一个文件中 ,修改sshd_config 文件 文件的目录是 .etc/ssh/sshd_config
将闲置连接点注释去掉,之后重启服务 : /etc/init.d/ssh start
查看SSH的服务状态 使用命令 netstat -antp

如果使用远程连接的话可以使用工具PUtty 。
8、klia 升级
apt-get update 使用这条命令是为了同步/etc/apt/sources.list 中所列出的源的索引,这样才能获得最新的软件包
apt-get upgrade 使用命令来安全/etc/apt/sources.list 中列出的所有包的最新版本, kali linux 中的软件都会被更新。但是有个缺点是这个命令不会改变和删除那些没有更新操作的软件,但是也不会安装当前操作系统不存在的软件
apt-get dist-upgrade 会将软件包升级到最新版本,并引入新的依赖包。会自动的处理新版本的依赖关心问题。
虚拟机中的网络连接方式
VMnet0 虚拟桥接网络下的虚拟交换机
VMnet1 虚拟机仅主机模式网络下的虚拟机交换
VMnet8: VMware 用于虚拟NAT网络下的虚拟交换机
9、Medusa 通过并行登录暴力破解的方式尝试获取远程验证服务器的访问权限的工具, Medusa 能够 验证远程众多的类型的远程服务,包括AFP FTP HTTP IMAPMS-SQL MYSQL NetWare NCP PCAnywhere POP3 REXEC RLOGIN SMTPAUTH SNMP SSv2 SNMP TELNET VNC WEb From等
使用的命令: medusa -h IP -u username -p password -M ssh
-h 主机的地址 -u 用户名 如果是用户列表写成大写 -p 密码 如果是密码列表 -P -M 表示 服务
10、排序算法
sorted()函数是一个高阶函数,他可以接受一个key 函数来实现自定义的排序,例如按照绝对值大小排序:
sorted([1,241,34,355,5233],key=abc)
高阶函数可以接受函数作为参数外,还可以吧函数作为结果的值返回, 我们实现一个可变参数求和,求和函数一般死这样定义的:
def calc-sum(*args):
ax=0;
for n in args:
ax+=n;
return ax;
如果我们不需要立即进行求和 直接返回求和的函数
def lazy_sum(*args):
def sum():
ax=0;
for n in args:
ax+=n;
return ax;
return sum ;
Python 渗透测试编程技术方法与实践 ------全书整理的更多相关文章
- python渗透测试入门——基础的网络编程工具
<Python黑帽子--黑客与渗透测试编程之道学习>这本书是我在学习安全的过程中发现的在我看来十分优秀的一本书,业内也拥有很高的评价,所以在这里将自己的学习内容分享出来. 1.基础的网络编 ...
- Atitit.异步编程技术原理与实践attilax总结
Atitit.异步编程技术原理与实践attilax总结 1. 俩种实现模式 类库方式,以及语言方式,java futuretask ,c# await1 2. 事件(中断)机制1 3. Await 模 ...
- Python渗透测试工具合集
摘自:http://www.freebuf.com/tools/94777.html 如果你热爱漏洞研究.逆向工程或者渗透测试,我强烈推荐你使用 Python 作为编程语言.它包含大量实用的库和工具, ...
- python渗透测试工具集合
作者:一起学习Python 原文链接:https://zhuanlan.zhihu.com/p/21803985 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 在进行漏洞研究. ...
- python渗透测试工具包
网络 Scapy, Scapy3k: 发送,嗅探,分析和伪造网络数据包.可用作交互式包处理程序或单独作为一个库.pypcap, Pcapy, pylibpcap: 几个不同 libpcap 捆绑的py ...
- Python自动化运维 技术与最佳实践PDF高清完整版免费下载|百度云盘|Python基础教程免费电子书
点击获取提取码:7bl4 一.内容简介 <python自动化运维:技术与最佳实践>一书在中国运维领域将有"划时代"的重要意义:一方面,这是国内第一本从纵.深和实践角度探 ...
- 《Python黑帽子:黑客与渗透测试编程之道》 网络基础
TCP客户端: 示例中socket对象有两个参数,AF_INET参数表明使用IPv4地址或主机名 SOCK_STREAM参数表示是一个TCP客户端.访问的URL是百度. #coding=utf-8 i ...
- 《Python黑帽子:黑客与渗透测试编程之道》 玩转浏览器
基于浏览器的中间人攻击: #coding=utf-8 import win32com.client import time import urlparse import urllib data_rec ...
- 《Python黑帽子:黑客与渗透测试编程之道》 扩展Burp代理
下载jython,在Burpsuite的扩展中配置jython路径: Burp模糊测试: #!/usr/bin/python #coding=utf-8 # 导入三个类,其中IBurpExtender ...
随机推荐
- 《Learning a Discriminative Feature Network for Semantic Segmentation》解读
旷世18年的CVPR,论文链接:https://arxiv.org/abs/1804.09337 Motivation:针对分割中的“类内不一致”和“类间一致性”的两大问题,设计了结合Smooth n ...
- 随机采样一致算法RANSAC
A project to learn line, circle and ellipse detection in 2d images: https://github.com/Yiphy/Ransac- ...
- Ubuntu 新装服务器部署流程
1.设定时区 rm -f /etc/localtime cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 2.配置apt-get源 sed -i ...
- 以Redis为例介绍YCSB的使用
环境 首先确保安装了jdk和maven,我个人使用的是openjdk11和maven3,由于本人非常建议使用python版本的ycsb,建议安装python.ubuntu 18.04下可以使用apt安 ...
- git rebase VS git merge
git rebase VS git merge 写在前面 如果你不能很好的应用 Git,那么这里为你提供一个非常棒的 Git 在线练习工具 Git Online(回复公众号「工具」,获取更多内容) , ...
- unix系统简明教程 命令
who 显示电脑用户信息 liu :0 Oct 6 13:17 (:0)liu pts/2 Oct 6 13:22 (:0) who a ...
- Beta冲刺(3/4)
队名:秃头小队 组长博客 作业博客 组长徐俊杰 过去两天完成的任务:学习了很多东西 Github签入记录 接下来的计划:继续学习 还剩下哪些任务:后端部分 燃尽图 遇到的困难:自己太菜了 收获和疑问: ...
- mysql explain中key_len的作用
mysql explain中key_len的作用key_len越小 索引效果越好 name的字段类型是varchar(20),字符编码是utf8,一个字符占用3个字节,那么key_len应该是 20* ...
- 一文带你全面了解RxJava
工作需要,刚好在学习 RxJava网络请求框架,网上搜了一些 关于RxJava 的教程,但都并不是很好理解,所幸最后找到了几篇有助于初学者了解 RxJava 的文章,于是结合自己的理解,重新整理成一篇 ...
- Python数据挖掘之随机森林
主要是使用随机森林将four列缺失的数据补齐. # fit到RandomForestRegressor之中,n_estimators代表随机森林中的决策树数量 #n_jobs这个参数告诉引擎有多少处理 ...