声明:
本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
有相关问题请第一时间头像私信联系我删除博客!
前言
听说akamai出3.0,最近也在搞论文无聊就研究一下,逆向难度下降了挺多的2.0我记得很多坑,3.0版本砍了一堆。网上随便找了一个项目接着开发akamai半天就搞完了。
逆向过程
主要流程
第一次请求拿到html的js
_html = response.text js_url_prefix = re.findall('type="text/javascript"\s+src="(.*?)"', _html)[0] url = f"https://www.dhl.com{js_url_prefix}" response = session.get(url, headers=headers) #动态替换code文件 with open('./test/code.js','w',encoding='utf-8') as fp:fp.write(response.text) #调用code文件拿到ck sensor_data = req.get("http://127.0.0.1:3000/abck",json=dict(session.cookies)).text data = json.loads(sensor_data) print(data) response = session.post(url,headers=headers,data=data, ) print(response.text) print(response.cookies) url = ## params = {'trackingNumber': '1234567','language': 'zh','requesterCountryCode': 'TW','source': 'tt','inputsource': 'marketingstage', } #拿到返回值 response = session.get(url, params=params, headers=headers) print(response.text)
结果
abck的1变0即为成功。
吐槽
搞这种专门的安全产品你让我逆向,我是一点不会,补环境也就搞搞那些中型的厂,阿里京东rs瑞数akamai等等我其实也不会,不过我比较擅长看别人写的代码然后直接套娃,或者直接上框架上整。上家公司我光实习就3个月就需要上手至少4-6个框架那几天真麻木了,一去到就zuolao看项目到最后也就孰能生巧,再去github看同类型项目上手快很多。每家公司基本都是有自己的爬虫框架需要自己逆向的其实很少,思维感觉更重要进去大部分都是打螺丝,所以没必要执着于逆向,能搞到数据就行了。