Pull to refresh
4
0
Павел Левченко @IkaR49

Инженер-программист

Send message

Разработка вредоносного ПО для MacOS: создание заготовки

Level of difficultyMedium
Reading time18 min
Views2.4K

В этой статье мы погрузимся в мир проектирования и разработки вредоносного ПО для macOS, которая по сути является операционной системой на основе Unix. При исследовании внутренностей системы Apple мы воспользуемся классическим подходом с опорой на базовые знания эксплойтов, программирования на C и Python, а также знакомство с низкоуровневым языком ассемблера. Хотя представленные в статье темы могут быть сложными, я постараюсь изложить их понятным языком.

Читать далее
Total votes 12: ↑12 and ↓0+15
Comments2

Все про композитинг в X11 | Linux

Level of difficultyMedium
Reading time13 min
Views5.2K

Приветствую, читатели хабра! Вы когда-нибудь задумывались над тем, что скрывается за красотой и динамичностью вашего рабочего стола? Какие компоненты реализовывают анимации и различные графические эффекты: блюр, тень, скругления, прозрачность? В X11 есть одна очень интересная программная единица - композитор. В этой статье мы получим общее понимание того, что это такое, как реализовано и для чего используется. Также, немного поговорим о том, как Xorg хранит информацию для отрисовки, затронем front/back буферы и узнаем, как компоненты рабочего стола обмениваются информацией между собой.

Читать далее
Total votes 24: ↑24 and ↓0+28
Comments15

Неожиданности IPv6, или почему тупят Instagram и WhatsApp через прокси и VPN

Level of difficultyEasy
Reading time9 min
Views28K

Довольно часто в последнее время на разных форумах и чатах люди жалуются, что когда они пользуются VPN или прокси, то у них после подключения на устройствах как-то странно начинают работать некоторые приложения. Например, не приходят сообщения в WhatsApp, не загружаютя сторис в Instagram, и другие подобные вещи. Причем нередко проблема чинится сама по себе спустя 10-15 минут после подключения, но после переподключения или переоткрытия клиента начинается снова. Иные жалобы состоят в том, что не смотря на то, что пользователь выходит в интернет через VPN или прокси, некоторые заблокированные сервисы и сайты у него все равно не открываются. И в том и в том обычно винят баги прокси/VPN-клиентов, администраторов серверов, и кого угодно еще. И я вам скажу: зря. Все гораздо проще и гораздо сложнее одновременно.

Читать далее
Total votes 51: ↑50 and ↓1+61
Comments48

Избавляемся от паролей

Level of difficultyEasy
Reading time10 min
Views17K

Меня зовут Александр Чикайло, я разрабатываю межсетевой экран уровня веб-приложений PT Application Firewall в Positive Technologies и специализируюсь на защите веба. Сегодня речь пойдет о беспарольной аутентификации и ее безопасном применении в приложениях. В этом материале я освещу систему passwordless-аутентификации, уже работающую «из коробки», например, в Windows 11 и Chrome.

В скобках замечу, что многие пока путают аутентификацию с авторизацией. Если упрощенно, аутентификация случается, когда я доказал, что я это я. Авторизация немного другое — это предоставление определенных прав для осуществления изменений в системе.  

Читать далее
Total votes 16: ↑14 and ↓2+14
Comments23

Как правильно передавать секреты запускаемым программам?

Level of difficultyMedium
Reading time6 min
Views6.4K

Эта статья о том, как правильно передавать секреты запускаемым программам.

Бывает встречаются Unix-системы, на которых некоторые администраторы передают процессам пароли в открытом виде, совершенно не заботясь о том, что их видят все пользователи данной системы.

Если вы смогли зайти на систему под непривилегированным пользователем, то вы можете набрать команду, отображающую список запущенных процессов

$ ps -ef

и возможно и увидеть некоторые секреты, которых видеть не должны, например, у одного из процессов ниже открыт пароль basicAuth.password (пароль в тексте изменен).

$ strings /proc/1101/cmdline
/usr/local/bin/vmagent
--remoteWrite.url=http://vm-cluster.local:1234/api/v1/write
--remoteWrite.basicAuth.username=user-rw
--remoteWrite.basicAuth.password=123456
--promscrape.config=/usr/local/etc/vmagent-config.yml

Как же быть? Есть несколько способов этого избежать.

Читать далее
Total votes 18: ↑17 and ↓1+19
Comments10

Как передать информацию в ICMP-пакетах и не привлечь внимания санитаров

Reading time8 min
Views23K

Источник: polymerh.

На Хабре достаточно статей про передачу данных через протокол ICMP. Чего говорить, шесть лет назад я сам писал про стеганографию в IP-пакетах и «пингах». Но кажется, самое время вернуться к этой теме и предложить неочевидные методы.

Если вам кажется, что тема передачи данных в ICMP уже исчерпана и я не смогу вас удивить, то предлагаю извлечь данные из дампа сетевого трафика до прочтения статьи. То, что будет дальше, может ввести в недоумение.
Читать дальше →
Total votes 96: ↑95 and ↓1+122
Comments25

Первый опенсорсный LTE-сниффер с полной функциональностью

Reading time4 min
Views17K

Базовая станция LTE

В интернете много инструкций, как оборудовать собственную станцию LTE. Сети 4G становятся массовой и доступной инфраструктурой для передачи данных. И важно понимать, какие угрозы безопасности существуют в этой области, как перехватывать и анализировать трафик.

Устройства для прослушивания трафика LTE до недавнего времени имели ограниченную функциональность и не могли анализировать все служебные данные. Однако в прошлом году инженеры из Корейского института передовых технологий (KAIST) опубликовали исходный код первого в мире опенсорсного сниффера LTESniffer с полным набором функциональных возможностей, включая декодирование трафика PDCCH и PDSCH.
Читать дальше →
Total votes 23: ↑23 and ↓0+26
Comments9

Топовые подходы к решению алгоритмических задач

Reading time11 min
Views20K

Привет! Меня зовут Дмитрий Королёв, я бэкенд-разработчик в Авито. В этой статье я расскажу про ключевые аспекты и концепции работы с наиболее популярными алгоритмами и структурами данных. Это поможет и в реальных проектах, и чтобы глубже понять алгоритмические принципы. Статья подойдёт специалистам, которые хотят углубить свои знания в программировании, и укрепить навыки нахождения оптимальных решений алгоритмических задач.

Читать далее
Total votes 13: ↑13 and ↓0+16
Comments10

Народный измеритель ёмкости батареек BatteryTest

Level of difficultyEasy
Reading time6 min
Views27K
Я разработал дешёвый, точный и максимально простой в использовании прибор, с помощью которого можно измерить ёмкость практически любой батарейки (от микроскопических батареек для слуховых аппаратов до крупных батарей). Повторить мой прибор может любой желающий.



Читать дальше →
Total votes 213: ↑213 and ↓0+232
Comments51

Технологический винтаж: вспоминаем субналадонник Xircom REX 6000. Он умел многое

Reading time7 min
Views3.4K

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

Если взглянуть на жизнь человека, старающегося идти в ногу со временем 24 года назад, то у него в руках, скорее всего, увидим девайс, который сегодня уже и не встретишь. Речь идёт о КПК, или, как их часто называли, наладонниках. Конечно, искушённого читателя Хабра сложно удивить: наладонники были у многих. Но был среди таких КПК интересный экземпляр, который имел форм-фактор платы PCMCIA и подключался к компьютеру посредством этого интерфейса. Заинтересовали? Тогда добро пожаловать под кат.

Читать далее
Total votes 30: ↑30 and ↓0+39
Comments8

Компоненты среды рабочего стола | Linux

Level of difficultyMedium
Reading time12 min
Views9.5K

Всех приветствую, читатели Хабра! Решил попробовать себя в роли знатока-писателя и освятить для вас такую тему, как “Компоненты среды рабочего стола”, чтобы больше людей, хотя-бы в основе, понимали, что там происходит в системе такого, благодаря чему мы можем, не тыкаясь в консоли, с ней взаимодействовать.

Читать далее
Total votes 13: ↑12 and ↓1+15
Comments12

Компрометация данных и её обнаружение

Level of difficultyEasy
Reading time7 min
Views1.8K

 Приветствую, Хабр! Меня зовут Никита Титаренко, я инженер в компании «Газинформсервис», студент СПбГУТ им. проф. М.А. Бонч-Бруевича. Мои профессиональные задачи связаны с созданием уязвимых сред и эксплуатацией данных уязвимостей на киберполигоне в компании. Информация об этом используется для создания наборов данных, на которых обучаются модели искусственного интеллекта

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

Читать далее
Total votes 7: ↑6 and ↓1+7
Comments1

Пишем калькулятор на Rust с GUI

Level of difficultyEasy
Reading time18 min
Views12K

Зачем еще один калькулятор? Да незачем, просто как тестовый проект для рассмотрения GUI-библиотеки.

Изначально я хотел попробовать такие крейты, как GPUI, Floem и Xilem, но первая, кажется, пока работает только под MacOS и Linux, вторая не позволяет установить иконку окну и кушает оперативы побольше Webview в Tauri, а до третьей я так и не добрался, узнав об Slint.

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

Читать далее
Total votes 23: ↑22 and ↓1+26
Comments84

Числа и байты: как работает память в Linux?

Level of difficultyHard
Reading time27 min
Views14K
image

Часть первая: физическая память


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

Также память включает в себя оперативное запоминающее устройство (ОЗУ) или RAM, где можно записывать и считывать информацию. Существует статическая ОЗУ (SRAM) и динамическая ОЗУ (DRAM), различающиеся в том, как хранится информация. В SRAM информация сохраняется до выключения питания, в то время как в DRAM используются транзисторы и конденсаторы, что позволяет хранить данные, но требует их периодического обновления. Разные типы ОЗУ имеют свои преимущества и недостатки, и выбор зависит от конкретных потребностей.

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

Но что такое физическая память, как она работает в Linux? Что такое сегментация, утечки памяти и некие «страницы»?

Все, что вы хотели знать, но боялись спросить о памяти пингвина — читайте здесь и сейчас!
Читать дальше →
Total votes 31: ↑31 and ↓0+35
Comments18

90+ дашбордов для OSINT и глобального мониторинга

Level of difficultyEasy
Reading time13 min
Views22K

Наблюдение за тем, какие изменения происходят на планете в масштабах стран и континентов — настоящий источник вдохновения для OSINT-аналитиков. Специалисты Бастион поделились актуальным списком интерактивных дашбордов, которые они держат в закладках, плюс я добавил парочку от себя.

Даже если вы никак не связаны с ИБ, зато часами залипали в контурные карты глобальных стратегий или восхищались глобусом в центре управления X-COM, эта подборка инструментов наверняка вам понравится.

Читать далее
Total votes 37: ↑37 and ↓0+41
Comments4

Xv6: учебная Unix-подобная ОС. Глава 9. Еще раз о параллельных потоках

Level of difficultyMedium
Reading time5 min
Views1.1K

Трудно добиться быстродействия ядра, организовать параллельную работу потоков и при этом писать ясный код. Блокировки помогают параллельным потокам работать корректно, но иногда блокировки использовать трудно. Глава расскажет о хитрых сценариях с блокировками в xv6 и о сценариях без блокировок.

Читать далее
Total votes 3: ↑3 and ↓0+4
Comments0

Анализ Telegram аккаунтов

Level of difficultyEasy
Reading time4 min
Views23K

Снова приветствую дорогих читателей! Продолжаю цикл статей "ШХ" и сегодня нашим блюдом будет Telegram. В предыдущих статьях мы рассмотрели способы анализа аккаунтов целевого пользователя по его никнейму, после чего проводили разведку его аккаунта в социальной сети Вконтакте. Сейчас я ставлю для себя важным узнать номер телефона пользователя, так как от номера уже можно будет неплохо отталкиваться в разведке и номер телефона может поведать еще больше о своём владельце. В прошлой статье мы пытались выяснить номер при помощи страницы Вконтакте, а в этой как уже догадались по названию, мы будем пытаться выяснить как можно больше информации о Telegram аккаунте.

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

Читать далее
Total votes 11: ↑7 and ↓4+4
Comments2

Хотите присоединить Windows к домену ALD Pro (FreeIPA)? Спросите меня как

Level of difficultyEasy
Reading time26 min
Views8.5K

Конечная цель проектов импортозамещения в ИТ — полный отказ от операционной системы Windows. Но, как говорится, гладко было на бумаге, да забыли про овраги. Может так оказаться, что быстро заменить какие-то клиентские корпоративные приложения, написанные под эту операционную систему, не получится. В этом случае вам может пригодиться возможность присоединения Windows-компьютеров к домену ALD Pro.

В этой статье я расскажу, как добиться максимальной функциональности от такого сценария развертывания, и презентую утилиту нашей собственной разработки aldpro-join. С ее помощью можно решить проблему настройки рабочих станций всего за пару кликов. Если это именно то, о чем вы хотели узнать, но не знали, кого спросить, — вы на правильном пути. Поехали!

Материал будет полезен даже в том случае, если в вашей инфраструктуре пока еще используется «ванильная» система FreeIPA.

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments25

Полные правила игры DOS

Level of difficultyEasy
Reading time4 min
Views2.8K

DOS звучит как дополнение к UNO, и изначально кажется, что это примерно такая же игра. Цветные карточки с цифрами - что может пойти не так? Но игра имеет свои довольно сложные правила и кардинально отличается от UNO. Пишу этот текст, потому что на русском не нашел полных правил, только какие-то обрывки. Текст в этой статье не является прямым переводом правил с официального сайта. Кто желает прочитать правила в оригинале, вот ссылка.

Читать далее
Total votes 5: ↑3 and ↓2+2
Comments0

Алгоритм расчёта расстояния между строками

Level of difficultyMedium
Reading time3 min
Views6.5K

По работе стояла задача оптимизации поиска по адресам (улицы, дома и объекты). Главный критерий - нахождение адреса, если написано с ошибками или не дописан он в полной мере. Bert’ы, косинусные расстояния эмбеддингов и т.д. не подходили, так как они заточены под смысловой поиск, а в адресах смысла нет. TF-IDF c лемматизацией тоже не очень подходил для этой задачи, результаты были плохие.

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

Цель данного поста описание только алгоритма.

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments17
1
23 ...

Information

Rating
4,631-st
Location
Тверь, Тверская обл., Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Backend Developer
Middle
From 300,000 ₽
Rust
C++
Linux
Cmake