mirror of
https://github.com/Justuser3310/jetwork.git
synced 2025-02-07 17:34:39 +00:00
Compare commits
9 Commits
ccb88adcb4
...
e754739219
Author | SHA1 | Date | |
---|---|---|---|
|
e754739219 | ||
|
a52fb2679a | ||
|
e693d8450e | ||
|
3a376e0582 | ||
|
96600c0787 | ||
|
cc65833cfe | ||
|
4c639f2bd0 | ||
|
f2e903621e | ||
|
24737ed93e |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -7,13 +7,34 @@
|
||||
.main {
|
||||
display: grid;
|
||||
grid-template-areas:
|
||||
"our_port search"
|
||||
"servers sites"
|
||||
"servers sites";
|
||||
"off_btn search"
|
||||
"our_port sites"
|
||||
"servers sites";
|
||||
grid-template-columns: 1fr 2fr;
|
||||
grid-template-rows: auto auto;
|
||||
}
|
||||
|
||||
|
||||
.off_btn {
|
||||
grid-area: off_btn;
|
||||
background: #ff5a5a;
|
||||
align-content: center;
|
||||
border-radius: 0.4rem;
|
||||
padding-left: 1rem;
|
||||
padding-right: 1rem;
|
||||
border-style: hidden;
|
||||
font-size: 1rem;
|
||||
width: calc(100% - 0.5rem);
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.off_btn:active {
|
||||
background-color: #c85000;
|
||||
box-shadow: rgba(0, 0, 0, .06) 0 2px 4px;
|
||||
transform: scale(.96);
|
||||
}
|
||||
|
||||
|
||||
.our_port {
|
||||
grid-area: our_port;
|
||||
background: #53f453;
|
||||
@ -22,6 +43,7 @@
|
||||
padding-left: 1rem;
|
||||
padding-right: 1rem;
|
||||
margin-right: 0.5rem;
|
||||
margin-top: 0.4rem;
|
||||
}
|
||||
|
||||
.servers {
|
||||
|
@ -1,5 +0,0 @@
|
||||
{
|
||||
"ports": [
|
||||
25128
|
||||
]
|
||||
}
|
52
docs/js.md
Normal file
52
docs/js.md
Normal file
@ -0,0 +1,52 @@
|
||||
## Содержание
|
||||
1. Почему JS это плохо (для безопасности)
|
||||
2. Как отключить JS на jetwork.del.pw
|
||||
3. Как отключить JS на локальном клиенте
|
||||
|
||||
<br>
|
||||
<br>
|
||||
|
||||
### 1. Почему JS это плохо
|
||||
Через JS можно узнать ваш айпи и отслеживать вас между сайтами. <br>
|
||||
Или например узнать примерную локацию, что иногда может помочь вас сдеанонимизировать. <br>
|
||||
Если это вас не волнует - можете дальше не читать. <br>
|
||||
|
||||
### 2. Как отключить JS на jetwork.del.pw
|
||||
Заходим на jetwork.del.pw <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/6ade4b4d-93b7-4538-a262-44bd8aafeb95)
|
||||
<br>
|
||||
|
||||
Заходим на js-check.jet и видим что у нас всё плохо <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/47bf4491-9804-40a3-a02a-b9550daf90f7)
|
||||
<br>
|
||||
|
||||
Устанавливаем расширение Ublock Origin. (Origin!!!) <br>
|
||||
Делается это как и со всеми расширениями.
|
||||
<br>
|
||||
|
||||
Заходим в доп.найстройки Ublock Origin <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/3984c49e-3ade-4c5a-a691-fd9152902924)
|
||||
<br>
|
||||
|
||||
|
||||
Ставим галочку в вкладке `Settings` напротив `I am advanced user` <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/896ba926-109f-42a0-ac14-3352146771d7)
|
||||
<br>
|
||||
|
||||
Выключаем скрипты через расширение как показано, прямоугольник загорится красным <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/378303d0-b0a5-4917-84ee-28eec5b52cbf)
|
||||
<br>
|
||||
|
||||
Перезагружаем страницу и... <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/878c3b22-5ca8-4ae4-87a3-dfb714e16c14)
|
||||
|
||||
|
||||
|
||||
### 3. Как отключить JS на локальном клиенте
|
||||
Заходим на `127.0.0.1:5555` <br>
|
||||
![image](https://github.com/Justuser3310/jetwork/assets/53183489/13f107f9-6753-4278-bc07-d7c8206cc981)
|
||||
<br>
|
||||
|
||||
Дальше по аналогии как в пункте 2.
|
||||
> Есть вопросы - в чат ( https://t.me/justuser31_chat )
|
||||
|
@ -7,7 +7,7 @@ def domain_ok(domain):
|
||||
if domain.split(".")[1] in domains:
|
||||
# ../some => some
|
||||
# Защита от проверки папок выше, чем нужно и др.
|
||||
regex = compile('[^a-zA-Zа-яА-ЯЁё.-]')
|
||||
regex = compile('[^a-z.-]')
|
||||
c_domain = regex.sub('', domain)
|
||||
if domain == c_domain:
|
||||
return domain
|
||||
|
31
interface.py
31
interface.py
@ -2,14 +2,20 @@ from dash import Dash, dcc, html, Input, Output, callback
|
||||
app = Dash(__name__, title='Jetwork', update_title=None)
|
||||
|
||||
from db import *
|
||||
from status import *
|
||||
|
||||
from os import walk
|
||||
from os import system as sys
|
||||
from platform import system
|
||||
from threading import Thread
|
||||
|
||||
app.layout = html.Div([ html.Div([
|
||||
|
||||
dcc.ConfirmDialog(id='shut_mess', message='Клиент выключен!'),
|
||||
html.Button("Выключить клиент", className='off_btn', n_clicks=0, id='off_btn'),
|
||||
html.Div([], id='our_port', className='our_port'),
|
||||
html.Div([], id='servers', className='servers'),
|
||||
html.Div([], id='sites', className='sites'),
|
||||
#dcc.Input(className='search', type='search', list=[1,2,3]),
|
||||
dcc.Dropdown(options=[], id='search', placeholder='Поиск...'),
|
||||
|
||||
dcc.Interval(id='interval-component', interval=1*1000, n_intervals=0)
|
||||
@ -17,6 +23,29 @@ dcc.Interval(id='interval-component', interval=1*1000, n_intervals=0)
|
||||
], className='main')], className='content')
|
||||
|
||||
|
||||
# Функция выключения
|
||||
def shutdown():
|
||||
# Задаём код остановки
|
||||
status_set('stop')
|
||||
# Определяем платформу
|
||||
if system() == 'Linux':
|
||||
# вырубаем прокси и скрипты
|
||||
sys('killall bore')
|
||||
sys('killall python')
|
||||
elif system() == 'Windows':
|
||||
sys('taskkill /f /im bore.exe')
|
||||
sys('taskkill /f /im python.exe')
|
||||
|
||||
# Кнопка выключения
|
||||
@callback(
|
||||
Output('shut_mess', 'displayed'),
|
||||
Input('off_btn', 'n_clicks'),
|
||||
prevent_initial_call=True
|
||||
)
|
||||
def shut_btn(n_clicks):
|
||||
th = Thread(target=shutdown)
|
||||
th.start()
|
||||
return True
|
||||
|
||||
# Обновление нашего порта (зачем?)
|
||||
@callback(Output('our_port', 'children'),
|
||||
|
2
main.py
2
main.py
@ -63,7 +63,7 @@ if __name__ == '__main__':
|
||||
p = Process(target=main)
|
||||
p.start()
|
||||
|
||||
status_set(True) # Устанавливаем статус, что программа работает
|
||||
status_set('work') # Устанавливаем статус, что программа работает
|
||||
|
||||
st = status_check()
|
||||
while st:
|
||||
|
10
proxy.py
10
proxy.py
@ -2,6 +2,8 @@ from os import system, name
|
||||
from threading import Thread
|
||||
from time import sleep
|
||||
|
||||
from status import *
|
||||
|
||||
global http_out ; http_out = None
|
||||
def proxy_http(port):
|
||||
global http_out
|
||||
@ -24,13 +26,15 @@ def watch_http(port):
|
||||
run.start()
|
||||
|
||||
global http_out
|
||||
while True:
|
||||
st = status_check()
|
||||
while st:
|
||||
# Если команда вышла
|
||||
if http_out or not run.is_alive():
|
||||
run.join(1)
|
||||
http_out = None
|
||||
run = Thread(target=proxy_http, args=(port,))
|
||||
run.start()
|
||||
st = status_check()
|
||||
sleep(1)
|
||||
|
||||
def watch_serv(port):
|
||||
@ -38,10 +42,12 @@ def watch_serv(port):
|
||||
run.start()
|
||||
|
||||
global serv_out
|
||||
while True:
|
||||
st = status_check()
|
||||
while st:
|
||||
if serv_out or not run.is_alive():
|
||||
run.join(1)
|
||||
serv_out = None
|
||||
run = Thread(target=proxy_serv, args=(port,))
|
||||
run.start()
|
||||
st = status_check()
|
||||
sleep(1)
|
||||
|
Loading…
Reference in New Issue
Block a user