Search
Write a publication
Pull to refresh
189
0

Пользователь

Send message

Про обогреватели

Level of difficultyEasy
Reading time25 min
Views24K
Хватит! Хватит мёрзнуть и терпеть бредни копирайтеров про электрические отопительные приборы!

Зима (долго готовил, уже лето) располагает поговорить про обогреватели. Разберёмся, чем отличаются разные обогреватели, зачем их столько напридумывали, и где нам маркетологи вместе с копирайтерами пытаются продать барахло втридорога. Внимание: текст писал злой инженер — могут попадаться формулы.

Читать дальше →

Локаторы. Стратегии поиска веб-элементов

Level of difficultyMedium
Reading time15 min
Views5.4K

Какой бы инструмент вы ни выбрали для автоматизации тестирования, все они будут искать элементы с помощью локаторов, и обычно это означает, что вы, как тестировщик, должны их создавать используя селекторы. Какие бывают локаторы, как они выглядят, чем отличаются, какие лучше использовать, а какие избегать и почему, ответы прочтете здесь. Примеры скриптов на Playwright и Cypress.

Читать далее

Путеводитель C++ программиста по неопределённому поведению

Level of difficultyHard
Reading time3 min
Views13K

Путеводитель C\+\+\ программиста по неопределённому поведению


Вашему вниманию предлагается полный список разделов электронной книги (12 из 11 :)), посвящённой неопределённому поведению. Книга не является учебным пособием и рассчитана на тех, кто уже хорошо знаком с программированием на C++. Это своего рода путеводитель C++ программиста по неопределённому поведению, причём по самым его тайным и экзотическим местам. Автор книги — Дмитрий Свиридкин, редактор — Андрей Карпов.

Читать дальше →

Кросскомпилируем под macOS с OSXCross

Reading time7 min
Views670

Давно интересовал вопрос возможности кросскомпиляции под macOS. Как оказалось, на самом деле это не составит особых проблем.

В этой статье мы установим тулчейн, а так же кросскомпилируем пару учебных примеров на языках C и Rust. В качестве host будет выступать Ubuntu 24.04 на amd64, а в качестве target - macOS 14 (Sonoma) на Apple Silicon.

Читать далее

lvalues, rvalues, glvalues, prvalues, xvalues, помогите! -

Level of difficultyEasy
Reading time3 min
Views12K

Случайно попалась довольно старая статья 2018 года с простым и понятным описанием категорий значений в C++. До неё всякие glvalues, prvalues, xvalues были малопонятными для меня.

cppreference.com просто перечисляет категории, и это не добавляет понимания, всё кажется чрезмерно излишним.

На stackoverflow.com есть 24 поста разной степени ценности, что только добавляет недоумения от сложности этой темы.

Читать далее

Одна опция TCP-стека спасет приложение от даунтайма

Level of difficultyHard
Reading time15 min
Views17K

Всем привет, меня зовут Вадим Макеров, я работаю в iSpring бэкенд-разработчиком.
Однажды у нас в продукте был инцидент, который привел к даунтайму LMS и происходил несколько раз, в течении нескольких дней. Причина оказалась нетривиальной и находилась на уровне сетевых настроек подключений между сервисами.

Узнать что за опция спасает от даунтайма

Как awk заменяет 10 команд Bash

Level of difficultyEasy
Reading time3 min
Views14K

Привет, Хабр! Когда я только начинал работать с Linux, каждую задачу обрабатывал через кучку пайпов. Потом мой коллега сказал мне: "Завязывай с этим, попробуй awk". Ну, я попробовал. И это действительно удобно. Сегодня я расскажу, как awk может заменить несколько привычных команд bash.

Читать далее

Как я учил войс чат дискорда работать через прокси с помощью перехвата системных вызовов и DLL Hijacking

Level of difficultyMedium
Reading time16 min
Views24K

Я, как и многие, пользуюсь дискордом и китайскими прокси клиентами, но, к сожалению, голосовой чат дискорда не поддерживает работу через прокси. Из-за этого постоянно приходится включать режим TUN/VPN, который заворачивает в туннель много лишнего.

Можно ли с этим что-то сделать? Конечно! Добро пожаловать под кат, там вас ждет готовое решение и куча технических подробностей.

Пожаловать под кат

Блоки в Scratch с нуля — обучение для детей 8-9 лет и старше

Level of difficultyEasy
Reading time4 min
Views2.6K

Что такое Scratch? Это визуальная среда программирования, созданная для детей и подростков. Программирование здесь осуществляется перемещением визуальных программных блоков, маленькие «кирпичики» объединяются в «ветки». Все просто: достаточно достать блок из меню скриптов и перенести его в поле для программирования, а результат мы будем наблюдать на сцене справа.

В Scratch блоки разделены на разделы: команды движения, сенсоры, условия и т. д. Давайте создадим легкую увлекательную игру, а в процессе используем блоки Scratch, с которых и начнем знакомство с этой средой.

Читать далее

OSINT: инструментарий по анализу профилей VK

Reading time2 min
Views132K

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

В РУ-сегменте основоположником анализа по соц. сетям является VK, телега хоть и стала отдаляться от понятия мессенджера трансформируясь в соц. сеть и набирать всё бОльшую популярность, но пока и рядом не стояла по объёму потенциально важной информации о цели.

Стоит отметить, что ВКонтакте уже начал умирать, и по моим предположениям, уже через два-три года былой актуальности от анализа ждать не стоит, народ заметно реже стал им пользоваться. Всё же, VK остаётся ключевым инструментом при анализе биографии человека, его интересов, окружения, происхождения и др.

1. 220vk Старый, добрый и весьма потрёпанный сервис, позволяющий определить скрытых друзей, узнать на кого подписалась/отписалась цель и её интересы исходя из подписок на сообщества и людей (с временным таймлайном), а также какие были изменения в профиле и др.

2. VKHistoryRobot Бот в тг, даст вам представление о том, как профиль выглядел в прошлом(очень полезен в случае, если профиль закрытый) предоставляет информацию в виде краткого дампа: Ф.И.; URL; фотография.

3. FindClone, search4faces сервисы обратного поиска изображения  по VK, позволяют произвести поиск профиля по загруженной фотографии, search4faces из этих двух - бесплатен.

4. Social Graph Bot бот в телеге, позволяющий выстроить графы взаимосвязей среди списка друзей , с этим инструментом вы поймёте: насколько разноплановое окружение, кто из списка друзей является родственником и т.д; легитимен ли аккаунт и имеет ли он связь с какой либо группой лиц. (применений масса, вот вам гайд с хабра

Ещё больше интересного и познавательного контента у меня в Telegram-канале — @secur_researcher

Читать далее

Квест на Node.js — борьба с утечкой памяти. От диагностики до решения

Level of difficultyMedium
Reading time15 min
Views5.8K

Всем привет! Меня зовут Артём и я backend-разработчик компании SimbirSoft. На протяжении восьми лет я работаю на Node.js. Сегодня хочу поделиться опытом поиска утечек памяти при gRPC-вызовах в Node.js + Nest.js. В частности, речь пойдет об отладке утечки памяти при взаимодействии между микросервисами. Статья будет полезна backend-разработчикам, которые работают с Node.js и gRPC.

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

Одной из задач, которую ставил перед нами клиент,  был поиск и устранение утечки памяти при работе микросервисов. Задача была открыта уже давно, но не было четкого понимания, как ее решать. Судя по описанию, было несколько API, при вызове которых отделы DevOps и QA наблюдали сильный рост памяти при мониторинге системы и тестировании соответственно. В дополнении к REST API присутствовали gRPC-методы.

Читать далее

Почти все, что вы хотели бы знать про Docker

Level of difficultyEasy
Reading time11 min
Views77K

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

Предполагается, что читатель что-то слышал про Docker и хотел бы начать знакомство с технологией. Мы постараемся упростить этот процесс.

Читать далее

Превращаем Android-смартфон в USB-клавиатуру, мышь и флешку

Level of difficultyHard
Reading time29 min
Views36K

Android-смартфон при подключении к компьютеру через USB может выглядеть как медиаустройство, модем или хранилище файлов. В этой статье мы научимся делать из него USB-клавиатуру, мышь и флешку.
Читать дальше →

Большая шпаргалка по Rust. 1/2

Level of difficultyMedium
Reading time29 min
Views18K



Hello world!


Представляю вашему вниманию первую часть большой шпаргалки по Rust.


Вторая часть.


Другой формат, который может показаться вам более удобным.


Обратите внимание: шпаргалка рассчитана на людей, которые хорошо знают любой современный язык программирования, а не на тех, кто только начинает кодить 😉


Также настоятельно рекомендуется хотя бы по диагонали прочитать замечательный Учебник по Rust (на русском языке).

Читать дальше →

Возможности JS, о которых вы возможно не знали

Level of difficultyEasy
Reading time5 min
Views20K

Всем привет! Меня зовут Леша, я фронтенд-разработчик. Крашу кнопочки, пишу js скрипты, веду канал в TG https://t.me/frontend_tales (подписывайтесь, стараюсь выкладывать полезный материал).

В этой статье хотел бы поделиться с вами лайфхаками JavaScript, которые, возможно, помогут вам понять тонкости языка и улучшить ваш код. В общем, статья рассчитана на джуниоров и мидлов, сеньорам возможно будет скучно, но рады всем. Начнем!

Читать далее

Протектор и LLVM-обфускатор. Сравнение двух подходов к решению задачи запутывания кода

Reading time7 min
Views7.7K

Добрый день, Хабр! 

В данной заметке я постараюсь сравнить два разных подхода к задаче запутывания машинного кода – это протектор и обфускатор, построенный на базе LLVM-фреймворка. Нам пришлось с этим столкнуться, когда возникла задача защиты библиотек Guardant под разные операционные системы и разные ARM-архитектуры. Для x86/x64 мы используем протектор Guardant Armor, который является полностью нашей разработкой. В случае ARM-архитектуры было принято решение параллельно посмотреть в сторону открытых обфускаторов на базе LLVM с целью их модификации и использования для защиты своих продуктов.

Читать далее

Мой опыт собеседования в Google [оффер на L5]

Level of difficultyEasy
Reading time8 min
Views58K

Предупреждение: я не смогу привести в статье конкретные вопросы из-за подписанного соглашения о неразглашении (NDA).

Работая в лондонском офисе Facebook в команде Instagram*, я начал задумываться о возвращении в Индию. В ноябре 2022 года со мной связался рекрутер Google. Он сообщил об открытии в Бангалоре должности уровня L5 и спросил, интересно ли мне это.

Так как я уже раздумывал о переезде в Индию, то ранее собеседовался в Google, но мне предложили более низкую должность (L4), чем я хотел; потом я устроился в META* на уровень E5.

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

Рекрутер согласился на мою просьбу и предоставил материалы для подготовки к собеседованию. Он сообщил, что свяжется со мной в марте. До этого момента он регулярно писал мне, чтобы узнать, как проходит моя подготовка.

На этот раз в процессе подготовки возникла уникальная для меня сложность — счастливое пополнение в моей семье, дочка. За моё внимание боролись подгузники и кодинг, было очень сложно выделить время на сосредоточенную подготовку! У меня было примерно 25-30 дней на освоение и искусства ухода за ребёнком, и прохождения собеседования.
Читать дальше →

Диск – это лава. Исследуем методы выполнения пейлоада в памяти

Reading time22 min
Views11K

Привет, Хабр! Меня зовут Миша, я работаю в МТС RED в команде тестирования на проникновение на позиции эксперта.

В ходе пентестов очень часто приходится бороться с антивирусами. Увы, это может отнимать много времени, что негативно сказывается на результатах проекта. Тем не менее есть парочка крутых трюков, которые позволят на время забыть про антивирус на хосте, и один из них - выполнение полезной нагрузки в памяти.

Ни для кого не секрет, что во время пентестов атакующим приходится использовать готовые инструменты, будь то нагрузка для Cobalt Strike, серверная часть от поднимаемого прокси-сервера или даже дампилка процесса lsass.exe. Что объединяет все эти файлы? То, что все они давным-давно известны антивирусам, и любой из них  не оставит без внимания факт появления вредоноса на диске.

Заметили ключевой момент? Факт появления вредоноса на диске. Неужели если мы сможем научиться выполнять пейлоад в оперативной памяти, то пройдём ниже радаров антивирусов? Давайте разберёмся с техниками выполнения файлов полностью в памяти и увидим, насколько жизнь атакующих станет проще, если они научатся работать, не затрагивая диск.

Читать далее

Самый быстрый и безопасный PNG декодер в мире

Level of difficultyHard
Reading time16 min
Views8.6K

Декодер изображений PNG из стандартной библиотеки языка программирования Wuffs работает в 1.22–2.75 раза быстрее, чем libpng (широко используемая реализация PNG декодера на C с открытым исходным кодом), C-библиотеки libspng, lodepng и stb_image, а также самые популярные библиотеки для работы с PNG на Go и Rust.
Статья рассказывает о том, как именно достигается такая производительность.

Читать далее

ICMP-туннели. Что это и с чем едят?

Reading time6 min
Views17K

Наши клиенты часто спрашивают нас о том, какие виды туннелирования трафика мы детектируем и блокируем с помощью UserGate NGFW. Давайте разберемся в том, что такое ICMP-туннелирование и как его определять.

Echo Request
1
23 ...

Information

Rating
7,393-rd
Location
Varna, Varna, Болгария
Registered
Activity