来吧骚年,每天花5分钟锻炼一下自己的JS调试也是极好的,对后期调试滑块验证码还原、拖动很有帮助,坚持下去,我们能赢。建议亲自试试哦,如果对大家有帮助的话不妨关注一下知识图谱与大数据公众号,当然不关注也无所谓,有问题随时私信。完整JS代码参考

从今天开始种树-同程MD5

从今天开始种树-驴妈妈MD5

从今天开始种树-途牛MD5

从今天开始种树-搜狐视频MD5

开始

本次涉及同程旅游、驴妈妈、途牛、还有“买三送一”的搜狐,方法重复性虽高但并不阻碍大家亲自尝试哦。

同程旅游

打开同程旅游登录界面:

输入错误的账号密码,找到请求url



查看formdata,发现pass(即密码)被加密了:

选择调用栈进去:



在文件中搜索pass:



MD5赫然映入眼帘,那就打上断点,然后跳到这个MD5里看看,最先跳到这里:



往下一拉发现JS代码就区区一百行:



抠出来即可运行。

同程运行结果

import execjs
#url = https://passport.ly.com/
with open('..//js//tongcheng.js', encoding='utf-8') as f:
tongcheng = f.read()
js = execjs.compile(tongcheng)
logid = js.call('get_pwd', "QWERTY123456")
print(logid)



一模一样。

驴妈妈

这么快就结束了很不爽,继续打开一个驴妈妈,套路与上面一样:



输入账号密码后找到url,查看formdata:



这么短的加密方式一般就是MD5,通过调用栈进入文件,搜索password,找到入口,函数名直接了当nd5(pw)



打上断点进入md5函数:



上下拉一下代码发现也就百十行,抠出来。

驴妈妈运行

import execjs
#url = https://login.lvmama.com/nsso/login
with open('..//js//lvmama.js', encoding='utf-8') as f:
lvmama = f.read()
js = execjs.compile(lvmama)
logid = js.call('get_pwd', "qwer")
print(logid)

途牛

还贴图么?贴吧

登录



查看formdata



一看发现依然MD5加密。

调用栈进入

函数名倒是变化了一下。整上断点,进入md5函数里



同拉,发现也是100多行。

途牛运行结果

闭着眼睛扣完使用python调用。

import execjs
#url = https://passport.tuniu.com/
with open('..//js//tuniu.js', encoding='utf-8') as f:
tuniu = f.read()
js = execjs.compile(tuniu)
logid = js.call('get_pwd', "qwert1234")
print(logid)

买三送一:搜狐视频

随便点击发现搜狐视频也是MD5加密,看一看formdata

调用栈进去,搜索关键字,打上断点,一气呵成:



进入md5函数,同样100多行:



换汤不换药,直接抠出来运行。

搜狐视频运行结果

import execjs
#url = https://tv.sohu.com/
with open('..//js//souhu.js', encoding='utf-8') as f:
souhu = f.read()
js = execjs.compile(souhu)
logid = js.call('get_pwd', "qwer1234")
print(logid)



完全一致,有内味了。

结束

一口气把途牛、同程、驴妈妈、搜狐拎出来了,都很简单,建议亲自试试哦,如果对大家有帮助的话不妨关注一下知识图谱与大数据公众号,当然不关注也无所谓,有问题随时私信。



每日爬虫JS小逆之5分钟旅游网MD5一锅端的更多相关文章

  1. React.js 小书 Lesson25 - 实战分析:评论功能(四)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson25 转载请注明出处,保留原文链接和作者信息. (本文未审核) 目前为止,第二阶段知识已经基本 ...

  2. React.js 小书 Lesson26 - 实战分析:评论功能(五)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson26 转载请注明出处,保留原文链接和作者信息. (本文未审核) 持久化评论 同样地,可以通过类 ...

  3. js小功能整理

    /** * 判断是否包含字符串某字符串 * @param {[type]} str [被检测的字符串] * @param {[type]} substr [检测是否含有的字符串] * @return ...

  4. [转载]Js小技巧||给input type=“password”的输入框赋默认值

    http://www.cnblogs.com/Raywang80s/archive/2012/12/06/2804459.html [转载]Js小技巧||给input type="passw ...

  5. 一些js小题(一)

    一些js小题,掌握这些对于一些常见的面试.笔试题应该很有帮助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1 ...

  6. 第24篇 js小知识和“坑”

    前面说了说了js的相关知识,基本上除了语法外,把项目常用的知识做了一个梳理,现在说下js的其它方面的知识,这些知识不成体系,属于不理解对于一般开发没什么太多影响,但如果理解清楚,可以更好去开发. js ...

  7. React.js 小书介绍

    React.js 小书 Github 关于作者 这是一本关于 React.js 的小书. 因为工作中一直在使用 React.js,也一直以来想总结一下自己关于 React.js 的一些知识.经验.于是 ...

  8. 一个js小游戏----总结

    花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用web ...

  9. React.js小书总结

    (迁移自旧博客2017 08 27) 第一阶段 react的组件相当于MVC里面的View. react.js 将帮助我们将界面分成了各个独立的小块,每一个块就是组件,这些组件之间可以组合.嵌套,就成 ...

随机推荐

  1. CSS3动画之animation-timing-function中的stepshan shu

    1.概念 animation-timing-function是规定动画的速度曲线,一般使用的是cubic-bezier() 控制动画曲线的,属性值一般有ease/ease-in/ease-out等,而 ...

  2. 关键词seo优化的核心和重点

    http://www.wocaoseo.com/thread-197-1-1.html        网站SEO优化是很多站长所必须要面对的问题,但是很多新手站长对关键词应如何选择,关键词要如何布局一 ...

  3. 国内几大seo高手(夫唯,王通,久久)的技术分析

    http://www.wocaoseo.com/thread-146-1-1.html 目前学习seo的人越来越多了,这种技术的普及和推广也在不断的扩大,先进的好的培训机构不断涌现,很多高水平老师都在 ...

  4. e3mall商城的归纳总结10之freemarker的使用和sso单点登录系统的简介

    敬给读者的话 本节主要讲解freemarker的使用以及sso单点登录系统,两种技术都是比较先进的技术,freemarker是一个模板,主要生成一个静态静态,能更快的响应给用户,提高用户体验. 而ss ...

  5. java服务端实现微信小程序内容安全

    请参考微信官方文档:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/sec-check/security.i ...

  6. label 的autosize属性

    label 的autosize属性,显示不全的问题.

  7. Unity CommandLine

    CommandLineArguments https://docs.unity3d.com/Manual/CommandLineArguments.html Unity3D游戏开发之“unity3D命 ...

  8. openssl1.0在mac下的编译安装(踩坑精华)

    之前做了一次brew版本升级,然后用pip3安装的一个python命令就无法执行了(涉及到openssl库),执行就会报一个错误. ImportError: dlopen(/usr/local/Cel ...

  9. selenium上手

    功能自动化 前提 自动化的主要目的并不是为了找Bug,是为了证明功能可用 不只是所有的功能都可以自动化,如UI 并不是所有的项目都可以使用自动化,如selenium只能使用bs项目,小项目不适合使用自 ...

  10. 分数运算(gcd)

    时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小) 题目描述 计算机中采用浮点数表示所有实数,但这意味着精度丢失.例如无法精确 ...