用Python教训盗号骗子

用Python教训盗号骗子文章目录前言抓包分析代码编写测试效果后记前言近日,本人闲来无事在QQ空间浏览好友动态,突然一张熟悉的图片进入了我的视野,没错,就是它,又是那一张图片。在好奇心的驱使下,我扫了上图中码子,打开一个网站,凭借老夫多年的经验,这网站一定是钓鱼网站。本想就这么算了,可是实在是太无聊了,想要搞一下这个盗号骗子,于是乎就有了这篇文章。抓包分析代码编写思路:利用random随机产生QQ号…

大家好,又见面了,我是你们的朋友全栈君。

前言

近日,本人闲来无事在QQ空间浏览好友动态,突然一张熟悉的图片进入了我的视野,没错,就是它,又是那一张图片。
在这里插入图片描述
在这里插入图片描述
在好奇心的驱使下,我扫了上图中码子,打开一个网站,凭借老夫多年的经验,这网站一定是钓鱼网站。本想就这么算了,可是实在是太无聊了,想要搞一下这个盗号骗子,于是乎就有了这篇文章。
在这里插入图片描述

抓包分析

在这里插入图片描述
在这里插入图片描述

代码编写

思路:
利用random随机产生QQ号和密码,再用Python的requests库模拟浏览器发送请求即可达到目的。
完整代码如下:

# !/usr/bin/env python
# —*— coding: utf-8 —*—
# @Time: 2020/1/17 9:42
# @Author: Martin
# @File: Bomber.py
# @Software:PyCharm
import requests
import random

# 伪装请求头部
headers = { 
   'user-agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Mobile Safari/537.36'}
# URL地址
raw_url = 'http://qzonerqq.szscshb.com/dnf.php?u=%s&p=%s'
# 随机序列(自己胡乱写的)
dic1 = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
dic2 = ['=', '+', 'abc', 'qwe', 'ni', 'ge', 'si', 'ha', 'zi', '-', '*', 'cao']


# 随机产生QQ号
def get_username():
    username = ""
    for ix in range(1, 11):
        username += dic1[random.randint(0, len(dic1)-1)]
    return username


# 随机产生QQ密码
def get_password():
    password = ""
    for iy in range(0, 5):
        password += dic2[random.randint(0, len(dic2)-1)] + dic1[random.randint(0, len(dic1)-1)]
    return password


# 发送请求
def send():
    username = get_username()
    password = get_password()
    url = raw_url % (username, password)
    try:
        r = requests.get(url, headers=headers)
        if r.status_code == 200:
            print("QQ号:%s,密码:%s,发送成功!" % (username, password))
        else:
            print("发送请求失败!")
    except:
        send()


if __name__ == "__main__":
    number = int(input("请输入要发送的请求次数:"))
    for i in range(0, number):
        send()

思路扩展:
1、可以考虑多线程爬虫,提高速度。
2、使用代理IP,避免对方封IP。

测试效果

在这里插入图片描述
在这里插入图片描述

后记

快要过年了,又到了诈骗多发的时期,请大家一定要保管好自己的私人财产啊,切不可大意,给了骗子可乘之机。
最后,提前祝大家新年快乐吧!
在这里插入图片描述

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

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

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


相关推荐

  • C++创建线程_C语言网络编程创建线程

    C++创建线程_C语言网络编程创建线程在window系统中编写控制台程序,创建线程使用CreateThread()函数创建,则线程函数必须申明为DWORDWINAPI;使用_beginthreadex()创建,则线程函数必须申明为unsignedintWINAPI;并需要设置环境:工程->设置->C/C++->CodeGeneration->Userun-timelibray->选DebugMultithr

    2022年8月30日
    3
  • ioctl() FIONREAD 检测socket是否有数据可读

    ioctl() FIONREAD 检测socket是否有数据可读先看看FIONREAD的作用FIONREAD:Getthenumberofbytesintheinputbuffer获取接收缓存中数据的字节数项目中用来判断tcpsocket是否有数据接收到,但是出现了一个问题,对于用于accept的socket即调用listen()之后的socket,用FIONREAD,判断的时候报错,ioctl()返回-1,错误码是2…

    2022年7月23日
    8
  • Linux如何下载安装软件超详细解析

    网上很多Linux下载软件的方法,看了很多帖子感觉Linux下载软件的方式有很多,每个人都有自己的习惯,对于一个新手来说及其不友好,有时候会看的很蒙。在这里做出总结。

    2022年4月16日
    1.2K
  • java scanner怎么用_Java中Scanner类的用法及使用步骤分享!「建议收藏」

    java scanner怎么用_Java中Scanner类的用法及使用步骤分享!「建议收藏」Scanner是Java中的一个新特征,Java程序员可以通过Scanner类来获取用户的输入,帮助程序员接收从键盘输入的数据,对于程序员而言非常有帮助。当程序需要从键盘获取用户输入的命令或数据时,例如:获取用户输入的计算表达式。可以通过Scanner类方便地获取用户输入。通过Scanner类获取用户输入时,控制台会一直等待用户的输入,直到用户敲回车键结束,把所输入的内容传给Scanner,程序要…

    2022年7月7日
    27
  • 圆柱体积立方计算公式_圆的体积公式怎么算

    圆柱体积立方计算公式_圆的体积公式怎么算圆柱的体积=底面积x高,即V=S底面积×h=(π×r×r)h。假设圆柱的底面半径为2米,高为2米,则此圆柱的体积为:8π立方米。再根据1立方米=1000立方分米,转换成立方分米。其他转换类似。圆柱体是由两个底面和一个侧面组成的。在同一个平面内有一条定直线和一条动线,当这个平面绕着这条定直线旋转一周时,这条动线所成的面叫做旋转面,这条定直线叫做旋转面的轴,这条动线叫做旋转面的母线。扩展资料:圆柱的性…

    2026年2月5日
    3
  • js中的表单序列化不会序列化未选中的单选框

    js中的表单序列化不会序列化未选中的单选框

    2021年5月25日
    111

发表回复

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

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