背景:最近压力有些大,想玩点游戏放松下,去Mac论坛下载,发现需要各种权限,于是蛋疼了。

所以,上网查了discuz! x3.1破解,手动替换,发现出现“链接已过期”。所以写了下面程序。

0.将下列代码复制到你的python IDE中。

1.先进网页,chrome浏览器查看网页元素,替换正则表达式内内容。

2.刷新你要下载的页面,右键复制下载链接 url = ‘你复制的链接’

3.运行python,你的IDE里面就会打印出真实下载地址。

运行环境:python3.5

操作系统:macpro 2016

import base64
import re # 这里是你鼠标单击右键-》保存要下载的链接。替换 url = '你复制下来的链接'
# 其中"第一部分"是'.forum.php?mod=attachment&aid=' "第二部分"是 forum.php?mod=attachment&aid=
# 后面会用到
url = 'forum.php?mod=attachment&aid=NjE4NzF8NmM2ZDU4Y2Z8MTQ5ODgzNjUyMnwwfDIyMTg3' # url0是你要下载的网址的主页,加上"第二部分" 也就是 "forum.php?mod=attachment&aid="
url0 = 'http://m.tracker.7do.net/forum.php?mod=attachment&aid=' # 正则表达,需要将括号内的"第一部分" 也就是 "forum.php\?mod=attachment&aid=" 替换成你复制链接的第一部分
p = r'(forum.php\?mod=attachment&aid=)(.+)'
aid = re.search(p, url).group(2)
z = base64.b64decode(aid) #下面的正则不用管
# print(z)
p = r"(b')(.+)(')"
z1 = re.search(p, str(z)).group(2)
# print(z1)
p = r"(.+)(\|0\|)(.+)"
z2 = re.search(p,str(z1)).group(1)
p = r"(.+)(\|0\|)(.+)"
z3 = re.search(p,str(z1)).group(3)
# print(z2)
k = z2 + '|2|' + z3
k = bytes(k, encoding = "utf8")
# print(k)
# k = b'61871|acf3aa27|1498835323|1|22187'
j = base64.b64encode(k)
# print(j)
p = r"(b')(.+)(')"
j1 = re.search(p, str(j)).group(2)
# print(j1) url1 = url0 + j1
print(url1)

备注:上面破解仅供学习使用,不要用在其他用途,如果侵权,请联系作者,也就是我,我会妥当处理。

不明白过程的,可以看下面的参考资料。

参考资料:

1. python str与bytes之间的转换

2.python中的正则表达式(re模块)

3.Discuz论坛附件下载权限绕过漏洞

 
 

Python 实现 Discuz论坛附件下载权限绕过漏洞的更多相关文章

  1. linux sudo root 权限绕过漏洞(CVE-2019-14287)

    0x01 逛圈子社区论坛 看到了 linux sudo root 权限绕过漏洞(CVE-2019-14287) 跟着复现下 综合来说 这个漏洞作用不大  需要以下几个前提条件 1.知道当前普通用户的密 ...

  2. Android电话拨打权限绕过漏洞(CVE-2013-6272)分析

    原文:http://blogs.360.cn/360mobile/2014/07/08/cve-2013-6272/ 1. CVE-2013-6272漏洞背景 CVE-2013-6272是一个安卓平台 ...

  3. Couchdb 垂直权限绕过漏洞(CVE-2017-12635)漏洞复现

    couchdb简介: Apache CouchDB是一个开源的NoSQL数据库,专注于易用性和成为“完全拥抱web的数据库”.它是一个使用JSON作为数据存储格式,javascript作为查询语言,M ...

  4. CVE-2017-12635(Couchdb垂直权限绕过漏洞)

    简介 Apache CouchDB是一个开源数据库,专注于易用性和成为"完全拥抱web的数据库".它是一个使用JSON作为存储格式,JavaScript作为查询语言,MapRedu ...

  5. Confluence实现附件下载权限的控制

    背景: 公司为了方便的管理过程文档,搭建了一个Confluence服务器,版本6.9.在使用过程中,需要按照用户对空间中上传的附件进行下载权限控制. 解决过程及处理方案: 一.Confluence中导 ...

  6. broadAnywhere:Broadcast组件权限绕过漏洞(Bug: 17356824)

    原创内容,转载请注明出处 http://retme.net/index.php/2014/11/14/broadAnywhere-bug-17356824.html Lolipop源代码已经放出有些日 ...

  7. PJzhang:CVE-2019-14287 sudo权限绕过漏洞复现

    猫宁!!! 参考链接:Ms08067实验室公众号 sudo 1.8.28版本之前有漏洞. 更新完kali linux,deepin截图工具失效,只能用自带的,不能划重点. 看一下sudo版本,1.8. ...

  8. SaltStack 水平权限绕过漏洞(CVE-2020-11651)

    影响版本 SaltStack < 2019.2.4 SaltStack < 3000.2 poc git clone https://github.com/jasperla/CVE-202 ...

  9. Couchdb 垂直权限绕过漏洞(CVE-2017-12635)

    影响版本:小于 1.7.0 以及 小于 2.1.1 首先,发送如下数据包: 修改数据包 { "type": "user", "name": ...

随机推荐

  1. App架构经验总结(转载)

    原文地址:http://www.iteye.com/news/31472 架构因人而异,不同的架构师大多会有不同的看法:架构也因项目而异,不同的项目需求不同,相应的架构也会不同.然而,有些东西还是通用 ...

  2. java容器类

    一.  容器类: 下图摘自<Java编程思想>,很好地展示了整个容器类的结构. 由上图可知,容器类库可分为两大类,各自实现了Collection接口和Map接口,下面就常见的类进行一下分类 ...

  3. python selenium 环境搭建(一)

    elenium 虽然过了这么多年,但是到目前为止依然是比较流行的自动化框架了,还有很多的初学者在学习,所以根据自己的时间将把相关的资料汇总一下,下面首先我们需要搭建一下基础环境. 首先自己本身比较笨, ...

  4. 《JavaScript高级程序设计》里对 call() 和 apply() 的解释 (116页)

    每个函数都包含两个非继承而来的方法:apply()和call().这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值. apply(): 方法接受两个参数:一个是在其 ...

  5. 【2017-05-21】WebForm内置对象:Session、Cookie,登录和状态保持

    1.Request -获取请求对象 string s =Request["key"]; 2.Response  -  响应请求对象 Response.Redirect(" ...

  6. React,关于redux的一点小见解

    最近项目做多页面应用使用到了,react + webpack + redux + antd去构建多页面的应用,本地开发用express去模拟服务端程序(个人觉得可以换成dva).所以在这里吐槽一下我自 ...

  7. DDD理论学习系列(4)-- 领域模型

    DDD理论学习系列目录 1.引言 我们还是先来拆词理解,领域模型可以拆为"领域"和"模型"二词. 领域:按照我们之前的文章的理解,DDD中的领域是指软件系统要解 ...

  8. 两强相争,鹿死谁手 — JQuery中的Ajax与AngularJS中的$http

    一.JQuery与AngularJS 首先,先简单的了解一下JQuery与AngularJS.从源头上来说,两者都属于原生JS所封装成的库,两种为平行关系. 二.Ajax请求与数据遍历打印 这里是Aj ...

  9. 一天搞定HTML----a标签02

    1.细说a标签 2.代码演示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  10. Delphi使用Zint生成QR二维条码(zint.dll)

    Delphi使用Zint生成QRCODE 本文使用的Zint Barcode Library(zint.dll)版本为2.6.0,和之前使用的2.4.3版本在zint_symbol这个结构体上会有差异 ...