代码编织梦想

Python编写漏洞测试工具入门

学习内容来自Web白帽子Python编写漏洞测试工具入门
第一章 Python编写漏洞测试工具入门


前言

本篇文章用于记录毕业设计(Python编写web漏洞扫描器系统的设计与实现),之前的设计题目由于在本科期间并没有过多的接触算法实在是难以实现而不得不放弃QAQ。

一、具体功能

1.设计一个系统实现web漏洞的扫描;
2.实现子域名探测的功能;
3.漏洞包括不限于sql注入(可探查数据库中表的字段数、表名、列名);
4.XSS漏洞

二、HTTP协议

HTTP模型:客户端请求——服务器响应
状态相应码:标识接受或拒绝相应
测试网站:https://httpbin.org/#/
在这里插入图片描述

1.HTTP请求

get方式

无参数:

import requests //记得

url = "https://httpbin.org/get"
r = requests.get(url)
print(r.status_code)

要首先安装requests库
status_code可获得网页状态码

有参数:
有参数时GET用params存储字典payload,POST用data存储字典payload。

import requests

url = "http://127.0.0.1/DVWA-master/vulnerabilities/brute/"

payload = {'username':'admin','password':'password','Login':'Login'}
r = requests.get(url,params=payload)
print(r.url)
print(r.status_code)
print(type(r.text))
result = r.text
if result.find("Welcome"):
   print("admin:admin " + 'successful')

post请求

无参数和get类似,下面演示带参数的

import requests

url = "http://127.0.0.1/DVWA-master/vulnerabilities/brute/"

data = {'username':'admin','password':'password','Login':'Login'}
r = requests.get(url,data=data)
print(r.url)
print(r.status_code)
print(type(r.text))
result = r.text
if result.find("Welcome"):
   print("admin:admin " + 'successful')

2.HTTP请响应

使用r = requests.get(url)来存储url,然后便可以获得
状态相应码:r.status_code
相应文本:r.text/r.conrent
相应头:r.headers
请求url: r.rul
cookie: r.cookie

3.HTTP代理

设置代理并使用python返回状态码并用burpsuite进行截断

import requests
url = "http://127.0.0.1/DVWA-master/"
#ip 192.168.1.104#
proxies = {'http':'http://192.168.1.104:8080','https':'https://192.168.1.104:8080'}
r = requests.get(url,proxies=proxies,verify=False)
print(r.status_code)

运行后返回burpsuite可以返现已经被截断,点击forword之后成功得到状态码

4.HTTP会话编程

携带cookie的会话,访问某些页面时,会通过Set-Cookie设置Cookie的值,以便下一次访问自动提交cookie进行身份验证。
python-session:
s = request.Session()
r = s.get(url)

在第一次访问时并没有在报文头中返回我们所需要的cookie值,是因为在我们请求之后才会返回对应的cookie值,我们下次再使用当前会话进行访问url时才会把对应的cookie返回到相应的请求中

import requests
url = 'https://www.baidu.com'
s = requests.session()
r = s.get(url)
print(r.cookies)
print(r.request.headers)

r1 = s.get(url)
print(r1.cookies)
print(r1.request.headers)

在这里插入图片描述

总结

提示:这里对文章进行总结:

对python编写http相应的操作进行了学习,希望毕设能顺利完成吧

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_47576228/article/details/123478188

一款以python编码的自动化大规模漏洞测试工具_python 学习者的博客-爱代码爱编程

可能大家之前已经使用过AutpSploit这款自动化漏洞利用工具了,但是这款工具现在又进行了大幅度改进。 AutoSploit= Shodan/Censys/Zoomeye + Metasploit 可能大家之前已经使用过AutpSploit这款自动化漏洞利用工具了,但是这款工具现在又进行了大幅度改进。 AutoSploit是什么? AutoSpl

史上最强Python渗透测试工具合集-爱代码爱编程

如果你热爱漏洞研究、逆向工程或者渗透测试,我强烈推荐你使用 Python 作为编程语言。它包含大量实用的库和工具,本文会列举其中部分精华。 网络 Scapy, Scapy3k: 发送,嗅探,分析和伪造网络数据包。可用作交互式包处理程序或单独作为一个库。 pypcap, Pcapy, pylibpcap: 几个不同 libpcap 捆绑的python库

Python基础知识-总结(八):模块化、标准库、第三方库-爱代码爱编程

1_模块化编程理念_什么是模块_哲学思想 1 模块和包概念的进化史 Python 程序由模块组成。一个模块对应python 源文件,一般后缀名是:.py。模块由语句组成。运行Python 程序时,按照模块中语句的顺序依次执行。语句是Python 程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等。2 标准库模块(standard libr

用python编写渗透工具-python编写渗透测试工具之一——dvwa登录爆破-爱代码爱编程

dvwa是一个开源的由php语言编写、使用mysql数据库的漏洞利用平台,平台涵盖web应用常见的安全漏洞,如命令执行、文件包含、SQL注入、XSS、CSRF等安全漏洞,供安全研究人员和白帽子进行web安全的学习和演练。 本文主要内容是使用python编写dvwa登录的暴力破解脚本。dvwa的本地搭建这里就不赘述了,网上有很多介绍的文章大家可自行度娘,本次

python代码扫描工具_Python脚本实现Web漏洞扫描工具-爱代码爱编程

这是去年毕设做的一个Web漏洞扫描小工具,主要针对简单的SQL注入漏洞、SQL盲注和XSS漏洞,代码是看过github外国大神(听说是SMAP的编写者之一)的两个小工具源码,根据里面的思路自己写的。以下是使用说明和源代码。 一、使用说明: 1.运行环境: Linux命令行界面+Python2.7 2.程序源码: Vim scanner//建立

python 漏洞扫描工具_基于Python3的漏洞检测工具-爱代码爱编程

Python3 漏洞检测工具 -- lance lance, a simple version of the vulnerability detection framework based on Python3. 基于Python3的简单版漏洞检测框架 -- lance 可以自定义poc或exp插件,可以指定要加载的poc或exp。 代码已经上

python 漏洞扫描工具_python打造文件包含漏洞检测工具-爱代码爱编程

importrequestsimportthreadingimportosimporttimeimportsys cookies={} urls=input('Please enter the target:') user=input('Enter the file you want to read:') user2=input('Enter

python编写工具07_编写一个漏洞检测工具(ms15-034)-爱代码爱编程

漏洞原理 1. 一些问题 问: 为什么有成熟的工具了,我们还需要自己编写? 答: 一些漏洞刚刚被披露出来的时候,网上是没有对应的工具的。 这个时候就要求我们根据漏洞原理写出对应的POC代码,用来验证漏洞是否存在。 2. 本文以ms15-034为例子。 原理的话,本文就不占用篇幅取介绍了,可以自行百度。 复现的话,本机装

Python程序设计——安全渗透测试的常见模块-爱代码爱编程

安全渗透测试的常见模块 一、Socket 模块1.实例化 Socket 类2.Socket常用的函数—服务端函数bind():listen():accept():3.客户端的函数send():sendall():recv():sendto():recvfrom():4.使用Socket编写一个简单的服务端和客户端二、python-nmap模块1.p

python漏洞扫描器编写,用Python编写Web漏洞检测工具-爱代码爱编程

作为单位的网络安全管理员,经常会遇到这样的情况,某些漏洞在互联网上被批露后,在用的扫描工具却无法及时集成。 遇到这种情况,领导会说:“自己想办法,抓紧检测是否有这个漏洞。”很多人会告诉你可以用自行编写Poc这个方法,指的就是根据漏洞的简单原理写出对应的漏洞检测代码,用来验证漏洞是否存在。那么如何编写Poc呢?可能你会把它想象的无比困难。 Pytho

27款python 测试工具开源软件_sean_abc的博客-爱代码爱编程

排序: 收录时间 | 浏览数 移动应用自动化测试 Appium Appium 是一个开源、跨平台的自动化测试工具,用于测试原生和轻量移动应用,支持 iOS, Android 和 FirefoxOS 平台。Appium 驱动苹果的 UIAutomation 库和 Android 的 UiAutomator 框架,使用 Selenium 的 W