记一次度某满SRC挖掘之曲线救国

admin 2023年6月5日22:53:39评论13 views字数 2509阅读8分21秒阅读模式

点击蓝字,关注我们

记一次度某满SRC挖掘之曲线救国


首先提一嘴,这个漏洞已经是修复了,如果大家碰到像这种类型的,可以试试我这种方法

在一个夜黑风高的夜晚,打开了度某满分站,准备搞几个钱

记一次度某满SRC挖掘之曲线救国

老规矩,开局一个登陆框。看到账号和密码就想爆破,这里我试了一下,发现加密了

记一次度某满SRC挖掘之曲线救国

不要慌,账号密码加密了而已。我们直接放弃即可!

记一次度某满SRC挖掘之曲线救国

换个功能点进行,这里发现还有个注册点,打开看看咯

记一次度某满SRC挖掘之曲线救国

可以注册,还有短信验证,那么就可以试试短信轰炸了,我这里试一试

记一次度某满SRC挖掘之曲线救国

非常好,被BAN掉了,看来做了校验,不要慌,先看看验证码是多少位

记一次度某满SRC挖掘之曲线救国

哎呦,是4位的,可以尝试下爆破,不过参数仍然是加密的。。怎么办?

记一次度某满SRC挖掘之曲线救国

不要慌,先试一试有没有提交次数校验,先给它100个包跑一下看看会不会限制

记一次度某满SRC挖掘之曲线救国

手动给重放了100个包,发现它不会检测你提交了多少次,只要你输入对了,那就完事了。那么我们接下来咋办,那当然可以尝试一下JS逆向了

记一次度某满SRC挖掘之曲线救国

先用F12大法查看JS调用栈

记一次度某满SRC挖掘之曲线救国

看到这么多调用函数,那么就有不懂事的金针菇要问了,我要看哪个?这里我告诉你,一个一个点进去看

记一次度某满SRC挖掘之曲线救国

当然不是一个一个点进去看,而是点进去一个一个搜索关键词,比如说我们定位密码的传参值

记一次度某满SRC挖掘之曲线救国

复制这玩意去源码里面搜索就完事了

记一次度某满SRC挖掘之曲线救国

终于在我们的不懈努力下,找到了这部分源码,我们贴出来简单解释一下。截图错了,应该是这玩意

记一次度某满SRC挖掘之曲线救国

下面我贴出来给不懂事的金针菇们分析一下

handleSubmit: function() {    var e = this;    this.$refs["params"].validate((function(t) {        if (!t)            return !1;        var r = Object.assign({}, e.params);        r["ucPwd"] = a["crypt"].custom(r["ucPwd"]),            r["confirmPwd"] = a["crypt"].custom(r["confirmPwd"]),            r["verifyCode"] = a["crypt"].custom(r["verifyCode"]),            r["phoneNum"] = a["crypt"].custom(r["phoneNum"]),            e.$http("/uc/register", "post", r)            .then((function(t) {                e.$message({                        type: "success",                        message: "注册成功"                    }),                    e.goto()            }), (function(t) {                e.show = !0            }))    }))}

看到这么多相信大家已经不想看了,没有关系,我也不是很想看,只需要定位一个东西即可a["crypt"]。看到这里,相信不懂事的金针菇又要问了,为什么是这个?很简单,让我们打开百度翻译

记一次度某满SRC挖掘之曲线救国
记一次度某满SRC挖掘之曲线救国

好吧,让我们打开百度

记一次度某满SRC挖掘之曲线救国

那么通过百度,我们知道了这玩意就是一个加密函数,这代码的意思就是把我们的账号密码验证码手机号都加密一遍然后传参到后端校验。那么我们就要定位它是怎么加密的

记一次度某满SRC挖掘之曲线救国

在此处打断点,我们在提交一遍就可以定位了

记一次度某满SRC挖掘之曲线救国

看到这个就是打成功了,往下走就好

记一次度某满SRC挖掘之曲线救国
记一次度某满SRC挖掘之曲线救国

这里没啥用,直接过

记一次度某满SRC挖掘之曲线救国

来到这里就比较有用了,可以看到它有一个方法叫setPublicKey,上百度翻译一下

记一次度某满SRC挖掘之曲线救国

什么玩意需要设置公钥,那肯定是加密的算法,我猜是RSA,接着往下走

记一次度某满SRC挖掘之曲线救国

这里看到了这玩意,打个断点看看

记一次度某满SRC挖掘之曲线救国

发现它这里根本没有走这个方法,那直接不用看

记一次度某满SRC挖掘之曲线救国

下一步走这里,追踪就完事了

记一次度某满SRC挖掘之曲线救国

看到这里已经看不懂了,没有关系,我们注意一个点

记一次度某满SRC挖掘之曲线救国

发现这里是RSA加密,那么就可以知道前面的那个o可能就是公钥咯,再往下走看看

记一次度某满SRC挖掘之曲线救国

再往下走就是加密的流程了,过于复杂,就不贴出来了,上面是加密后的结果。不过我发现每一次加密都是不同的结果。。但是我们又搞不清它加密到底加了个啥?咋办?

记一次度某满SRC挖掘之曲线救国

别慌,我们还可以手动去提交,从0001-9999依次去提交就完事了

记一次度某满SRC挖掘之曲线救国
记一次度某满SRC挖掘之曲线救国

好吧,太累了,我还是写个脚本把。差点忘了我是个脚本小子



# -*- coding:utf-8 -*-
from selenium.webdriver import Chromefrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.common.by import Byimport time
url = "http://xxx.com/hkc/register"web = Chrome()web.get(url)a = input("&gt;&gt;")codeby = web.find_element(By.XPATH, '//*[<span class="label label-primary">@id=</span>"app"]/div/div[2]/form/div[5]/div/div[1]/div/div/input')f = open('./four_code.txt', mode='r', encoding='utf-8')"""1. 使用selenium模块,并下载谷歌浏览器驱动放置在python跟路径2. 填写其它必要注册信息,获取验证码,接下来的交给脚本(若提交按钮呈现灰色,请先随便输入验证码,点击一次提交按钮,然后清楚你输入的验证码)3. 回到脚本,随便输入一个字符,开始自动爆破验证码
"""for code in f.readlines(): codeby.send_keys(code.strip()) web.find_element(By.XPATH, '//*[<span class="label label-primary">@id=</span>"app"]/div/div[2]/form/div[7]/div/div/button').click() codeby.clear()


见证奇迹的时刻到了!

记一次度某满SRC挖掘之曲线救国
记一次度某满SRC挖掘之曲线救国

注册成功!任意用户注册一枚到手!到这里本篇文章就完结了,这里想告诉大家的是,见到加密不要慌,试试其它手法,说不动就到手了,下面贴一张赏金图

记一次度某满SRC挖掘之曲线救国

记一次度某满SRC挖掘之曲线救国


记一次度某满SRC挖掘之曲线救国


免责声明

由于传播、利用本公众号NGC660安全实验室所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号NGC600安全实验室及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!


原文始发于微信公众号(NGC660安全实验室):记一次度某满SRC挖掘之曲线救国

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月5日22:53:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次度某满SRC挖掘之曲线救国https://cn-sec.com/archives/1768186.html

发表评论

匿名网友 填写信息