使用python修改QQ密保(脚本)

一、基于以下目的:

  1、为了增加对Http协议理解能力,对QQ密保修改的请求进行了分析

  2、为了锻炼python的编写能力

  3、对web综合知识的理解

  花了点时间写了这个脚本,下面介绍脚本的过程

二、分析环境

  1、使用firefox,firefox比chrome的优点是,firefox的开发者工具中,网络模块中有编辑和重发功能,可以很快验证包是否正确

  2、使用pycharm+python3.5,python网络库丰富,编写方便

  3、python相关库

  

rsa==3.4.2
requests==2.10.0
tea==0.0.5
rsa==3.4.2
pyasn1==0.1.9

三、分析过程

  1、一个页面中包含文档、图片、js、css等类型的请求,图片、js、css类型的请求一般不包含逻辑。

  2、对于其它类型的请求,重复两次操作,如果有变化的参数,那么这个请求可能是关键请求

  3、对于关键请求,页面产生变化参数有三种方式,一种是get方法中url的参数,一种是post body中的参数, 另外还有cookie中的参数,注意这三处的参数变化

  4、也有可能终端请求的状态存在于服务器,这一类只能靠猜了

  5、代码分为三个步骤:1)登录态 2)验证密保 3)修改密保

四、分析中的问题

  注意post数据时,需要指定Content-Type,一般是参数类型是,需要抓包获取"application/x-www-form-urlencoded; charset=UTF-8"

  

五、代码

  

六、代码不便分享,可以沟通交流。

  QQ:480071411  

  

时间: 2024-08-06 02:51:15

使用python修改QQ密保(脚本)的相关文章

python检测QQ在线状态脚本

一段查询QQ是否在线的代码 通过访问http://wpa.qq.com/pa?p=1:[QQ号码]:1查询返回的图片 如果返回 2329 则在线  2262 则离线 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import time,datetime  import urllib2  def chk_qq(qqnum):      chkurl = 'http://wpa.qq.com/pa?p=1:'+`qqnum`+':1'     a = ur

python修改文件名

最近下了<中国式英语口语纠错>里面的文件都是"tingvoa.com_cnusa043.mp3",MP3播放器不识别, 因此用python脚本写了一个rename的脚本 # -*- coding: utf-8 -*- import os def filerename(path): for file in os.listdir(path): #print file oldname = os.path.basename(file) #tingvoa.com_cnusa043.m

Python修改paramiko模块开发运维审计保垒机

需求: 1.保垒机有一个公共账号,所有人都是用这个账号登陆保垒机,root用户只能由堡垒机管理员有权限可以登陆 2.公共账号登陆保垒机->选择主机组->选择主机->选择你的普通用户->输入你的后端服务器的密码登陆 3.登陆的后端服务器所操作过的命令要记录到文件 拓扑图: 第三方模块paramiko下载 paramiko-1.10.1.tar.gz http://pan.baidu.com/s/1hrWzg7y paramiko源码包远程演示(未修改源码) 修改parpakio源码

python常用运维脚本实例【转】

file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函数open()来打开一个文件 . 首先open是内置函数,使用方式是open('file_name', mode, buffering),返回值也是一个file对象,同样,以写模式打开文件如果不存在也会被创建一个新的. f=open('/tmp/hello','w') #open(路径+文件名,读写模式) #读写模式:r只读,r+读写,

python定时器用法 + 获取脚本所在绝对路径 + 定义日志格式 + shell将脚本直接启动到后

python定时器用法 + 获取脚本所在绝对路径 + 定义日志格式 的测试代码 如果用python写好一个有定时器的脚本后,如果脚本里还读了配置文件,那么配置文件路径如果写死的话,有一天要换了存放目录的话,需要修改脚本的配置文件路径,而且每次都要到脚本所在路径用 nohup 启动到后台很麻烦.用 os.path.split(os.path.realpath(sys.argv[0]))[0] 来获取文件所在的绝对路径,配置文件同样扔到和它同级,这样就可以在任意地方启动,一劳永逸~~~ 此用法站在运

python中获取执行脚本路径方法

1.sys.path[0]:获取执行脚本目录绝对路径 #每次执行脚本时,python会将执行脚本目录加入PYTHONPATH环境变量中(sys.path获取) #!/usr/bin/python3 import os import sys print(sys.path) print(sys.path[0]) 执行结果: [[email protected] tmp]# ./py_test1/pytest24.py ['/tmp/py_test1', '/usr/local/lib/python3

一个好用的Python备份mysql的脚本

前几天打算用Python写一个mysql脚本,上Google看了下老外写的,写的挺好的,原地址在http://tecadmin.net/python-script-for-mysql-database-backup/#,所以就给 copy过来了 1 #!/usr/bin/python 2 ########################################################### 3 # 4 # This python script is used for mysql

python的第一个脚本

第一个简单的python脚本 #!/usr/bin/python # import os file_1='user.txt' file_2='lock.txt' #put an account_list f=file(file_1) accout_list=f.readlines() f.close() #put a list of the lock user f = file(file_2) lock_list= [] for i in f.readlines(): line = i.stri

python批量操作Linux服务器脚本,ssh密码登录(执行命令、上传、下载)(一)

1 #-*- coding: utf-8 -*- 2 #批量操作linux服务器(执行命令,上传,下载) 3 #!/usr/bin/python 4 import paramiko 5 import datetime 6 import os 7 import threading 8 def ssh2(ip,username,passwd,cmd): 9     try:10         paramiko.util.log_to_file('paramiko________.log')11