启动

mitmdump -s http_proxy.py -p 9000

替换js代码

# -*- coding: utf-8 -*-

import re

main_url = 'http://match.yuanrenxue.com/match/9'  # 9
js_url = 'http://match.yuanrenxue.com/static/match/safety/match9/udc.js'
# http://match.yuanrenxue.com/static/match/safety/match9/udc.js def response(flow):
if flow.request.url.startswith(main_url):
# if(flow.response.text.startswith('<body>')):
# file_path = "C:/Users/natpacket/Desktop/js/yuanrenxue/9/replace_9.html"
# with open(file=file_path, mode='r', encoding='utf-8') as f:
# replace_js = f.read()
# flow.response.text = replace_js
# print('debugger替换成功')
if (flow.response.text.startswith('<body>')):
# file_path = "C:/Users/natpacket/Desktop/js/yuanrenxue/9/replace_9.html"
# with open(file=file_path, mode='r', encoding='utf-8') as f:
# replace_js = f.read()
# flow.response.text = replace_js
# print('debugger替换成功')
replace_str = r'location.reload\(\)'
replace_str1 = r'setInterval'
replace_str2 = r'}\[[\s\S]*?\)\);'
flow.response.text = re.sub(replace_str, '', flow.response.text)
flow.response.text = re.sub(replace_str1,
'function setInterval(a,b){console.log("正在调用setInterval");};setInterval',
flow.response.text)
# flow.response.text = re.sub(replace_str2,
# "});",
# flow.response.text)
if flow.request.url.startswith(js_url):
file_path = "C:/Users/natpacket/Desktop/js/udc.js"
with open(file=file_path, mode='r', encoding='utf-8') as f:
replace_js = f.read()
flow.response.text = replace_js+"console.log('当前时间戳',Math.round(new Date().getTime()/1000).toString());var _decrypt = decrypt;decrypt = function(a){console.log('时间戳',a);var res = _decrypt(a);console.log('结果',res);return res};"
# flow.response.text="test"
print('js注入成功')

mitmproxy第一次尝试-猿人学第九题的更多相关文章

  1. 在CentOS上部署Asp.Net MVC3的第一次尝试

    关注mono已经很久了,现在才有时间真正的尝试一下在linux中部署asp.net的网站,也算是记录 一下自己的第一次尝试吧. 我的实践的环境是win7 + VM10 + CentOS6.5 下面就是 ...

  2. B君的第九题

    B君的第九题 对于一个排列\(a_1, a_2,\dots,a_n\),如果对于一个i满足\(a_{i-1}<a_i>a_i+1\)则称i是一个极大值.我们认为\(a_0=a_{n+1}= ...

  3. HDU 6298.Maximum Multiple-数学思维题(脑子是个好东西,可惜我没有) (2018 Multi-University Training Contest 1 1001)

    暑假杭电多校第一场,这一场是贪心场,很多贪心的题目,但是自己太菜,姿势挫死了,把自己都写吐了... 2018 Multi-University Training Contest 1 HDU6298.M ...

  4. DQN的第一次尝试 -- 软工结对编程第一次作业

    DQN的第一次尝试 在本篇博客中将为大家形象地介绍一下我对DQN的理解,以及我和我的队友如何利用DQN进行黄金点游戏.最后我会总结一下基于我在游戏中看到的结果,得到的dqn使用的注意事项和这次游戏中我 ...

  5. CTF---Web入门第九题 FALSE

    FALSE分值:10 来源: iFurySt 难度:易 参与人数:4567人 Get Flag:2144人 答题人数:2157人 解题通过率:99% PHP代码审计 hint:sha1函数你有认真了解 ...

  6. 第一次尝试使用JAVA编写的ATM机程序

    package study; import java.util.Scanner; public class ATM { private static int[] users = { 111111, 2 ...

  7. leetcode第九题--Palindrome Number

    Problem: Determine whether an integer is a palindrome. Do this without extra space. click to show sp ...

  8. c3p0数据源的第一次尝试

    开始补习 以前学习过的基础 正在尝试从c3p0 获取到connection 好的,首先上代码吧 public static DataSource ds = null; static { ComboPo ...

  9. 计蒜客 30990.An Olympian Math Problem-数学公式题 (ACM-ICPC 2018 南京赛区网络预赛 A)

    A. An Olympian Math Problem 54.28% 1000ms 65536K   Alice, a student of grade 66, is thinking about a ...

随机推荐

  1. 【知识点】SQLite3总结

    目录 基本的DDL.DML 创建表,包含日期字段 插入一行,包含日期字段 查找,包含日期字段 查找,按照排序以及限制条目输出 删除记录 更新数据 视图 索引 触发器 事务 专业术语 基本的DDL.DM ...

  2. 重新整理 .net core 实践篇————熔断与限流[三十五]

    前言 简单整理一下熔断与限流,跟上一节息息相关. 正文 polly 的策略类型分为两类: 被动策略(异常处理.结果处理) 主动策略(超时处理.断路器.舱壁隔离.缓存) 熔断和限流通过下面主动策略来实现 ...

  3. 4.QT:spinbox(spindoublebox)控件的信号响应

    Qt的QSpinBox和QDoubleSpinBox两个控件在默认情况下是valueChanged信号,会响应每次输入栏的改变. 比如想要输入数值"123",我们会依次键入1 - ...

  4. 27、Tomcat服务的安装与配置

    服务器名称 ip地址 slave-node1 172.16.1.91 27.1. Tomcat简介: Tomcat是Apache软件基金会(Apache Software Foundation)的Ja ...

  5. 使用Flex实现图片旋转。

    当用flex实现图片旋转的时候,遇到了这样的问题:截图之后,图片还是会继续旋转,应该是canvas这个还有旋转的角度,所以看到效果跟你截图保存下来的效果不一样. 函数: 角度转换为弧度,这里面涉及到了 ...

  6. 编译x86_64 Linux内核并基于QEMU运行

    编译并运行内核镜像 安装包准备 $ sudo apt install git $ sudo apt install build-essential kernel-package fakeroot li ...

  7. CentOS-Docker搭建Nacos-v1.3.2(单点)

    说明:从v1.3.1版本开始支持自定义mysql-8.x 通用属性配置(v1.3.2) name description option MODE cluster模式/standalone模式 clus ...

  8. flask 的安装与使用

    一.Flask Flask 是一个轻量级的框架,可以将数据库中的数据呈现到页面上(动态网站). 之前搭建的网站是静态网站(没有连接数据库)页面的数据不会改变.但是现在用的网站都是动态网站. 1.下载F ...

  9. ms17-010 永恒之蓝漏洞复现(CVE-2017-0143)

    0x01 首先对目标机的开放端口进行探测,我们可以使用探测神器nmap 发现开放的445端口,然后进行下一步的ms17-010的漏洞验证 0x02 打开MSF美少妇神器,用search命令搜索ms17 ...

  10. 自动化运维必须要学的Shell脚本之——循环语句(for、while和until循环)

    1. 循环前先了解echo的使用 1.1 echo -n 表示不换行输出 1.2 echo -e 输出转义字符,将转义后的内容输出到屏幕上 常见的转义字符有: 1.2.1 \b 相当于退格键 转义后相 ...