Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

nodejs-sni-crypt

Proof of concept для "шифрования" SNI в TLS соединениях. Здесь нет настоящего шифрования, а просто применяется битовый сдвиг к символам SNI, чтобы сделать его нечитаемым для DPI. Это может помочь обойти некоторые фильтры, которые блокируют определенные домены по SNI. Работает на уровне TCP, перехватывая данные до начала TLS рукопожатия, извлекая SNI, модифицируя его и затем устанавливая новое соединение к целевому серверу с измененным SNI.

Осторожно

Этот код предназначен только для тестирования концепции и не готов к настоящему использованию. Работает медленно и с большими задержками, много погрнаничных случаев не обрабатывается.

Использование

  1. Для необходимых доменов нужно настроить DNS(файл hosts или на роутере Adguard Home/dnsmasq) так, чтобы они указывали на IP client.ts. Настроить константы serverAddress и serverPort которые будут указывать на server.ts.
  2. На другой машине запустить server.ts, который будет слушать и перенаправлять трафик на целевые серверы, извлекая и модифицируя SNI.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages