Перейти к содержанию

Проблема с самоподписанными сертификатами KlAkOAPI


Рекомендуемые сообщения

Хочу создать программу для автоматизации работы с KSC c помощью KlAkOAPI при запуске проверочного кода для загрузки информации об обновлениях постоянно выходит ошибка о использовании самоподписанного сертификата, которую не получается убрать, как можно решить данную проблему?

Вот сам код программы:

 

from KlAkOAPI.AdmServer import KlAkAdmServer
from KlAkOAPI import Updates
from datetime import timedelta

import urllib3
import ssl  # Импортируем модуль ssl
import json

 

username = 'KLAPI'
password = '1234QwZ'

KSC_LIST = {
    'WINDOWS': 'https://127.0.0.1:13299'
}

def ConnectKSC(ip):
    """Подключается к серверу Kaspersky Security Center."""
    while True:
        try:
            connect = KlAkAdmServer.Create(ip, username, password, verify=False, vserver='')

            if connect:
                print('Успешно подключился к {}'.format(ip))
            else:
                print('Ошибка подключения к {}'.format(ip))
                return None  # Возвращает None, если подключение не удалось. Не завершает программу.
            return connect
        except Exception as e:
            print(f"Ошибка подключения: {e}")
            return None # Возвращает None, если подключение не удалось

def get_status_hosts(server, ip):
    """Получает и печатает информацию о статусе обновлений для сервера KSC."""
    urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
    params = []  #  params не используется

    if server is not None:
        try:
            # Создаем SSL-контекст, который не проверяет сертификаты
            context = ssl.create_default_context()
            context.check_hostname = False
            context.verify_mode = ssl.CERT_NONE

            # Модифицируем объект сессии для отключения проверки SSL
            server.session.verify = False  # Отключаем проверку глобально для сессии
            server.session.cert = None  # Удаляем существующий сертификат

            straccessor = Updates.KlAkUpdates(server).GetUpdatesInfo(pFilter=params)  # Нет аргумента ssl_context

            ncount = straccessor.RetVal()

            if ip == KSC_LIST['WINDOWS']:
                if 1 in ncount:  # Проверяем, что индекс существует
                    data = ncount[1]
                    print('')
                    print('KSC ======== [ {} ] ========'.format(KSC_LIST['WINDOWS']))
                    print('Дата создания: {}'.format(data['Date'] + timedelta(hours=3)))
                    print('Дата получения: {}'.format(data['KLUPDSRV_BUNDLE_DWL_DATE'] + timedelta(hours=3)))
                    print('============================')
                else:
                    print("Не удалось получить данные для WINDOWS KSC")

            else:
                print(f"Неизвестный IP-адрес KSC: {ip}")  # Добавлена проверка на некорректный IP-адрес KSC

        except Exception as e:
            print(f"Ошибка при получении информации об обновлениях с {ip}: {e}")
    else:
        print('Ошибка доступа к серверу')  # Это сообщение может вводить в заблуждение, если подключение к серверу не удалось во время ConnectKSC.

if __name__ == '__main__':  # Исправлена ошибка 'name' на '__name__'
    for ip in KSC_LIST.values():
        server = ConnectKSC(ip)
        if server:  # Продолжаем только если подключение успешно
            try:
                get_status_hosts(server, ip)
            except Exception as e:
                print(f"Ошибка в get_status_hosts для {ip}: {e}")
        else:
            print(f"Не удалось подключиться к {ip}. Пропускаем проверку статуса обновлений.")  # Добавлено сообщение, если подключение не удалось.

Ошибка которая появляется при запуске кода:

 
Успешно подключился к https://127.0.0.1:13299
C:\Users\user\PycharmProjects\ksc\.venv\Lib\site-packages\urllib3\connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host '127.0.0.1'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
Не удалось получить данные для WINDOWS KSC

Process finished with exit code 0
 

 

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • Sandynist
      Автор Sandynist
      Добрый день! 
       
      Каждый раз при открытии Алика (https://aliexpress.ru/) такая вот картинка.
       
      Событие: Обнаружено SSL-соединение c недействительным сертификатом Тип пользователя: Не определено Имя приложения: opera.exe Путь к приложению: C:\Users\Home7\AppData\Local\Programs\Opera Компонент: Интернет-защита Описание результата: Запрещено Имя объекта: rap.skcrtxr.com Причина: Этот сертификат или один из сертификатов в цепочке устарел.  И непонятно — это что? И что с этим всем делать?

    • Анди25
      Автор Анди25
      День добрый,
       
      Сменился сервер и имя, из бэкап восстановил, но все сертификаты естественно указывают на прежний.
      Подскажите как сертификат сменить непосредственно на Kaspersky Security Center (не для работы мобильных клиентов и web, они легко меняются через mmc)
       
      Нашел описание по утилите klsetsrvcert, но чего-то не хватает, не проходит создание.
      "C:\Program Files (x86)\Kaspersky Lab\Kaspersky Security Center\klsetsrvcert.exe" -t C -i C:\0\klserver.cer -p testpass -o NoCA
    • Couita
      Автор Couita
      Здравствуйте!
      Файл troubleshoot.exe из папки Касперского ничего не делает, при попытке запустить (через Касперского и вручную) ни к чему не приводит. Окно UAC появляется о том что пытаюсь открыть, нажимаю что согласен, и ничего далее.

    • MiStr
      Автор MiStr
      Здесь можно подать заявку на получение сертификатов магазина kaspersky>merch. Правила и обсуждение - в соседней теме. В этой теме принимаются только заявки! Любое другое обсуждение запрещено!
       
      После оставления заявки необходимо сразу отправить личное сообщение на имя @MiStr, @dkhilobok и @Deadman, в котором продублировать текст заявки и написать свои ФИО (полностью, без сокращений). Все повторные заявки на получение сертификата необходимо отправлять в рамках ранее созданной переписки и не создавать новую.
    • Holo_Yolo
      Автор Holo_Yolo
      Здравствуйте, проблема такая, после удаления майнера и процедуры лечения всё вернулось в норму, но перестала обновляться Windows 
      Так же были проблемы с запуском некоторых команд в командной строке, но их исправил путём удаления из реестра 
      Фото ошибки прилагаю 

×
×
  • Создать...