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 ...
随机推荐
- MyBatis-Spring项目
使用Spring IoC可以有效管理各类Java资源,达到即插即拔功能:通过AOP框架,数据库事务可以委托给Spring处理,消除很大一部分的事务代码,配合MyBatis的高灵活.可配置.可优化SQL ...
- Text Prompted Remote Speaker Authentication : Joint Speech and Speaker Recognition/Verification System :: Major Project ::: Introduction
转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2010/12/text-prompted-remote-speaker.html Biometrics ...
- SpringBoot中日志配置
背景 由于一些框架中还使用log4j-1.x系列陈旧的日志框架,调试过程中有一些错误信息不能在控制台显示,增加了调试成本.以下配置方法 将帮助你获得log4j-1.x日志在控制台显示. 解决方法: 使 ...
- 保存wave音频流的方法
保存到文件: void saveToFile(String filename, ByteBuffer buffer) { byte[] bytes = buffer.array(); OutputSt ...
- 细聊Oracle通过ODBC数据源连接SQL Server数据库
类似文章搜索引擎上有很多,内容大致相同,今天所谓细聊是因为我在借鉴这些文章时候走了些弯路,所以写此文,为自己备忘,同时如果能为初涉此处知识点的小伙伴提供些帮助就更好了,文章结尾处的一些扩展有一定实战意 ...
- window.open post传参
目录 前言 获取当前用户信息 使用window.open的两种方式 Get方式 Post方式 前言 我使用的场景是,点击弹窗,然后把我当前用户的消息传过去 获取当前用户信息 打开Chrome浏览器,在 ...
- TestCase--网站创建新用户管理模块
对于web测试,用户权限管理模块是必测的一个点,所以今天就来总结一下创建新用户管理模块的测试用例 参考图如下: 测试用例设计如下: 一.功能测试 1. 什么都不输入,单击“立即提交”,页面是否有提示 ...
- React-native/React 公告滚动组件(原生代码)
编写不易, 希望大家点赞 import React, {PureComponent} from 'react'; import {Animated, Easing, View} from 'react ...
- javascrtpt DOM操作
DOM DOM:(document object mode)文档对象模型.DOM为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构. 目的就是为了能让js操作html元素而制定的一个规范 DO ...
- layui开关switch显示不全问题
先看效果: 开关显示不全,高度也不对称. 解决: 在所用到的html/jsp中自己加css .layui-form-switch { width: 52px; height: 23px; } 再看效果 ...