Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to change home page titles and panel paths. #1570

Open
alexeyp0708 opened this issue Jan 5, 2025 · 5 comments
Open

Ability to change home page titles and panel paths. #1570

alexeyp0708 opened this issue Jan 5, 2025 · 5 comments

Comments

@alexeyp0708
Copy link

alexeyp0708 commented Jan 5, 2025

Hello.
I would like that when visiting the home page "https:/my.site:8000/" it would be possible not only to change the page template, but also the response code and headers. For example, my home page should display a 403 code.
If the DPI for analysis is visited for some reason at https:/my.site:8000/, a page with code 200 is more likely to be assessed as fake. Identical headers (by default) will also make it easier to analyze the fake page. For example, if you change the content type (content-type), you can make the page unique, which will make it difficult to analyze

Also, standard paths and content may indicate that this is a VPN service with the marzdam panel. ( /api/, /statics/, /sub/ ). This is what I indicated here. #71

Also Marzban shows the header "server: uvicorn' This is not correct.

How this can happen (circumstantial evidence):

  • DPI service sees suspicious client traffic on IP
  • DPI service analyzes which IP ports the client goes to and checks them.
  • DPI service calculates which domains are bound to an IP (via DNS or certificate)
  • When checking port domain:8000 (visits a page as a user), the DPI service checks whether the page is fake and whether the headers match the Marzdam server (and other servers).
  • checks standard paths (/dashboard/, /api/ ...) and the presence of similar responses with responses from the Marzdam server.
  • As soon as the DPI service is more likely to establish that it is a VPN, then the IP will be graylisted. And then the traffic can either be slowed down by the provider or blocked by IP.
    IP address will not be blocked immediately. Providers will work for a long time in the mode of accumulation of information.

At the moment, this can be eliminated by an intermediate proxy(example: nginx), which requires additional settings.

@alexeyp0708
Copy link
Author

alexeyp0708 commented Jan 5, 2025

https://github.com/Gozargah/Marzban/blob/ee55da10dbbdbff37c00623da77d1fe068f27057/app/routers/home.py#L12C5-L12C47
I’m not a Python expert, but as far as I understand, you can use a simple code to indicate the status of the home page.
return render_template(HOME_PAGE_TEMPLATE), HOME_STATUS_CODE

.env

HOME_STATUS_CODE=403

@M03ED
Copy link
Collaborator

M03ED commented Jan 5, 2025

if your this big and sell services as bulk and you are scared firewall find your server with this little things , you can just close xray ports on your master server and just use node for connection
also in future we will remove xray from master so you don't need to be worried about this

@alexeyp0708
Copy link
Author

@M03ED
if your this big and sell services as bulk and you are scared firewall find your server with this little things
I don't sell anything to anyone.
I just noticed and pointed out obvious things.
It is your right not to take this into account.

@M03ED
Copy link
Collaborator

M03ED commented Jan 5, 2025

@M03ED
if your this big and sell services as bulk and you are scared firewall find your server with this little things
I don't sell anything to anyone.
I just noticed and pointed out obvious things.
It is your right not to take this into account.

And I'm telling you this doesn't matter because firewall don't seek to find panels, they try to xray connection

@alexeyp0708
Copy link
Author

And I'm telling you this doesn't matter because firewall don't seek to find panels, they try to xray connection

he DPI system is built on more than just a firewall.
Traffic will go through the firewall.
Only based on the traffic of an ordinary user, the provider can analyze traffic by IP and ports at any time. And they are always visible in TCP/UDP. And this does not require the participation of a firewall.
If the analysis determines that the IP traffic is suspicious (For example, all the user’s traffic in 50-90% of cases goes through it, or a foreign location of the traffic is not detected), then domain names are established by IP. Next, the content analysis of domain names starts.
This method will work if DPI has exhausted all possibilities.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants