Ответы пользователя по тегу Базы данных
  • Какие базы данных используются для хранения логов?

    h4r7w3l1
    @h4r7w3l1
    Спросите для начала какой формат логов, Вы же не думаете что это просто строки?

    https://messagetemplates.org/

    Ознакомитесь с популярными практиками, проблемами и подходами, выберите подходящий под вашу задачу/ЯП лог провайдера. (в целом все structured logs это довольно универсальная штука, и запихнуть ее в тот-же elk не должно вызвать проблем)

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

    Далее уже вопрос об их кол-ве, сроке хранения и тому подобное. Прежде чем "куда", узнайте "как" это делать.
    Ответ написан
    Комментировать
  • Во что конвертировать огромный, сотни ГБ, CSV-файл для максимально быстрого чтения по «ключу»?

    h4r7w3l1
    @h4r7w3l1
    apache parquet

    колоночный тип в бинарном формате, решение для экономичного хранения данных в частности csv таблицы.
    Компрессия 1тб csv исходных порядка 80-85% = ~120гб в parquet
    Скорость чтения ~ х34 раза быстрее чем raw csv файл
    Благодаря колоночному типу возможно делать выборки без чтения полностью файла
    0*2hvPbX_y6u5389E3

    но это решение под хранение / чтения данных, на счет тонкостей работы с данным форматом данных смотрите документацию, тонкостей много, возможно категорически буду противоречить поставленной задаче.
    Ответ написан
    Комментировать
  • Какие есть Open source решения для создания интерфейса позволяющего создавать различного рода отчётов и заготовленных источников информации?

    h4r7w3l1
    @h4r7w3l1
    Бесплатное решение кроссплатформенное, в комплекте идет тестовый набор данных, выборки, дэшборды, сохранение запросов, подключение нескольких бд, возможность предоставить доступ коллегам с гибкими настройками приватности.
    https://www.metabase.com/
    Ответ написан
    Комментировать
  • Почему SQL-инъекции - это опасно?

    h4r7w3l1
    @h4r7w3l1
    Sql Injection это не вершина "опасности". По CVE score порядка 6-7.
    Конечно же все зависит от конфигурации ПО, привилегий, обновлений и т.д.
    Но стоит учесть тот факт, основная масса уязвимостей типа sql inj все же не union с error base, в 80% blind, что затруднит проведение эксплуатации, а если админ не будет спать в одном ботинке, то вовсе исключить, и исправить.
    На получение структуры может уйти сутки двое. Не будем забывать еще и про WAF'ы, cloudflare, incapsula.

    Хорошо, даже в случае спящего админа, допустим было получены записи с привилегированными запясями ресурса. Опять же вопрос к разработчику.. С md5,sha1 все ясно, а будь в blowfish хотябы 8мизначный пароль даже прописью, такой фактор обычно просто откладывается, ибо соблюдая методы минимальных парольных политик и шифрования может подарить безопасность довольно на долго (конечно не исключая плавновую смену паролей).

    Предположим цель жизни было скомпрометировать сервис, и бедолага потратил порядка недели на раскрутку скули, обходы waf, и перебор хеша админа. Надеюсь же php настроен адекватно, и нету всяких привелегий у юзера mysql типа grand dba. Но и даже в таком случае можно уберечь конфеденциальные данные, даже при условии полного слива БД. Шифруйте важные данные, храня ключ не в бд. Такой best практайс встречаеться довольно редко, обычно на гигантских ресурсах, да еще с "вкусной" для злоумышленников сферой деятельности.
    Да вприцнипе как пример подобного - стандарт хранения кредитных карт, если админ желает их логировать. braintree и куча других решений, да еще с мощным мониторингом, и крутыми фичами.

    По сути довольно тривиальные шаги если позволяет специфика и нагрузки ресурса.

    Но все же черт страшен как его малюют) У талантливого хакера будет на один вектор атаки всегда больше чем примененные средства защиты и фикса. Вообще не стоит забывать про еще несколько десятков куда посерьезней уязвимостей чем инъекции. И понимать что впорос только во времени. Рано или поздно появиться лазейка, не учтет админ, или очередная 0day.. И плакали все труды по обороне
    Ответ написан
    Комментировать