Обновить

Комментарии 8

нет гарантий, что полученные бинарные файлы не несут вредоносный код.

всегда думал, что добросовестные авторы сначала проверяют все пути, потом предлагают идти по ним другим.

очепятки:
скачать компиляторОВ
(доступ к нему ограниЦен)

Мой мс дефендер ничего не нашел в скаченных бинарниках, но давать свои гарантии для всех репозиториев на веки вечные было бы крайне неосмотрительно с моей сороны. Я их не контролирую.

Опечатки исправлю, спасибо.

Вариант с прокси, кстати вполне рабочий и безопасный с этой точки зрения

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

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

В момент логина сервер кьюта проверяет ваш айпишник (думаю, это очевидно). Давайте посмотрим что он присылает в хорошем и плохом случаях:

// bad
{
	"status": "success",
	"code": "ip_blocked",
	"message": "Installation from this IP address is not allowed.",
	"properties": {
		"offline-installation-creation": {
			"allowed": false,
			"message": "Offline installation creation not supported"
		}
	}
}

// good
{
	"status": "success",
	"code": "success",
	"message": "Installation preconditions ok, installation can proceed!",
	"properties": {
		"offline-installation-creation": {
			"allowed": false,
			"message": "Offline installation creation not supported"
		}
	}
}

Как видно, отличаются лишь 2 поля — code и message, причем скорее всего установщик проверяет только code (не тестил это). И теперь все, что нам надо сделать — это подсунуть «хороший» ответ сетевому запросу. Сам запрос выглядит так:

https://iapi.qt.io/api/v2/installations-validate?<некие параметры>

Понадобится любой прокси-софт, который умеет расшифровывать https и проводить манипуляции над ответом, я протестил на Charles Proxy и macOS.

Например, можно воспользоваться функцией map local — взять ответ из локального файла. Просто создаем на компе файлик с «хорошим» ответом, маппим вышеуказанный запрос, в поле query (это там, где <некие параметры>) ничего не пишем, чтобы работало с любыми параметрами. И вуаля — онлайн установщик позволяет нам залогиниться и попасть на страницу выбора пакетов.

P.S. Есть вероятность, что скачать файлы не получится из-за того же геоблока, но это можно обойти, указав зеркало при запуске онлайн устновщика в параметре командной строки --mirror, список зеркал есть в статье.

+1

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации