oeo / mirror2

proxy and mitm modify any amount of remote hosts (even with ssl) using harmon modifiers

Home Page:https://www.npmjs.com/package/mirror2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mirror2

mirror2 is designed to reverse proxy and "mitm" modify remote hosts. it supports custom connect middlewares at both the routing-level and the individual host level as well as sync string transforms and harmon select modifiers.

magic mirror on the wall, who is the fairest one of all?

quick start

git clone https://github.com/tosadvisor/mirror2
cd mirror2
npm i
node usage.js

optionally, for demo purposes

echo "127.0.0.1 proxy.com" >> /etc/hosts

open browser to http://localhost:7777

usage

var mirror, server;

mirror = require('mirror2');

server = new mirror.ProxyManager({
  hosts: {

    'localhost': {

      // remote host to mirror
      host: 'stackoverflow.com',

      // enable ssl for connection to remote host
      enable_ssl: true,

      // synchronous source modifiers for text/html
      html_modifiers: [
        (function(x) {
          return x.replace('<title>', '<title>(mirror2) ');
        })
      ]
    },

    'proxy.com': {
      host: 'greatist.com',
      enable_ssl: false,

      // html head appendage for text/html
      append_head: "<script>alert('greatist.com')</script>",

      html_modifiers: [
        (function(x) {
          return x.replace('<title>', '<title>(mirror2) ');
        })
      ]
    }

  }
});

server.setup(function() {
  server.listen(7777);
  return console.log(":7777");
});

new mirror.ProxyManager(options={})

events

proxy_man.on('proxy_spawned',cb)

proxy_man.on('proxy_manager_listening',cb)

proxy_man.on('request',cb)

proxy_man.on('request_ignored',cb)

proxy_man.on('request_delivered',cb)

proxy_man.on('error',cb)

new mirror.Proxy(options={})

events

proxy.on('proxy_listening',cb)

proxy.on('request',cb)

proxy.on('request_delivered',cb)

proxy.on('error',cb)

About

proxy and mitm modify any amount of remote hosts (even with ssl) using harmon modifiers

https://www.npmjs.com/package/mirror2


Languages

Language:CoffeeScript 99.0%Language:Makefile 1.0%