Токены из заголовков XHTTP сохраняются открытым текстом в profiles.json
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
Línea de trabajo
Read XhttpExtraValidator.cs:77–96 and UriParsers.cs:22–25 to trace how XHTTP headers enter Profile.Options[Keys.XhttpExtra], then inspect ProfileStore.Subscriptions.cs:69–84 for SourceOptions copying. Map the ISecretStore and config generation or export paths, including migration of existing Options and SourceOptions. Done means imported transport credentials are absent from profiles.json and are available through ISecretStore when generating configs or explicitly exporting.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Приоритет P0 · milestone 0.4.1
Заголовки транспорта XHTTP могут содержать bearer-токен или cookie. При импорте они попадают в обычные параметры профиля и оказываются вне ISecretStore.
Воспроизведение
- Импортировать синтетическую ссылку
vless://[email protected]:443?type=xhttp&extra=%7B%22headers%22%3A%7B%22Authorization%22%3A%22Bearer%20audit-synthetic%22%7D%7D. - Сохранить профиль в изолированном каталоге.
- Открыть profiles.json и найти
audit-synthetic. При импорте подписки значение сохраняется также в исходных параметрах для обновления.
Причина и доказательство: XhttpExtraValidator.cs:77–96 принимает строковые headers. StreamOptions.Apply в UriParsers.cs:22–25 сохраняет весь JSON в Profile.Options[Keys.XhttpExtra]. Хранилище сериализует Options, а ProfileStore.Subscriptions.cs:69–84 копирует их в SourceOptions. Xray использует эти заголовки для транспорта. Соединение для проверки не требуется.
Ожидаемо: транспортные учётные данные доступны через ISecretStore и отсутствуют в открытом документе профилей.
Направление исправления: вынести секретные заголовки или весь extra в секретное хранилище, мигрировать старые Options и SourceOptions и собирать параметры при генерации конфига или явном экспорте.
Связано: #261.
Аудит ffa65648867139f9e45c15f4b635a83c1ff52c1b.
- Lenguaje dominante
- C#
- Estrellas
- 5
- Forks
- 1
- Merge medio
- 23 min
- PR fusionados (30 d)
- 144
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de endercodezz/BYDLO
-
bug github_actions
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
endercodezz/BYDLO#336 ·
Los mantenedores suelen responder en 1 día
-
bug network
Dificultad 4/5 3-5 días Aptitud para principiantes 63/100
endercodezz/BYDLO#343 ·
Los mantenedores suelen responder en 1 día
-
bug network
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
endercodezz/BYDLO#342 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 53/100
endercodezz/BYDLO#341 ·
Los mantenedores suelen responder en 1 día
-
bug network
Dificultad 4/5 3-5 días Aptitud para principiantes 56/100
endercodezz/BYDLO#340 ·
Los mantenedores suelen responder en 1 día
Todos los issues de endercodezz/BYDLO
Issues similares
-
needs-area-label
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
SubtitleEdit/subtitleedit#16638 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
sebastienros/jint#4449 ·
Los mantenedores suelen responder en 1 día
-
clawsweeper:bulk-filed clawsweeper:needs-security-review clawsweeper:no-new-fix-pr clawsweeper:source-repro impact:security issue-rating: 🦞 diamond lobster P2
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
openclaw/openclaw-windows-node#2010 · 2 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día