Jump to content

Recommended Posts

Antipova Anna
Posted

Дисклеймер. Обязательно к прочтению перед использованием материалов базы знаний Форума.

  1. Распакуйте архив на любом устройстве, имеющем доступ к порту OpenAPI сервера администрирования.
  2. Создайте текстовый файл с необходимыми хэшами, по умолчанию скрипт ожидает, что это будет hashes.txt в рабочей директории скрипта.
  3. В Windows запустите app_category_from_hashlist.exe в терминале (cmd или powershell) с указанным именем пользователя KSC, паролем и другими аргументами, если необходимо.
    В Linux/macOS запустите
    chmod +x ./app_category_from_hashlist.py
    ./app_category_from_hashlist.py --username <user> --password <password> <other arguments>
  4. Если категория с указанным именем уже существует, скрипт заменяет ее, если только не установлен флаг --append, тогда он сохраняет уникальные SHA256-хэши в категории.
    Список аргументов:
    -h, --help            show this help message and exit
     --internal            If set, the script tries to login with supplied credentials an internal KSC user
     --append              Chooses to append or overwrite the hash list, if category with specified name already exists
     --address [ADDRESS]   KSC server address, default is 127.0.0.1
     --port [PORT]         KSC OpenAPI port, default port is 13299
     --username [USERNAME]
                           KSC user name
     --password [PASSWORD]
                           KSC user password
     --hash_file [HASH_FILE]
                           path to the file with hashes, hashes.txt in the working directory, the file should contain only the hashes and separators, which can be anything except digits and letters A through F, case insensitive
     --category_name [CATEGORY_NAME]
                           Name of the category to be created, default name is "New application category"
  • 1 year later...
Posted
В 10.12.2023 в 02:00, Antipova Anna сказал:

Дисклеймер. Обязательно к прочтению перед использованием материалов базы знаний Форума.

  1. Распакуйте архив на любом устройстве, имеющем доступ к порту OpenAPI сервера администрирования.
  2. Создайте текстовый файл с необходимыми хэшами, по умолчанию скрипт ожидает, что это будет hashes.txt в рабочей директории скрипта.
  3. В Windows запустите app_category_from_hashlist.exe в терминале (cmd или powershell) с указанным именем пользователя KSC, паролем и другими аргументами, если необходимо.
    В Linux/macOS запустите
    chmod +x ./app_category_from_hashlist.py
    ./app_category_from_hashlist.py --username <user> --password <password> <other arguments>
  4. Если категория с указанным именем уже существует, скрипт заменяет ее, если только не установлен флаг --append, тогда он сохраняет уникальные SHA256-хэши в категории.
    Список аргументов:
    -h, --help            show this help message and exit
     --internal            If set, the script tries to login with supplied credentials an internal KSC user
     --append              Chooses to append or overwrite the hash list, if category with specified name already exists
     --address [ADDRESS]   KSC server address, default is 127.0.0.1
     --port [PORT]         KSC OpenAPI port, default port is 13299
     --username [USERNAME]
                           KSC user name
     --password [PASSWORD]
                           KSC user password
     --hash_file [HASH_FILE]
                           path to the file with hashes, hashes.txt in the working directory, the file should contain only the hashes and separators, which can be anything except digits and letters A through F, case insensitive
     --category_name [CATEGORY_NAME]
                           Name of the category to be created, default name is "New application category"

Есть возможность покажите рабочий скрипт для примера очень надо!

  • 6 months later...
Posted

Получилось ввести в работу скрипт? поделитесь как ?

Posted (edited)
1 час назад, IKa111 сказал:

поделитесь как ?

Что именно у Вас не получается? Можете показать вывод ошибки? Возможно, что неверно указываете данные для авторизации на "KSC".

Edited by durtuno
Posted

Почему-то не получается добавить хэши в уже существующий список. Новые создает без проблем. Выводит следующее:
0 True
{"PxgRetVal":"nqDKHV3o/bNwKgqAi2x1QBQ=="}
тут список хэшей из hashes.txt
{'PxgError': {'code': 1186, 'file': 'c:\\a\\c\\g_a9ez0wzv\\s\\product\\osmp\\ksc\\dev\\server\\fc\\fc_srv_impl.cpp', 'line': 1147, 'message': 'Object not found', 'module': 'KLSTD', 'subcode': 0}}
Команда выглядит так:
C:\Users\user\Desktop\Add_sha\app_category_from_hashlist.exe --append --address server.ru --username user --password password --category_name SHA256 --hash_file C:\Users\user\Desktop\Add_sha\hashes.txt

Posted
3 часа назад, GIB сказал:

Почему-то не получается добавить хэши в уже существующий список. Новые создает без проблем.

Да, в сценарии имеются ошибки.

Если имеется возможность отладить Python-сценарий, то нужно разобраться с циклом перебора категорий по ID (речь о "while category_id ...", почему-то/ кто-то решил, что эти самые ID должны начинаться с единицы, что не всегда является истиной + с табуляцией тоже надо поработать ) и функцией get_hash_list (вроде как, там функция всегда возвращает пустой список хэшей).

Posted (edited)

Чуть-чуть переписал Python-сценарий, доступен по ссылке.

Что подлежало изменению (пжлст., имейте ввиду, что первый опыт отладки Python)

  • изменён вывод на экран - выводятся только хэши, вывод запросов подавлен;
  • функция get_hash_list - не совсем понял, для чего там присутствовала двойная проверка вхождения хэша в категорию, из которой этот же хэш и был получен, поэтому обошёлся простым добавлением в список;
  • цикл "while category_id ..." перебирает 999 категорий, находит нужную, добавляет хэши и прерывается. Перебор указанного количества категорий может занять более длительное время, поэтому это количество при случае можно изменить. Максимальное "ID" категории можно получить из БД так, например:
    SELECT MAX(id)      
      FROM [KAV].[dbo].[v_fc_custom_list]

    В этой же таблице можно глянуть и № нужной категории, только зачем, тогда ведь смысл использования цикла пропадает 🙃

 

 

Edited by durtuno
Posted
21 час назад, durtuno сказал:

Если имеется возможность отладить Python-сценарий, то нужно разобраться с циклом перебора категорий по ID

Да, подправил и допилил под себя. С интерактивным вводом параметров запуска. Обкатал на боевом сервере. Если кому нужно, пишите, вышлю. Через пару недель выложу сюда. 

Posted
13 минут назад, GIB сказал:

С интерактивным вводом параметров запуска.

Мм, интересно, в чём профит?

13 минут назад, GIB сказал:

Через пару недель выложу сюда.

Выкладывайте, тема в закрепе, с ~4 тысячами просмотров, кому-то ведь это нужно.

Posted (edited)
15 минут назад, durtuno сказал:

Мм, интересно, в чём профит?

Просто для души
Попробую еще обработку md5 прикрутить.
Да и для ввода пароля лучше использовать getpass, а не вводить его в явном виде. 

Edited by GIB
Posted
1 час назад, durtuno сказал:

Выкладывайте, тема в закрепе, с ~4 тысячами просмотров, кому-то ведь это нужно.

 

https://ru.files.fm/u/tvtc293ge8

В терминале перейти в папку со скриптом и запустить командой python3 app_category_from_hashlist.py
С md5 не прокатило(

  • Thanks 1

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...