zoukankan      html  css  js  c++  java
  • Fiddlercore拦截并修改HTTPS链接的网页,实现JS注入

    原始出处:https://www.cnblogs.com/Charltsing/p/FiddlerCoreHTTPS.html

    Fiddlercore可以拦截和修改http的网页内容,代码在百度很多。

    如果想用Fiddlercore拦截和修改Https的网页,你会遇到私密连接的问题,导致Chrome无法打开网页。如何解决这个问题呢?

    Fiddlercore拦截Https的原理是自己创建一个Https的证书,重新对网站的链接数据进行加密传输,所以,我们要通过代码创建一个https证书给Fiddlercore。

    创建Https证书有两种方式,一种是通过MakeCert.exe ,另一种是通过 CertMaker.dll及BCMakeCert.dll来创建。

    在官网说明中,明确的说了两点:

    1、MakeCert.exe使用Windows API生成存储在用户的PersonalCertificates存储中的证书。这些证书与iOS设备不兼容,后者需要证书中未由MakeCert.exe设置的特定字段。
    2、CertMaker.dll使用BouncyCastle C#库(BCMakeCert.dll)从头开始生成新证书。这些证书仅存储在内存中,并与iOS设备兼容。

    注意红色字!!

    我们 在Fiddlercore编程的时候,通常采用dll方式创建证书,创建后的证书放在内存中。所以,仅当程序第一次启动的时候,我们才需要创建证书,以后再启动程序,就不需要创建证书了,这个过程持续到电脑重启为止。

    创建的证书有两个关键信息:fiddler.certmaker.bc.cert 和 fiddler.certmaker.bc.key。这两个信息创建之后,要保存到某个地方以备下次启动时调用获取之前创建的数字证书。通常,我们可以把这两个信息(就是字符串)放到App.Config文件里面。

    安装证书使用 CertMaker.createRootCert(),卸载证书使用removeFiddlerGeneratedCerts()

    下面是一个注入JS的工具,使用Fiddlercore完成,支持HTTPS网页。

    如果有什么技术问题交流,联系QQ564955427。

    *****************

  • 相关阅读:
    较全的ASCII码对照表
    关于.NET Framework 3.5 SP1 bootstrapper 包(安装和部署)的解决方案
    C#中DllImport用法和路径问题
    在Winform中给的button等控件添加快捷键的几种方法。
    DataGridView之为每行前面添加序号
    【软件设计过程PowerDesigner v12简介】
    死锁与活锁的区别,死锁与饥饿的区别
    性能优化之 — AS3.0对象池运用
    wc之“HelloWorld”
    php之memcache缓存技术
  • 原文地址:https://www.cnblogs.com/Charltsing/p/FiddlerCoreHTTPS.html
Copyright © 2011-2022 走看看