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。

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

  • 相关阅读:
    google搜索教程
    phoenix/stack-five
    phoenix/stack-four
    phoenix/stack-three
    phoenix/stack-one
    fork 在 Linux 内核里面的实现
    无文件执行 ELF
    glibc 堆内存管理杂记
    QOS shaping 知识要点
    QOS CQ
  • 原文地址:https://www.cnblogs.com/Charltsing/p/FiddlerCoreHTTPS.html
Copyright © 2011-2022 走看看