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 ...
随机推荐
- PAT 甲级 1144 The Missing Number (20 分)(简单,最后一个测试点没过由于开的数组没必要大于N)
1144 The Missing Number (20 分) Given N integers, you are supposed to find the smallest positive in ...
- PP篇7 生产替代料齐套后处理
扫描可关注本人技术分享公众号,与您一起学习新知! 对于计划订单和生产订单, 当存在替代料的时候,完成齐套性检查后,按照可齐套量进行拆单,并删除不能齐套的替代料(有个删除规则).不能齐套就按照优先级最高 ...
- POJ 2584 T-Shirt Gumbo 二分图的多重匹配
题目链接:http://poj.org/problem?id=2584 题目大意:有SMLXT五种T恤型号,有N个人,每个人有一个可选的型号区间,你现在要发给N个人每人一条他可以选择的型号的T恤,问能 ...
- WXS-----学会使用WXS
学会使用WXS require函数用于引入其他WXS模块 不要重复引入两个wxs模块,不然后者会覆盖前者
- docker安装MongoDB创建用户,并用工具Robo连接简单CRUD
搜索mongo docker search mongo 拉取mongo[这里默认为latest] docker pull mongo 查看本地镜像 启动容器[就是安装,-v后面的参数表示把数据文件挂载 ...
- Linux【Ubuntu】安装docker
内核要大于3.10才能安装docker 查看内核 uname -r 安装yum命令 sudo apt install yum 由于 apt 源使用 HTTPS 以确保软件下载过程中不被篡改,故添加使用 ...
- input回退禁止
//处理键盘事件 禁止后退键(Backspace)密码或单行.多行文本框除外 function forbidBackSpace(e) { var ev = e || window.event; //获 ...
- [学习笔记] 下载、安装、启动 Eclipse(OEPE)
OEPE 的全称是: Oracle Enterprise Pack for Eclipse 截止目前的最新版本是:(12.2.1.9) 下载地址:(需要在甲骨文官网注册一个账户才能下载) https: ...
- cuda-convnet在Ubuntu12.04+CUDA5.5下的配置
deep learning近年来非常之火,尤其是在IMAGENET上的识别效果更是惊呆了小伙伴,其所用的Hinton的学生编写的cuda-convet代码早已公开,但是一直没有时间去仔细研究,最近趁着 ...
- page分页问题,根据页码获取对应页面的数据,接口调用
添加一个log.js文件,进行接口调用. import axios from '@/libs/api.request' const MODULE_URL = '/log'; export const ...