zoukankan      html  css  js  c++  java
  • 记第一次破解js加密代码

    首先,我要爬的是这个网站:http://www.66ip.cn/nm.html,我想做个直接调用网站的接口获取代理的爬虫

    这个接口看上去似乎很简单,直接输入需要的代理条件后,点击提取即可

    点击提取后就是一个个ip了,

    废话不多说,按f12点开, 

    发现需要两个cookie值,不知道从哪来,删掉cookie后,刷新页面再看看。 

    同样有这两个cookie,不过是新值,并且出了jquery.js没别的文件了。奇怪了,cookie怎么出来的,不过可以注意到被重定向了。

    所以,把f12的net work下的 preserve log 勾选(新手才学到的),这样就可以看到所有的包了

    三、

    果然找到一个cookie,但是还有一个cookie值呢?查看这个521报文看不到内容,使用postman试试(这里一定要注意,今天被坑了很久,postman是依托于chrome的,chrome出于安全考虑,限制了postman的cookie功能,需要下载插件,点击一下会跳转到谷歌应用商店postman interceptor,然后在postman中打开改插件即可。还有要注意的是,chrome上的cookie,是会被postman使用的,记得删掉。下图的postman interceptor点开了)

     四,然后发现果然执行了一段js代码,拿去格式化,简单修改,使用nodejs运行了一下,其实就是一句,document.cookies='***'的代码

     五,这个还算好做,分离出来就行,然后发现,诶,每次没cookie的请求都是不同的js代码,干脆就提取出js代码,然后,替换部分js代码, 即可获取_ydclearance

    @staticmethod
        def get_66ip_cookies(url):
            """
            66ip的加密cookie破解
            :param self:
            :param url:
            :return:
            """
            headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'
                                     ' Chrome/68.0.3440.106 Safari/537.36'}
            res = requests.get(url, headers=headers)
            yd_cookie = res.cookies['yd_cookie']
            groups = re.search('<script language="javascript"> window.onload=setTimeout("(.*?)", 200); (.*?)</script>',
                               res.text)
            x = groups.group(1)
            y = groups.group(2)
            y = y.replace('eval("qo=eval;qo(po);");', 'result = /_ydclearance=(.*?);/.exec(po)[1]; return result;')
            jsfunc = execjs.compile(y)
            _ydclearance = jsfunc.call(x[:2], re.findall('[0-9]+', x)[0])
            return yd_cookie, _ydclearance
  • 相关阅读:
    k8s-学习笔记12-权限体系
    Linux上磁盘热插拔
    delphi hashmap
    my gcc project
    gcc dll 导出问题 GTK+Glade3 Gtk-WARNING **: Could not find signal handler 问题最终解析
    c/c++字符串定义及使用的对比
    gcc printf()打印char* str
    gcc选项-g与-rdynamic的异同
    GCC编译,库的编译使用及Makefile
    gcc test
  • 原文地址:https://www.cnblogs.com/haoabcd2010/p/10226861.html
Copyright © 2011-2022 走看看