Загрузка...

[C#] code does not work with TitaniumWeb Proxy

Thread in C# created by Finik8 Apr 17, 2023. 133 views

  1. Finik8
    Finik8 Topic starter Apr 17, 2023 1 Jun 25, 2022
    Писал код для редиректа в браузере, но браузеры выдают такую ошибку, хотя я даже делал валидацию сертификата в коде вот код:
    Code

    public static ProxyServer proxyServer = new ProxyServer();
    public static void Start()
    {

    //proxyServer.CertificateManager.TrustRootCertificate(true);
    proxyServer.CertificateManager.CertificateEngine = CertificateEngine.BouncyCastle;
    var endpoint = new ExplicitProxyEndPoint(System.Net.IPAddress.Any, 8080, true);
    proxyServer.AddEndPoint(endpoint);
    proxyServer.ServerCertificateValidationCallback += OnCertificateValidation;
    proxyServer.BeforeRequest += OnRequest;
    //proxyServer.ClientCertificateSelectionCallback -= OnCertificateSelection;
    proxyServer.Start();
    Console.WriteLine("СЕРВЕР ЗАПУСТИЛИ!");

    }

    public static void Stop()
    {
    proxyServer.BeforeRequest -= OnRequest;
    proxyServer.Stop();
    Console.WriteLine("СТОПАНУЛ СЕРВАК!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
    }

    private static async Task OnRequest(object sender, SessionEventArgs e)
    {

    Console.WriteLine("Зашли в редирект");
    Console.WriteLine(e.HttpClient.Request.RequestUri.Host.ToString());
    var host = e.HttpClient.Request.RequestUri.Host.ToLower();
    var host_ip = e.HttpClient.Request.RequestUriString.ToLower();
    Console.WriteLine(host);
    Console.WriteLine(host_ip);

    if (e.HttpClient.Request.RequestUri.Host.ToString().Contains("vk.com"))
    {
    Console.WriteLine("Редиректаем на ЮТТТТТТТТТТТТТТТТТТТТТТТТТТТТТ");
    e.Redirect("https://youtube.com/");
    Console.WriteLine("РЕДИРЕКТНУЛИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИ");
    }

    }



    //static extern IntPtr GetForegroundWindow();

    private static Task OnCertificateValidation(object sender, CertificateValidationEventArgs e)
    {
    // игнорирование некоторых ошибок SSL-сертификата
    if (e.SslPolicyErrors == System.Net.Security.SslPolicyErrors.None)
    {
    e.IsValid = true;
    }

    if (e.SslPolicyErrors == System.Net.Security.SslPolicyErrors.RemoteCertificateChainErrors)
    {
    foreach (X509ChainStatus chainStatus in e.Chain.ChainStatus)
    {
    if (chainStatus.Status != X509ChainStatusFlags.RevocationStatusUnknown &&
    chainStatus.Status != X509ChainStatusFlags.NoError)
    {
    e.IsValid = false;
    }
    }

    e.IsValid = true;
    }

    //return false;
    return Task.CompletedTask;
    }
    [IMG]
     
  2. ChatGPT
    ChatGPT Apr 17, 2023 2250 Mar 14, 2023
    Finik8, возможно, проблема заключается в том, что вы используете ******-сервер для перенаправления запросов на другой сайт. Некоторые браузеры могут блокировать такие запросы из соображений безопасности.

    Попробуйте использовать другой метод перенаправления, например, использование JavaScript для перенаправления на другой сайт.

    Также, убедитесь, что вы используете последнюю версию библиотеки TitaniumWeb Proxy и что вы правильно настроили ******-сервер.

    Надеюсь, это поможет вам решить проблему.
     
  3. vtlstolyarov
    Ну как бы сертификаты и задумывались как защита от таких как ты - чтобы браузер поверил что это vk.com у тебя должен быть доверенный сертификат на этот домен.
     
    1. Finik8 Topic starter
      vtlstolyarov, как можно получить доверенный сертификат? каждой системе же выделяется сертификат, верно, может можно его как-то взять и использовать в проге для запросов?
    2. Finik8 Topic starter
      vtlstolyarov, насколько я понимаю, надо как-то добавить сертификат, сгенерированный TitaniumWeb Proxy, в доверенные сертификаты, но я не знаю, как сделать это программно и надо ли это делать. До этого, когда я первый раз запускал программу, у меня вылезло уведомление о новом сертификаты, и можно ли ему доверять. Но теперь, когда я запускаю прогу, ничего такого не вылазит
    3. vtlstolyarov
      Finik8, да, надо добавить сертификат ****** сервера в доверенные - это надо сделать только один раз, потому уже он находится в списке доверенных
Loading...
Top