美文网首页
04:Python爬虫|网洛者反反爬虫练习平台第三题:AAEnc

04:Python爬虫|网洛者反反爬虫练习平台第三题:AAEnc

作者: HAO延WEI | 来源:发表于2021-12-17 10:40 被阅读0次

转载地址:https://mp.weixin.qq.com/s?__biz=Mzg5NzY2MzA5MQ==&mid=2247487083&idx=1&sn=eef9a0e9f37a9d320beb5c77d2e81f2c&chksm=c06f2777f718ae61527781d953d21e5b13a78e943936a24c2bf7eb43e185de88cfedad97a24b&scene=178&cur_album_id=1996451898278608899#rd
如有侵权,请及时联系我立即删除!
详情请关注微信公众号: K哥爬虫
感谢K哥爬虫教学贴,学习爬虫不迷路


链接:http://spider.wangluozhe.com/challenge/3
简介:

目标:采集100页的全部数字,并计算所有数据加和。请抠出源码进行计算!


逆向参数

逆向的目标主要是翻页接口_signature 参数,调用的加密方法仍然是 window.get_sign()


通过搜索找到加密函数位置
继续跟进,会发现是一个颜文字的 AAEncode 混淆:
解密混淆方式

1.使用在线工具直接解密,比如:http://www.atoolbox.net/Tool.php?Id=703
2.AAEncode 的代码通常是一个自执行方法(IIFE),去掉代码最后面的(‘_’)后,放到浏览器里面去直接执行就可以看到源码

  1. 点击解密函数,通过浏览器在线调试加密函数
var CryptoJS = require('crypto-js')


function anonymous() {

    function encryptByDES(message, key) {
        var keyHex = CryptoJS.enc.Utf8.parse(key);
        var encrypted = CryptoJS.DES.encrypt(message, keyHex, {
            mode: CryptoJS.mode.ECB,
            padding: CryptoJS.pad.Pkcs7
        });
        return encrypted.ciphertext.toString();
    }

    try {
        var message = 'http://spider.wangluozhe.com/challenge/3';
        // var tmp = window.DeviceMotionEvent;
        message = message + '|' + Date.parse(new Date()).toString();
        var key = Date.parse(new Date()).toString();
        return  encryptByDES(message, key);
    } catch (e) {
        var message = '1234567890abcdefghijklmnopqrstuvwxyz';
        var key = Date.parse(new Date()).toString() + '123';
        return encryptByDES(message, key);
    }
}
// console.log(cryptoJs.enc.Utf8.parse("abcdefg"))
console.log(anonymous())

相关文章

网友评论

      本文标题:04:Python爬虫|网洛者反反爬虫练习平台第三题:AAEnc

      本文链接:https://www.haomeiwen.com/subject/bxpvfrtx.html