📜 ⬆️ ⬇️

We fool the DPI with two scripts

This article is only a study on the topic and should not be used as an instruction for action.

In connection with the rampage of the Banhamer on the Internet, tips on using various proxies, vpn, tor and anonymizers have become frequent. All these methods send traffic to a third party that can intercept and modify it. This is not our method. We are now simply and easily teach the browser to fool DPI.

I was inspired by this article and realized a relatively easy way to go to sites directly without using other people's proxies, add-ons and programs.
')
I performed irreversible manipulations with the domain name in such a way that there was not a single reliable and unambiguous algorithm for the conversion of the resulting hash function.


Initial data:
Site (Address changed) : http://rutracker.og
http://rutracker.og


Page stub (address changed) : http://198.51.100.0/...
http://198.51.100.0/...

The URL of the page that appears when trying to open a site. Each provider page address stub probably different.


So open the notebook and write the first script:
 function FindProxyForURL(url, host) { if (shExpMatch(url, "http://*") && shExpMatch(host, "rutracker.og")) { return "HTTPS rutracker.og.; PROXY rutracker.og; DIRECT"; } return "DIRECT"; } 


Save as "proxy.pac"

The essence of this script is to use as a proxy the server itself which we want to access.

We connect "proxy.pac" in Chrome:
1. Settings -> Show advanced settings ->
Network -> Change proxy settings ->
The “Connections” tab -> Network Setup
2. Put a tick "Use script automatic configuration"
3. In the address field we write the full path to "proxy.pac"
For example: C: \ Users \ name \ Documents \ proxy.pac

Now the page stub will appear through time.

Open the notebook again and write:
 // ==UserScript== // @name BackUserJS // @description Window History Back Script // @author ivan386 // @license MIT // @version 1.0 // @include http://198.51.100.0/* // @run-at document_start // @grant none // ==/UserScript== (function (window) { var w; w = window; if (w.self != w.top) { return; } if (/http:\/\/198.51.100.0/.test(w.location.href)) { w.history.back() } })(window); 


Save as “back.user.js” in the “back” folder

This script takes us back to the page where we can click the link again.

And again open the Notepad and write:
 { "manifest_version": 2, "content_scripts" : [ { "js":[ "back.user.js" ], "matches":[ "http://198.51.100.0/*" ], "run_at":"document_start" } ], "description" : "Window History Back Script", "name" : "BackUserJS", "version" : "1.0.0" } 


Save as “manifest.json” in the “back” folder

Now add to Chrome as an Extension:
1. Additional Tools -> Extensions
2. Put a tick "Developer Mode"
3. Click "Download unpacked extension ..."
4. Find the folder “back” in which we saved “back.user.js” and “manifest.json” and click OK

Checking:
1. Restart Chrome
2. Click "Cancel" in the window "Disable extensions in developer mode" on the right.
3. We write the address of the site in the address bar and press Enter.
four. ???
5. PROFIT

Used materials:
Examine deep packet inspection from RETN
Proxy Auto Configuration (PAC)
Learning to write userscript
Userscripts. We pack user scripts for Chrome

Continued:
Through a filtering proxy using a script in the name of the moon

Source: https://habr.com/ru/post/276141/


All Articles