Странный CERT_DOMAIN в RealiTLScanner

всем привет, имеется self-hosted VPN на VLESS + REALITY с мимикрией под hbo.com. при попытке прозвонить мой IP через RealiTLScanner, вылазит какой-то вообще левый домен не имеющиий никакого отношения к HBO (наверное). в чём может быть проблема или всё так и должно быть? настройка инбаунда и результат скана на скринах. Flow у клиента, естественно XTLS RPRX VISION
image
image

curl -v --resolve hbo.com:443:<ваш IP> https://hbo.com

А это команда хорошо отрабатывает?

ну вроде как да

λ ~/ curl -v --resolve hbo.com:443:<IP_REMOVED> https://hbo.com
* Added hbo.com:443:<IP_REMOVED> to DNS cache
* Hostname hbo.com was found in DNS cache
*   Trying <IP_REMOVED>:443...
* Connected to hbo.com (<IP_REMOVED>) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
*  CAfile: /etc/ssl/certs/ca-certificates.crt
*  CApath: /etc/ssl/certs
* TLSv1.0 (OUT), TLS header, Certificate Status (22):
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS header, Certificate Status (22):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS header, Finished (20):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.2 (OUT), TLS header, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=hbo.com
*  start date: May 18 17:15:33 2024 GMT
*  expire date: Jun 19 17:15:32 2025 GMT
*  subjectAltName: host "hbo.com" matched cert's "hbo.com"
*  issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign Atlas R3 DV TLS CA 2024 Q2
*  SSL certificate verify ok.
* Using HTTP2, server supports multiplexing
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* Using Stream ID: 1 (easy handle 0x557aa4481eb0)
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
> GET / HTTP/2
> Host: hbo.com
> user-agent: curl/7.81.0
> accept: */*
>
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
< HTTP/2 308
< server: Varnish
< retry-after: 0
< location: https://www.hbo.com/
< accept-ranges: bytes
< date: Thu, 26 Dec 2024 10:36:13 GMT
< via: 1.1 varnish
< x-served-by: cache-fra-eddf8230081-FRA
< x-cache: HIT
< x-cache-hits: 0
< x-timer: S1735209374.538981,VS0,VE0
< set-cookie: countryCode=DE; Domain=.hbo.com; Path=/; SameSite=Lax
< set-cookie: stateCode=HE; Domain=.hbo.com; Path=/; SameSite=Lax
< set-cookie: geoData=frankfurt am main|HE|60313|DE|EU|100|broadband|50.110|8.680; Domain=.hbo.com; Path=/; SameSite=Lax
< x-gep-countrycode: DE
< strict-transport-security: max-age=31536000;
< normalized-language: en
< alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
< content-length: 0
<
* Connection #0 to host hbo.com left intact

Да вроде все в порядке, по крайней мере так проверяют корректность реалити если не ошибаюсь. Можно попробовать еще в файл hosts прописать IP вашего VPS и url сайта. Если в браузере откроется, то настроено все правильно

Вот тут обсуждалось что-то похожее, связали с проблемой DNS, возвращает неверный сертификат для files.pythonhosted.org

Выполните dig hbo.com для интереса

т.е. если РКН захочет пробить мой сервер, то там его будут ждать всё-таки валидные серты от HBO?

λ ~/ dig hbo.com

; <<>> DiG 9.18.28-0ubuntu0.22.04.1-Ubuntu <<>> hbo.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48481
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;hbo.com.                       IN      A

;; ANSWER SECTION:
hbo.com.                295     IN      A       151.101.65.55
hbo.com.                295     IN      A       151.101.129.55
hbo.com.                295     IN      A       151.101.1.55
hbo.com.                295     IN      A       151.101.193.55

;; Query time: 10 msec
;; SERVER: 10.255.255.254#53(10.255.255.254) (UDP)
;; WHEN: Thu Dec 26 14:24:15 EAT 2024
;; MSG SIZE  rcvd: 100

Не должно их смущать, ресолвится на ваш адрес все как нужно. А вы curl и dig где выполняли, на своей машине или на VPS где запущена панель?

На всякий случай упомяну, что в случае серьезного Active Probing озаботится только ресолвом хоста это не все. Должны совпадать при сканировании порты, все что открыто открыто так же, что закрыто, аналогично. Реалити работает на порте 443, но если например сайт под который вы мимикрируете работает на 80 порту, то его тоже придется держать открытым и настроить iptables, чтобы трафик с него гоняло на реальный сервер hbo

на своей. спасибо за статью, ознакомлюсь)

А попробуйте на самом сервере, если панель конечно не в докере каком-нибудь. Может он там вернет лишний серт, а панель просто подхватывает последний что находит

ну вообще панель в докере, это может быть проблемой?

а, ну да

/app # dig hbo.com
sh: dig: not found
/app # apt install dig
sh: apt: not found
/app #

Ну в теории можно туда поставить все, но геморно. Оставьте тогда как есть, главное в остальных случаях ресолвится

т.е. в целом всё норм?

проверил порты, собственно, у HBO открыты 80 и 443, надо будет тоже открыть))

огромное спасибо за оказанную помощь!

Норм. Откройте и настройте прероутинг, в статье написано как это можно сделать. Ну и 22 порт надеюсь у вас будет где-то повыше)

окей))
порт естественно сильно выше, но я его там как-нибудь сокрою тоже