All Projects → xvzc → SpoofDPI

xvzc / SpoofDPI

Licence: MIT license
A simple and fast anti-censorship tool written in Go

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to SpoofDPI

Goodbyedpi
GoodbyeDPI—Passive Deep Packet Inspection blocker and Active DPI circumvention utility (for Windows)
Stars: ✭ 4,936 (+2803.53%)
Mutual labels:  dpi, censorship-circumvention, deep-packet-inspection
Notsodeep
Active DPI circumvention utility for Linux
Stars: ✭ 56 (-67.06%)
Mutual labels:  dpi, censorship-circumvention
Zapret
Обход DPI в linux
Stars: ✭ 1,148 (+575.29%)
Mutual labels:  dpi, censorship-circumvention
Powertunnel
Simple, scalable, cross-platform and effective solution against government censorship
Stars: ✭ 157 (-7.65%)
Mutual labels:  dpi, censorship-circumvention
Ndpi
Open Source Deep Packet Inspection Software Toolkit
Stars: ✭ 2,705 (+1491.18%)
Mutual labels:  dpi, deep-packet-inspection
Powertunnel Android
Simple, scalable, cross-platform and effective solution against government censorship for Android
Stars: ✭ 157 (-7.65%)
Mutual labels:  dpi, censorship-circumvention
Blockcheck
Russian ISP blocking type checker NOTE: NOT WORKING CURRENTLY. ВНИМАНИЕ: НЕ РАБОТАЕТ НА ТЕКУЩИЙ МОМЕНТ
Stars: ✭ 1,218 (+616.47%)
Mutual labels:  dpi, censorship-circumvention
harddns
RFC8484 and DoH/JSON resolver
Stars: ✭ 35 (-79.41%)
Mutual labels:  censorship-circumvention, anti-censorship
Greentunnel
GreenTunnel is an anti-censorship utility designed to bypass the DPI system that is put in place by various ISPs to block access to certain websites.
Stars: ✭ 2,477 (+1357.06%)
Mutual labels:  dpi, deep-packet-inspection
Dpitunnel
DPITunnel is an android app made for censorship bypass
Stars: ✭ 179 (+5.29%)
Mutual labels:  dpi, censorship-circumvention
Shadowsocks Cloak Installer
A one-key script to setup Cloak plugin with Shadowsocks on your server
Stars: ✭ 138 (-18.82%)
Mutual labels:  proxy-server, censorship-circumvention
socks5-proxy
Socks5 Proxy with Go Lang. support USER_ID/PASSWORD. able to bypass HTTPS(SNI) censorship
Stars: ✭ 29 (-82.94%)
Mutual labels:  proxy-server, anti-censorship
copilot
An easy to use censorship simulating access point in a box
Stars: ✭ 26 (-84.71%)
Mutual labels:  censorship-circumvention
superhighway84
USENET-inspired, uncensorable, decentralized internet discussion system running on IPFS & OrbitDB
Stars: ✭ 437 (+157.06%)
Mutual labels:  censorship-circumvention
nginx-reverseproxy
A simple implementation of a multidomain nginx reverse proxy, using Node apps.
Stars: ✭ 46 (-72.94%)
Mutual labels:  proxy-server
shapeshifter-transports
Shapeshifter Transports is a set of Pluggable Transports implementing the Go API from the Pluggable Transports 2.0 specification
Stars: ✭ 31 (-81.76%)
Mutual labels:  censorship-circumvention
ShunEncode
🐶巷议,通过简单混淆来规避敏感词程序的审查
Stars: ✭ 14 (-91.76%)
Mutual labels:  censorship-circumvention
dippi
Calculate display info like DPI and aspect ratio
Stars: ✭ 57 (-66.47%)
Mutual labels:  dpi
mtproxy
Alpine-based Docker Image for Telegram MTProto Proxy
Stars: ✭ 89 (-47.65%)
Mutual labels:  proxy-server
microsocks11
A cross-platform SOCKS5 library and server based on the microsocks project.
Stars: ✭ 22 (-87.06%)
Mutual labels:  proxy-server

SpoofDPI

Read in other Languages: English, 한국어, 简体中文

A simple and fast software designed to bypass Deep Packet Inspection

image

Installation

Binary

SpoofDPI will be installed in ~/.spoof-dpi/bin.
To run SpoofDPI in any directory, add the line below to your ~/.bashrc || ~/.zshrc || ...

export PATH=$PATH:~/.spoof-dpi/bin

curl

Install the latest binary with curl

  • OSX
curl -fsSL https://raw.githubusercontent.com/xvzc/SpoofDPI/main/install.sh | bash -s osx
  • Linux
curl -fsSL https://raw.githubusercontent.com/xvzc/SpoofDPI/main/install.sh | bash -s linux

wget

Install the latest binary with wget

  • OSX
wget -O - https://raw.githubusercontent.com/xvzc/SpoofDPI/main/install.sh | bash -s osx 
  • Linux
wget -O - https://raw.githubusercontent.com/xvzc/SpoofDPI/main/install.sh | bash -s linux 

Go

You can also install SpoofDPI with go install
$ go install github.com/xvzc/SpoofDPI/cmd/spoof-dpi

Remember that $GOPATH should be set in your $PATH

Git

You can also build your own
$ git clone https://github.com/xvzc/SpoofDPI.git
$ cd SpoofDPI
$ go build ./cmd/...

Usage

Usage: spoof-dpi [options...]
--addr=<addr>   | default: 127.0.0.1
--dns=<addr>    | default: 8.8.8.8
--port=<port>   | default: 8080
--debug=<bool>  | default: false
--banner=<bool> | default: true

If you are using any vpn extensions such as Hotspot Shield in Chrome browser,
go to Settings > Extensions, and disable them.

OSX

Run $ spoof-dpi and it will automatically set your proxy

Linux

Run $ spoof-dpi and open your favorite browser with proxy option
google-chrome --proxy-server="http://127.0.0.1:8080"

How it works

HTTP

Since most of websites in the world now support HTTPS, SpoofDPI doesn't bypass Deep Packet Inspections for HTTP requets, However It still serves proxy connection for all HTTP requests.

HTTPS

Although TLS 1.3 encrypts every handshake process, the domain names are still shown as plaintext in the Client hello packet. In other words, when someone else looks on the packet, they can easily guess where the packet is headed to. The domain name can offer a significant information while DPI is being processed, and we can actually see that the connection is blocked right after sending Client hello packet. I had tried some ways to bypass this, and found out that it seemed like only the first chunk gets inspected when we send the Client hello packet splited in chunks. What SpoofDPI does to bypass this is to send the first 1 byte of a request to the server, and then send the rest.

SpoofDPI doesn't decrypt your HTTPS requests, and that's why we don't need the SSL certificates.

Inspirations

Green Tunnel by @SadeghHayeri
GoodbyeDPI by @ValdikSS

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].