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 渗透测试编程技术方法与实践 ------全书整理的更多相关文章

  1. python渗透测试入门——基础的网络编程工具

    <Python黑帽子--黑客与渗透测试编程之道学习>这本书是我在学习安全的过程中发现的在我看来十分优秀的一本书,业内也拥有很高的评价,所以在这里将自己的学习内容分享出来. 1.基础的网络编 ...

  2. Atitit.异步编程技术原理与实践attilax总结

    Atitit.异步编程技术原理与实践attilax总结 1. 俩种实现模式 类库方式,以及语言方式,java futuretask ,c# await1 2. 事件(中断)机制1 3. Await 模 ...

  3. Python渗透测试工具合集

    摘自:http://www.freebuf.com/tools/94777.html 如果你热爱漏洞研究.逆向工程或者渗透测试,我强烈推荐你使用 Python 作为编程语言.它包含大量实用的库和工具, ...

  4. python渗透测试工具集合

    作者:一起学习Python 原文链接:https://zhuanlan.zhihu.com/p/21803985 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 在进行漏洞研究. ...

  5. python渗透测试工具包

    网络 Scapy, Scapy3k: 发送,嗅探,分析和伪造网络数据包.可用作交互式包处理程序或单独作为一个库.pypcap, Pcapy, pylibpcap: 几个不同 libpcap 捆绑的py ...

  6. Python自动化运维 技术与最佳实践PDF高清完整版免费下载|百度云盘|Python基础教程免费电子书

    点击获取提取码:7bl4 一.内容简介 <python自动化运维:技术与最佳实践>一书在中国运维领域将有"划时代"的重要意义:一方面,这是国内第一本从纵.深和实践角度探 ...

  7. 《Python黑帽子:黑客与渗透测试编程之道》 网络基础

    TCP客户端: 示例中socket对象有两个参数,AF_INET参数表明使用IPv4地址或主机名 SOCK_STREAM参数表示是一个TCP客户端.访问的URL是百度. #coding=utf-8 i ...

  8. 《Python黑帽子:黑客与渗透测试编程之道》 玩转浏览器

    基于浏览器的中间人攻击: #coding=utf-8 import win32com.client import time import urlparse import urllib data_rec ...

  9. 《Python黑帽子:黑客与渗透测试编程之道》 扩展Burp代理

    下载jython,在Burpsuite的扩展中配置jython路径: Burp模糊测试: #!/usr/bin/python #coding=utf-8 # 导入三个类,其中IBurpExtender ...

随机推荐

  1. 多个wav音频文件合并(连接)成一个文件

    场景:一段声音从浏览器麦克风缓冲上一段一段发给服务器,按照时间戳生成很多文件. 目的:把他们按时间顺序连到一个时间轴上. 命令如下: ffmpeg -f concat -i list.txt out. ...

  2. Python - Django - ORM Django 终端打印 SQL 语句

    在 settings.py 中添加以下内容: LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'c ...

  3. 比较两个数组的键名,并返回交集:array_intersect_key

    $a1=array("a"=>"red","b"=>"green","c"=>&q ...

  4. 《MySQL必知必会》学习笔记——附录B 样例表

    附录B 样例表 本附录简要描述本书中所用的表及它们的用途. 编写SQL语句需要对基础数据库的设计有良好的理解.不知道什么信息存储在什么表中,表之间如何关联以及行内数据如何分解,是不可能编写出高效的SQ ...

  5. Eclipse+TestNG搭建接口自动化测试框架

    一.环境安装 1.前提 安装好jdk 配置好Java环境变量 安装Eclips 这些网上都有,就不再详细介绍. 资源分享链接:http://pan.baidu.com/s/1v9Fw6 2.安装Tes ...

  6. js里typeof和instanceof和箭头表达式要注意的地方,以及其他

    如果学过类似C#这样的语言,然后定义两个类class Mu{}和class Ku{},那么显然typeof Mu != typeof Ku的,但是在js里则不是这样,对于Mu和Ku的对象进行typeo ...

  7. Python 数据处理库pandas教程(最后附上pandas_datareader使用实例)

    0 简单介绍 pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程. pandas提供了快速,灵活和富有 ...

  8. Python循环的基本使用(for in、while)

    Python的循环有两种: 一种是for-in 循环:主要用于遍历tuple.list; 一种是while循环:只要条件满足,就不断循环,条件不满足时退出循环. #!/usr/bin/python # ...

  9. C语言的关键字和数据类型

    C语言关键字 C语言数据类型

  10. net namespace实验

    Net namespace实验 在 Linux 中,网络名字空间可以被认为是隔离的拥有单独网络栈(网卡.路由转发表.iptables)的环境.网络名字空间经常用来隔离网络设备和服务,只有拥有同样网络名 ...