Задать вопрос
  • Как настроить програмный Рейд 1+0, на линукс?

    @Drno
    Зачем проксмокс? там будут еще виртуалки?
    делайте обычный mdadm для данных
    на виртуалке какой смысл делать рейд? его надо делать на хранилище...
    raid 1+0 называется raid-10

    mailcow \ roundcube
    Ответ написан
    5 комментариев
  • Бесплатный способ отправить уведомление на телефон админа через web API?

    @Everything_is_bad
    дергай телеграм бота, простой http запрос
    Ответ написан
    Комментировать
  • Не могу разобраться с websocket. Что я делаю не так?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    На этот вопрос тут уже отвечали неоднократно. RTFM CORS.
    Если коротко, то для того, чтобы страница, открытая с вашего сервера, (localhost:5173), обратилась на страницу другого сервера (stream.binance.com:9443), этот другой сервер должен дать специальное разрешение в CORS-заголовках ответа. Если другой сервер не принадлежит вам, то единственным способом обхода является обращение через свой бэкенд, так как контроль CORS - встроенная функция браузера.
    Ответ написан
    2 комментария
  • Чем frontend разработчик занят на реальных проектах?

    С резким ростом популярности React Server Components и Next.js в последнее время происходит некий сдвиг в понимании, что такое фронтенд.
    BFF уже почти становится неотъемлемой частью "фронтенда", и становится обременительно разделять браузер и сервер на разные команды.
    На Западе, вообще, уже очень давно и макетами, и вёрсткой, и анимациями очень часто занимается один человек - дизайнер, фронтендеры занимаются связкой браузер + BFF, а бэкендеры занимаются более сложной бизнес-логикой.
    К тому же, джуниорам зачастую дают те задачи, которыми сами не хотят заниматься, и на что нет времени. Т.е. это что-то занудное, работа с legacy, передвижение кнопки на 5px влево и т.д. Крайне редко джуниорам дают интересные творческие задачи. Не факт, что вам на новом месте не дадут такие же неинтересные задачи.
    Вы можете либо молча сильно стараться в надежде, что вам потом дадут что-то интересное, заметив ваше рвение, либо, лучше всего, пообщаться по-человечески с коллегами и начальством, объяснив, что вы рветесь в бой, а вас в тылу держат. Попросите рассказать об их планах на ваш счёт.
    Не исключено, что у вас как раз хорошо получается "Настройка тестов, CI/CD, OLAP CUBE, оптимизация запросов к БД", и поэтому вам эти задачи и дают)
    В общем, человеческое общение с коллегами очень часто решает проблемы.
    Если же вы к ним придёте с открытой душой, а вас токсично отошьют, вот тогда подумайте о смене работы.
    Ответ написан
    7 комментариев
  • Как сконфигурировать Nginx для https сервера?

    @99insania99
    В чем смысл делать использовать https в скрипте, а потом перед ним ставить прокси https nginx'ом? Получается шифруем, дешифруем, шифруем, дешифруем... nginx https -> http node.js
    Ответ написан
    5 комментариев
  • Видит ли опсос уровень сигнала на моём аппарате?

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Видит. Телефон сообщает. И сам оператор слушает, есть ведь еще и обратный сигнал. Регулирует мощность передатчиков, исходя из общей картины. Приказывает абонентским устройствам сменить частоту или базовую станцию (если абонент видит несколько) исходя из собственных соображений и чувства оптимальности. Приказывает абонентскому устройству поднять или снизить мощность передатчика.

    Примерно так: у БС есть 25 клиентов, из них 10 рядом, 10 далеко, а 5 ближе у другой БС, которая не перегружена.
    Тогда логика будет такой:
    - 10 ближайшим приказать перейти на одну (или несколько) общих частот. Снизить на этих частотах выходную мощность. Приказать абонентам понизить мощность своих передатчиков.
    - 10 дальним - приказать перейти на другую (или несколько) частоты, и поднять на них свою мощность. А клиентам так же подрегулировать мощность их передетчиков вверх - до достижения уверенной слышимости на БС.
    - 5 которые у другой БС - велеть переключится на другую БС и одну из ее частот.
    Ответ написан
    10 комментариев
  • Как мне отписаться от профильного хаба?

    Lord_of_Rings
    @Lord_of_Rings
    Дунадан - северный странник. Злой, но очень добрый
    Ответ написан
    Комментировать
  • Почему приложение Habr перестало работать на iOS и исчезло из App Store?

    pragmatik
    @pragmatik Куратор тега Хабр
    Хабр всегда делал основную ставку на мобильную версию сайта по адресу https://m.habr.com
    Приложение было создано по принципу: "А давайте наша студия вам бесплатно приложение сделает, а вы нам бесплатно корпоративный блог выделите". Со временем эта студия утратила интерес к доработке приложения и в нем накопилось критическое число недоработок. Устаревание сертификата безопасности поставило точку в его существовании.
    Ответ написан
    1 комментарий
  • Включать ли дедупликацию для бэкапов?

    @rPman
    Veeam Backup не хранит файлы как они были в оригинале, а создает что то типа архива в своем формате, со своими технологиями сжатия и дедупликации, поэтому файловая система не найдет в них копий.

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

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Отдельно проверять наличие нет смысла. Если уж валидировать, то нормально, каждое поле, на соответствие ожидаемому формату. Ну и заодно и наличие.
    А скопом если проверять, то скорее на наличие лишних полей.

    Плюс никаких исключений. Странно, что я не обратил на это внимание в прошлый раз, там этот говнокод с try catch просто везде. Самому не надоедает всё время писать эти тру, кетч, ретурн для каждого запроса? И с какой стати пользователь API должен читать, что в БД нету например нужной таблицы? Это ВНУТРЕННЯЯ информация, которая не должна утекать наружу

    Как вариант, метод validate должен возвращать массив с ошибками.
    Если массив пустой, то используем данные
    Если не пустой - возвращаем их пользователю.
    Ответ написан
    1 комментарий
  • Зачем скрипт виджета юмани сканирует порты компьютера (22,3389 и другие)?

    @MarvinD Автор вопроса
    Пообсуждали тут с товарищем Adamos (за что ему спасибо еще раз!), похоже, что поводов для испуга нет. Сканирование портов используется для определения, не завирусована ли машина пользователя, не открыты ли здесь "лишние порты", такие как удаленное управление компьютером и др. Вопрос закрыт.
    Ответ написан
    2 комментария
  • Как обойти ограничение/шейпинг скорости до 1 Мб/с МТС?

    @alexalexes
    Без модификации прошивки модема ZTE mf79u не обойтись, чтобы зафиксировать TTL, выставить нужный IMEI, чтобы можно было пользоваться бюджетными тарифами. Но такие манипуляции могут вывести из строя модем.
    Скорость может меняться не только от прихоти оператора, но от состояния эфира. Модем может выбирать не самую быструю частоту.
    https://4pda.to/forum/index.php?showtopic=998634&v...
    Ответ написан
    Комментировать
  • Что может отслеживать конкретный сайт и как с этим бороться?

    @rPman
    Косвенная информация о месторасположении
    - по ip адресу клиента и по времени ответа можно выявить наличие vpn и даже расстояние от клиента до выходной ноды vpn
    - наличие прокси, с теми же возможностями, а если прокси внезапно на том же адресе что и выходной ip и анонимна, то анализ может быть более подробный

    Атака на сеть
    - можно анализировать локальную сеть запросами, подбирая ip адреса и типовые порты можно обнаружить наличие роутера и даже его тип (cors не дает читать содержимое https->http но есть информация о заголовках и самом факте верного ответа), помимо роутера программисты часто в десктопных приложениях поднимают веб сервер (особо криворукие - без авторизации), это можно обнаружить и при наличии ошибок даже на него повлиять (повторяю, пользователь заходит на веб сайт, и его локальная сеть может быть просканирована, уязвимые приложения найдены и атакованы... я наблюдал как сбер онлайн делал такое сканирование, делая запросы к localhost по разным портам), примером таких приложений могут быть remote control медиа плееров.
    - XSS/CSRF. открывая уязвимые веб приложения в прозрачном iframe можно двигать его под мышь пользователя таким образом, чтобы пользователь не ведая того, кликак в этом приложении в нужных местах (уязвимое приложение будет открыто с авторизацией пользователя, это оправдано и такие еще встречаются), доступа к данным не будет но действия пользователя пройдут.
    - можно просто ddos-ить какой-либо сайт запросами, которые будут идти от пользователя но referer так подделать нельзя, т.е. будет видно кто виновник (понятно что в iframe можно открыть заранее сгенерированные мусорные домены)
    Помню в одном веб приложении была ошибка, оно не проверяло результат и случайно ddos-ило гугловский сервис, который в результате отказывал в обслуживании пользователю вне этого веб приложения.
    - используя webrtc можно даже вылезти в локальную сеть (найти соседний браузер без proxy/vpn если там тоже открыта страница сервера)
    Было время, когда при использовании java applet/flash/silverlight и прочих нативных аддонов, можно было еще сильнее вылезать из браузерной песочницы и вытворять в сети пользователя лютую дичь.
    - есть какие то направления в атаке через уведомления (если ты подписываешься на них на сайте, всплывающее окошко с ним открывается в ином контексте безопасности чем оригинальная страница), я не изучал но наверняка тут тоже можно что то вытянуть

    Типовая информация о железе
    - характеристики монитора (разрешение, масштабирование, глубина цвета - хотя все уже 32бит но слабые железки могут быть все еще 16битными)
    Из размера окна можно вытянуть информацию об операционной системе, нестандартном оборудовании и установленных темах, меняющих его размер
    - производительность cpu и gpu замеряя их бенмчмарками
    можно вычислять размер кеша и от сюда косвенно получать информацию о модели процессора и даже о вендоре intel/amd/... arm
    - почти полную информацию о gpu и даже попытку скрыть ее за виртуальной машиной
    - через тайминги и сетевой бенчмарк можно собрать информацию о скорости сети (ethernet или wifi)
    - через storage api можно собрать бенчмарки по скорости жесткого диска, как минимум можно понять hdd или ssd
    - инструмент ввода мышь/тачпад, даже если ты на планшетнике запускаешь мобильный браузер в режиме и в режиме PC, по тому как работает пользователь с тачпадом можно вытянуть информацию (отсутствие mousemove там где оно должно быть)

    Атака на железо
    - до сих пор я вижу сообщения о закрываемых уязвимостях доступа к gpu ram при использовании особенностей gpu, доступные в т.ч. из браузера, т.е. буквально вытаскивают изображение экрана и содержимое окон соседних приложений... это не просто, не гарантированно но при наличии желания и ресурсов, адресные атаки возможны, не удивлюсь если так будут воровать веса приватных нейронок.
    - из производительности кеша процессора вытягивают информацию об оперативной памяти соседних процессов (уязвимости Meltdown/Spectre) но это еще сложнее

    Информацию о софте
    - класс браузера (firefox/chromium и при желании opera/edge/...) по поведению javascript и многим специфическим особенностям и само собой по заголовках запроса по useragent (это само собой подменяется)
    - наличие некоторых плагинов (по тому что они добавляют на странице, например api или специфические изменения)
    например блокировщики рекламы выявляются не сложно, правда лучше прикручивать автоматизацию на основе публикуемых правил

    Доступ к clipboard
    - clipboard api не дает доступа к буферу обмена, но при клике на страницу возможна его подмена, типовой пример - пользователь держит в буфере финансовую информацию (номер счета например) и кликая по 'сайту с инструкциями' может получить подмену содержимого буфера и вставить эту подмену как адрес для денежного перевода.

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

    p.s. а сколько открывается дивных возможностей, когда веб сервис запрашивает доступ к чему то еще и пользователь его разрешает, типа камера, положение по gps, доступ к clipboard,..

    Как бороться - отдельное железо для чувствительных вещей, или наоборот, отдельное железо для развлечения и интернета. Всегда помнить об этом (та же атака через звук).
    Ответ написан
    2 комментария
  • Как правильно оформить вопрос на QNA.Habr, чтобы получить ответ?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Прочитать правила и следовать им: https://qna.habr.com/help/rules
    Как правильно задавать вопросы: https://bugtraq.ru/forum/faq/general/smart-questio...
    Ответ написан
    Комментировать
  • Как правильно оформить вопрос на QNA.Habr, чтобы получить ответ?

    Adamos
    @Adamos
    1. Сформулировать проблему.
    2. Попробовать решить ее самостоятельно и конкретизировать ту часть, с которой справиться не удалось.
    3. Прочесть правила и соблюдать их.
    Собственно, все.
    Новички чаще всего - нарушают эти три пункта. Вы, например - третий.
    Ответ написан
    Комментировать
  • Как скрыть что я беру данные о геопозиции?

    Steel_Balls
    @Steel_Balls
    Никак. Это запрещено на уровне системы ещё десять лет назад.
    То, что ты пытаешься делать - запрещено законами всех наших европейских стран
    Ответ написан
    8 комментариев
  • Можно ли вывести градацию уязвимостей?

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

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

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

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

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

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

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

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

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

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