简介从上面两节实战中已经可以做一个属于自己的翻译应用了,甚至可以对翻译结果进行对比然后通过一些语意软件进行优化,这里的所有的DEMO都只是为了学习JS逆向这些技能的过程,今天这节是关于某东登陆参数的逆向,只是为了巩固调试技巧,在实际操作上也不能直接登陆,因为还有一个滑块验证,这个后期再学习 。
实战信息网址:
aHR0cHM6Ly9wYXNzcG9ydC5qZC5jb20vbmV3L2xvZ2luLmFzcHg=
接口:
aHR0cHM6Ly9wYXNzcG9ydC5qZC5jb20vdWMvbG9naW5TZXJ2aWNlP3V1aWQ9NTMzZGJiN2MtNzQ3Yi00MzhmLTgwOGUtZWNiOTRkNzhjM2FiJiZyPTAuNTg0MzU4NzYxMDE0ODc0NCZ2ZXJzaW9uPTIwMTU=
逆向参数:
- uuid
- eid
- fp
- nloginpwd
- authcode
- pubKey
- sa_token
- seqSid
实战流程一、找接口
文章插图
点击登陆通过按F12打开控制台?.NETwork找到发请求的包 。这里由于有个参数是通过页面加载时发送的一个请求获取的,建议在打开控制台后刷新页面重新抓包加载 。
文章插图
二、下断点
首先肯定先测试XHR断点,因为XHR可以快速断到函数的调用栈,从栈中往上找即可 。
通过"/uc/loginService"可以直接断住 。
文章插图
看函数名称就可以知道是"loginSubmit",所以我们可以直接打过去查看传参位置 。
文章插图
可以看到uuid、eid、fp、pubKey、sa_token是直接.val()获取的,从这里可以看出调用的是jQuey的input文本框里面的属性值,但是我们没有从界面上看到,所以他肯定是<input type = "hidden"/>,所以可以直接去html中找到,直接搜索即可 。nloginpwd参数使用了加密方法getEntryptPwd(),seqSid参数是通过window中的属性拿到的 。
我们首先在页面中找到这些参数,直接搜索"f8....."这些具体数据即可 。
文章插图
所以在login.aspx中可以直接在input的value的属性中找到 。
然后去找nloginpwd参数的调用方法,然后抠下来去本地运行即可 。
function getEntryptPwd(pwd){var pubKey = $('#pubKey').val();if(!pwd || !pubKey || !SysConfig.encryptInfo){return pwd;}var encrypt = new JSEncrypt();encrypt.setPublicKey(pubKey);return encrypt.encrypt(pwd);}这里可以看到$('#pubKey').val()就是获取html公钥所以抠下来的代码需要替换掉,可以抠下测试代码来,这里需要一些本地Navigator还有Window这些对象环境,所以直接放到Snippets上运行 。debug运行结果:
文章插图
Snippets面板结果:
文章插图
最后寻找seqSid这个参数是从window._jdtdmap_sessionId中来,我们首先搜索一下里面的值"
推荐阅读
- |逆向思维:不要再努力的学习和工作,这是一个天大的错误
- 王多鱼|逆向思维:你想过吗,花出去的钱,你还都能赚回来
- 交规中怎么判定逆向行驶? 逆行扣几分
- SEO蜘蛛爬虫是如何判断网站是否优质? seo蜘蛛精破解版
- 网友逆向工程微信安装包:11年膨胀575倍 到底更新了啥?
- 刘海|逆向思维:创业不是研究别人的成功,而是要研究别人的失败
- 微信|网友逆向工程微信安装包:11年膨胀575倍 到底更新了啥?
- 与众不同的“逆向搜索平台”——Taboola
- 逆向行驶应该怎么处罚 逆行怎么扣分和罚款
- 招聘|逆向思维:选人就是选书,学会筛选过滤你才能事半功倍
