Задать вопрос
  • Можно ли вывести градацию уязвимостей?

    Можно классифицировать по шкалам:
    1. Последствия эксплуатации уязвимости
    2. Сложность эксплуатации уязвимости

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

    Ну и да, самое уязвимое звено - это люди и очень часто без злого умысла.

    Именно поэтому нужно вести учёт всех выданных доступов, проверять все возможные утечки и перевыпускать все ключи/пароли, если появляется риск утечки. Ну и когда сотрудник уволен - никаких доступов у него быть уже не должно.
    Сюда же можно отнести все эти инструктажи и проверки на то, поддаётся ли сотрудник фишингу.
    Сюда же курсы по разработке безопасного ПО для разработчиков.
    Сюда же DevSecOps.
    Ответ написан
    2 комментария
  • Можно ли вывести градацию уязвимостей?

    CityCat4
    @CityCat4 Куратор тега VPN
    Жил да был черный кот за углом...
    Предполагаю что самое слабое звено - это то что всегда торчит наружу, т.е. сайт.

    Нет.
    Самое слабое звено - это человек.

    Сайт не обижается, что ему не повысили зп.
    Сайт не мечтает "Я вам всем покажу!"
    Сайт не оставляет закладок на неавторизованный доступ при увольнении.

    Хотите живой пример? Настоящий, не придуманный?

    Контора N увольняет админа Васю и нанимает вместо него админа Петю. Петя ответственно меняет рутовые пароли на всех серверах, но в детали их настройки не погружается так как слишком много нужно проаудировать. Через несколько месяцев Петя замечает, что вдруг примерно несколько дней назад почта директора стала форвардиться на некий адрес на гмыле.
    Петя форвард прибил, провел форензику и выяснил, что Вася перед увольнением оставил закладку - демона pppd, к которому можно было подключиться терминалом, что Вася и сделал (last это четко показал). Рута у него уже не было, но нагадить Вася все-таким смог, создав запись о перенаправлении почты в postfix, который использовал mysql.
    В итоге все внешние серваки времен Васи были снесены нафиг и перестановлены.
    Ответ написан
    1 комментарий
  • Можно ли вывести градацию уязвимостей?

    hint000
    @hint000
    у админа три руки
    Человеческий фактор - всегда главная угроза.
    Предполагаю что самое слабое звено - это то что всегда торчит наружу, т.е. сайт.
    Сам по себе сайт не создаёт дыру. Её создаёт "человеческий фактор" -
    • админы, которые что-то неправильно настроили,
    • программисты, которые наделали ошибок,
    • тестировщики, которые пропустили ошибки,
    • менеджеры, которые дали неправильные распоряжения админам, урезали сроки тестирования, урезали бюджет на железо и ПО для ИБ, проигнорировали предупреждения подчинённых, не провели аудит,
    • рекрутеры, которые нарекрутили всех этих аболтусов. :)
    Всё это - человеческий фактор, а не только какой-нибудь бухгалтер, попавшийся на фишинг.
    Ответ написан
    Комментировать
  • Почему тормозит виртуальная машина в Proxmox?

    @rPman
    убери zfs из конфига, raid можно было бы сделать штатным mdadm ну а для поиграться тебе хватит btrfs с тем же функционалом (сомневаюсь что ты коснешься того что не доделали в нем) но значительно лучше работающем на слабом железе.

    zfs нужно МНОГО оперативной памяти, даже без онлайн дедупликации

    ну и zfs очень плохо работает с hdd, просто отвратительно. Полагаю те кто запускает его на дорогих raid контроллерах со своим многогигабайтовым кешем, этого не замечают, но обычные 'смертные' видят все с первой секунды.
    Ответ написан
    6 комментариев
  • Существуют ли на android экраны блокировки с двойным дном?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Называется "второе рабочее пространство": https://androidinsider.ru/polezno-znat/chto-takoe-...
    Ответ написан
    3 комментария
  • Как правильно прописать IP?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Я бы
    1. Убрал неуправляемый коммутатор и соединил серверы напрямую (необязательно, но зачем лишняя фигня в сети?)
    2. Поставил на обоих серверах гигабитные интерфейсы в автополучение адреса
    3. Отключил на 100-мегабитных картах NetBIOS over TCP/IP (хотя это уже зависит от того, какие ресурсы и через какие пространства имён нужны в сети)
    4. Дождался бы самовыделения APIPA-адресов (169.254) на обоих серверах
    5. Прописал перекрёстно полученные адреса и соответствующие им имена серверов в HOSTS и в LMHOSTS

    Итоги:
    1. Серверы доступны друг другу по имени
    2. При обращении по имени связь будет устанавливаться через этот канал (через гигабитные карты), а не через 100-мегабитные карты
    3. Гарантированно не будет пересечения по диапазону адресов с другими системами в сети
    Ответ написан
    1 комментарий
  • Крон внутри докера?

    karabanov
    @karabanov Куратор тега Docker
    Системный администратор
    Лучше не надо

    UPD
    Появилось некое решение supercronic - ещё не тестировал, но судя по описанию выглядит перспективно.
    Ответ написан
    Комментировать
  • Крон внутри докера?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Не нужно "именно внутри контейнера".

    Делайте отдельный контейнер, запускайте с хоста или юзайте оркестратор, в котором есть CronJob.
    Ответ написан
    Комментировать
  • Можно ли работать с БД laravel напрямую?

    delphinpro
    @delphinpro Куратор тега Laravel
    frontend developer
    Ну а почему нет?
    В ларке не так много штатных таблиц. Вспоминается только sessions, access_tokens и jobs. Все остальные вы создается сами под свои нужды, сами настраиваете связи между ними.
    Ответ написан
    2 комментария
  • Зачем использовать nginx для статичных файлов?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Пришел момент задеплоить простенький учебный проект и начал гуглить как это сделать.

    Для учебного проекта вполне хватит реализации без Nginx (если это не обязательное требование), покажите Node.js проект преподу, получите оценку и забудете. А вот для реально рабочего проекта Nginx предлагает следующие преимущества:
    1. Обратный прокси с мощным функционалом из коробки.
    2. Быстрое кэширование, балансировка нагрузки и удобное масштабирование.
    3. Nginx быстрее и стабильнее, чем Node.js для статических файлов, что позволяет сильно оптимизировать расходы на серверную инфраструктуру.
    4. Огромное сообщество и множество мануалов для настройки, с множеством различных кейсов, под каждую, даже самую дикую задачу.

    Node.js можно заменить, например на Python или PHP - настройка Nginx практически не изменится. Затем сделать из Node.js, Python и PHP - 3 отдельный приложения, "связать одним Nginx" и... настройка Nginx практически не изменится.

    Рекомендую изучить - Why should I use a Reverse Proxy if Node.js is Pro...

    Benchmark:
    1*q0NSQmkY_-dQ_EbeJu5Rlw.png
    Ответ написан
    1 комментарий
  • Зачем использовать nginx для статичных файлов?

    ky0
    @ky0 Куратор тега Nginx
    Миллиардер, филантроп, патологический лгун
    Попробуйте нодой отдавать статику потоков в сто и посмотрите, как оно сожрёт всё вокруг - память, процессор, диски...
    Ответ написан
    1 комментарий
  • Какие есть хорошие ресурсы для изучения Docker для Golang?

    @Araya
    Никакой связи нет между докером и разбиением на слои.
    Найди любой хороший проект, а как подключаться к базе уже другой вопрос, go приложение не знает ни о каком докере.
    Ответ написан
    Комментировать
  • Куда расти ИБ специалисту?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    Жил да был черный кот за углом...
    Думаю обзавестися сертификатами по ИБ, подтянуть инглиш и идти на upwork

    Думаю, что на апворке ты нахрен никому не впилился. Тем более, что в РФ апворк давно уже не работает (а если ты не в РФ - то довольно глупо спрашивать здесь).
    Получать его не хочу, слишком долго и слишком мало мне это даст.

    Ага, типичный продукт пятилетней давности. Когда палка и пионер, когда апворк лежа под пальмой... С разморозкой, человече! Мир давно уехал черт-де куда, а ты и не заметил...

    В ИБ, где все строго и регламентировано, в ИБ, где как правило ответственность делегируется (потому что не
    можно управлять системой, будучи внутри ее) - тебе никогда не вырасти никуда с подходом
    нет высшего образования. Получать его не хочу, слишком долго

    Вышка - это такой тест на способность самостоятельного решения задачи. Знания, которые при этом типо получаются - вторичны, хотя некоторые пригождаются. Но в основном вышка - это про умение учиться :) Да-да, вышка учит учиться и не более того. Не одолел - ну вот провалил первый тест на профпригодность. В ИБ, где люди как правило работают на доверии, таких точно не берут (ну разве что в крупных конторах на самые низовые должности)
    Могу написать скрипты для PowerShell и Bash, но с chatGpt

    То есть "освоил Ctrl-C/Ctrl-V, но смысла не понимаю, ибо абизьян
    В целом, могу поднять и настроить любую прогрумму или сервер на Win и Unix.

    По данному заявлению сразу можно сказать, что уровень джуна не преодолен.
    Год не выпускаю из рук ноутбук с KaliLinux,

    Ты ничего не говорил, мы ничего не слышали. Никогда не говори про это в серьезной компании - оборжут и затроллят
    Думаю, что как сисадмин Windows/Linux я почти Middle,

    Ты ошибаешься :)
    Ответ написан
    16 комментариев
  • Как посчитать количество пересечений с помощью метода filter?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Решим задачу в общем виде - сделаем функцию, находящую количество совпадающих элементов у любых итерируемых объектов. Причём под совпадением будем понимать не обязательно непосредственное равенство (оставим это как вариант по умолчанию), а равенство некоторых производных значений. Так что к чёрту filter (а ещё Safari - говорят, яблочные уроды пока не реализовали поддержку методов итераторов; впрочем, сделать обычный for...of вместо reduce не проблема):

    function countIntersections(data1, data2, key = n => n) {
      const getKey = key instanceof Function ? key : n => n[key];
      const keys = new Set(Array.from(data2, getKey));
      return data1[Symbol.iterator]().reduce((acc, n) => acc + keys.has(getKey(n)), 0);
    }

    В вашем случае применять так: const result = countIntersections(newWord, glas);.

    Другие примеры использования:

    countIntersections(Array(7).keys(), Array(4).keys()) // 4
    countIntersections('abCdE', 'ACe', n => n.toLowerCase()) // 3
    countIntersections([ { id: 1 }, { id: 2 }, { id: 3 } ], [ { id: 3 } ], 'id') // 1
    Ответ написан
    Комментировать
  • Google Chrome блокирует скачивание файла. Возможно ли отключить?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Вручную можно сделать через настройку "Разрешить сайтам показывать небезопасный контент" с указанием ссылки на web ui, но не понимаю как это можно реализовать в коде.

    Создайте профиль браузера, разрешите что нужно, затем запускайте selenium под этим профилем. Это костыль, но менее костыльный, чем другой.
    Ответ написан
    2 комментария
  • В чем разница ядер Линукс?

    Да ни в чём. Все одинаковые.
    Ответ написан
    Комментировать
  • Как преобразовать сайт в приложение на iOS бесплатно?

    alsolovyev
    @alsolovyev
    ¯\_(ツ)_/¯ Enjoy life, Eat well & Laugh often
    Изучайте Progressive web app
    Progressive Web App (PWA) — это веб-приложение, которое сочетает возможности сайтов и мобильных приложений. Оно работает в браузере, но при этом может устанавливаться на устройство как приложение, работать офлайн, поддерживать push-уведомления и обеспечивать быстрый отклик за счёт кэширования.
    Ответ написан
    Комментировать
  • Правильная ли архитектура БД?

    1. Я бы ещё раз подумал над неймингом
    2. У тебя тут в каждой таблице дублируются колонки названий для разных языков. Возможно есть смысл сделать отдельную таблицу для переводов разных строчек - по крайней мере так будет проще в будущем новые языки вводить + всё будет централизованно. Это на подумать.

    3. Возможно есть смысл добавить ещё историю изменений, но это на подумать

    4. Не уверен, действительно ли нужно order status как таблицу делать. Администратор должен иметь возможность добавлять новые статусы? Тогда нужно ещё добавлять таблицу с правилами переходов между статусами, чтобы в коде не хардкодить айдишники.

    5. Немного подумать. А всегда ли будет именно доставка еды? Не захочешь ли ты добавить самовывоз?

    6. Зачем в cart product created at и modified at?
    Я могу догадаться до одного варианта, где это может быть полезно, но понимаешь ли ты?

    7. А может ли у одного продукта быть несколько статусов одновременно? Типа и новинка и хит и скидка N%?

    8. Что из себя представляет бонус? Всегда ли он привязан к пользователю?
    Ответ написан
    Комментировать
  • Как отслеживать подключение пользователей к сайту?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Веб-разработка
    Какие есть способы отслеживания подключений, как это делают соцсети?
    Магии не существует. «Соцсети» просто держат флаг активности ещё несколько секунд после разрыва соединения, чтобы обработать ситуацию «обновления страницы».
    Ответ написан
    5 комментариев
  • Как писать запросы к API на стадии разработки, если backend еще нигде не хостится?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    1) Запуск бэкенда локально через Docker для тестирования запросов и интеграции (это нормальная практика?)

    Вполне нормальная практика. А что смущает?
    Ответ написан
    Комментировать