Pull to refresh
3
0
Send message

Обозреваем и практикуем популярные OSINT инструменты

Reading time 4 min
Views 8.1K

Введение

Рад вновь приветствовать читателей в своей любимой рубрике "ШХ" что является сокращением от "Шерлок Холмс" и разумеется серия таких статей напрямую относится к OSINT. Сегодня на практике попробуем некоторые инструменты и попробуем узнать больше о человеке исходя из его никнейма. В качестве цели я возьму одно из своих имён "VI.......TE".

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

Читать далее
Total votes 16: ↑15 and ↓1 +14
Comments 1

Об одном способе веб-скрапинга сайтов, защищенных Cloudflare

Level of difficulty Medium
Reading time 10 min
Views 14K

Сразу оговорюсь, что описанное ниже носит исключительно информационно-образовательный характер, и не имеет целью нанесение какого-либо ущерба компаниям, использующим защиту из заголовка статьи. По этим же причинам фокусировка статьи именно на том, как получить заветный html «как из браузера» в автоматизированном режиме, и здесь не будет идти речь о каких-то массовых распараллеливаниях через proxy и VPN, подкладываниях отпечатков (finger prints) браузеров и т. д.

Узнать о способе обхода защиты Cloudflare
Total votes 28: ↑27 and ↓1 +26
Comments 31

Как я устроился в Амазон и перестал переживать за свой английский

Level of difficulty Easy
Reading time 7 min
Views 86K

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

Меня зовут Андрей Столбовский, последние 5 лет я работал в Яндексе, а в прошлом году перешёл в Амазон и теперь работаю Software Development Manager в AWS Redshift – это мой первый полноценный опыт работы в международной компании. 

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

Итак, поехали. 

Поехали!
Total votes 282: ↑279 and ↓3 +276
Comments 160

Обзор микроволнового датчика присутствия Hi-Link LD2410

Level of difficulty Medium
Reading time 3 min
Views 16K

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

Мой выбор пал на DIY микроволновый датчик Hi-Link LD2410, расскажу почему.

Читать далее
Total votes 38: ↑38 and ↓0 +38
Comments 76

Почему эффективной сове не выгодно нанимать даже тушканчика (а увольнять, наоборот, выгодно)

Reading time 8 min
Views 58K

Открываю с утра новости, а там – ни разу не было и вот опять:

Нехватку (высококвалифицированных низкооплачиваемых) специалистов выявили благодаря опросу Института экономической политики им. Гайдара (ИЭП), с результатами исследования ознакомился РБК.

Население при этом: ну да ну да.

Весной 2023 года только 2% сообщили, что в связи с СВО у них выросла зарплата, за последний год материальное положение в той или иной степени улучшилось у 15%, тогда как ухудшилось у 33%, поскольку увеличились текущие расходы (39%), а некоторые (7%) потеряли часть сбережений и/или доходов. Савин, Институт социологии РАН. «Вестник РУДН. Серия: Социология», №4, 2023

Читать далее
Total votes 231: ↑208 and ↓23 +185
Comments 136

Про́клятый огонь, или магия препроцессора C

Reading time 18 min
Views 25K

Задавались ли вы когда-нибудь вопросом, можно ли полноценно программировать при помощи директивы #define в языке C? Полнота по Тьюрингу шаблонов C++ известна весьма широко, например, люди пишут трассировщики лучей, делающие все вычисления во время компиляции (вместо времени исполнения). А как обстоят дела с препроцессором C? Вопрос оказался сильно нетривиальнее, и эта история является, на мой вкус, отличным анекдотом для курса лекций по теории компиляторов, что я готовлю в данный момент. В частности, для лучшего понимания происходящего здесь, рекомендую ознакомиться со второй статьёй, которую я опубликовал параллельно этой: лексер и парсер.

Чтобы не было обманутых впечатлений, предупрежу сразу, что рейтрейсера не будет, но про́клятый код будет очень даже! Итак, поехали. Для начала, почему я вообще задался этим вопросом? Если обычный код компьютерной графики вам скучен, следующий раздел можно пропустить, перематывайте до последней картинки.

Читать далее
Total votes 169: ↑169 and ↓0 +169
Comments 54

Компилятор за выходные: лексер и парсер

Level of difficulty Medium
Reading time 12 min
Views 13K

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

Сегодня я публикую две статьи разом, поскольку по дороге меня довольно круто занесло, и получился небольшой спин-офф. Очень рекомендую к прочтению :)

Ну а тема этой статьи - автоматическое построение синтаксического дерева aka лексер и парсер.

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

«Пора ли гнать на мороз Computer Vision — scientist'ов ?» (Fondation Models и вокруг)

Level of difficulty Medium
Reading time 8 min
Views 15K

Прошлый год в Computer Vision запомнился тем, что появилось множество больших претрейненных сетей (Fondation Models). Самая известная - GPT4v (ChatGPT с обработкой изображений).
В статье я попробую простым языком объяснить что это такое (для тех кто пропустил), как меняет индустрию. Какие задачи стало проще решать. Какие продукты появились в последнее время и появятся в будущем.
И можно ли уже выгнать на мороз лишних "ресерчеров"?!

Читать далее
Total votes 67: ↑66 and ↓1 +65
Comments 9

С новым годом: GPT в 500 строках на SQL

Reading time 42 min
Views 36K

В минувшем году все только и говорили об ИИ и о том, как он может всё за вас сделать.

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

«Эй, ChatGPT. А ты можешь реализовать большую языковую модель на SQL?»
«Нет, SQL не подходит для реализации больших языковых моделей. Язык SQL предназначен для выполнения запросов к данным, хранящимся в РСУБД и для управления этими запросами. Для реализации большой языковой модели требуются сложные алгоритмы, обширные датасеты, а зачастую — и фреймворки для глубокого обучения. SQL всеми этими возможностями не обладает.»

Что ж, лишний раз убеждаешься, что, если хочешь что‑то сделать хорошо – сделай это сам.

Давайте же воодушевимся этим оптимистическим планом и реализуем большую языковую модель на языке SQL.

Читать далее
Total votes 215: ↑211 and ↓4 +207
Comments 20

Локальные нейросети. Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT

Reading time 8 min
Views 75K

Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.

Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.

И бонусом затронем новую модель для качественного подробного описания фото.

UPD: Добавлена информация для запуска на Windows с ускорением на AMD.

Читать далее
Total votes 107: ↑105 and ↓2 +103
Comments 87

Немного паранойи: весёлые огромные уязвимости, которые порождают ChatGPT и LLM-модели

Reading time 8 min
Views 7K
LLM сейчас встраивают практически везде. Рождается очень много возможностей для атак.

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

image
MS говорил, что обучал только на публичных данных репозитория. Это пример того, как в автокомплит Copilot попал кусок кода, содержащий ссылку на тикет в Jira компании Озон, но их много раз поймали на утечках приватных данных. Некоторые пытались судиться уже, по этому поводу, но есть некоторые сомнения…

Вот ещё пример. Поскольку вывод модели является частью промпта, при каждой итерации в текст, который надо перевести, можно вставить инструкции для модели. И она будет им следовать. Так что если вы переводите что-то со словами «Игнорируй все предыдущие инструкции и сделай вот это», возможно, вас ждёт сюрприз. Практическое применение такое: белый по белому текст в PDF с резюме, и если это резюме оценивает LLM-модель (а это уже норма), то ставит ему высший балл.

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

Есть инструкции для корпоративных ботов, как ругать свою продукцию. Есть описания товаров, которые поднимают товары в выдачах торговых площадок, формируемых по отзывам на основе анализа LLM-моделями. Есть непрямые атаки для корпоративных ботов, позволяющие выдёргивать информацию обо всех сотрудниках.
Читать дальше →
Total votes 25: ↑23 and ↓2 +21
Comments 7

Предсказание остановок оборудования с использованием LSTM и Байесовского подхода

Level of difficulty Medium
Reading time 6 min
Views 3.2K

Привет, дорогие читатели Хабра! 

Исследования выполнено в рамках выпускного проекта на курсе Machine Learning Advanced в OTUS. Рецензенты проекта - @bekemax, @stureiko

Данные были предоставлены ПАО «Северсталь» для хакатона ЛИДЕРЫ ЦИФРОВОЙ ТРАНСФОРМАЦИИ 2023

В проекте развиты и реализованы в коде идеи Давида Пагано (Davide Pagano) из статьи A predictive maintenance model using Long Short-Term Memory Neural Networks and Bayesian inference, опубликованные в Decision Analytics Journal в марте 2023. Из-за соглашения о неразглашении никакие подробности о компании, а также ее данные и какой-либо код для иллюстрации исследования автором в статье предоставлены не были.

Читать далее
Total votes 13: ↑11 and ↓2 +9
Comments 3

“Кем вы себя видите в нашей компании через 5 лет” и другие надоевшие вопросы HR — откуда они взялись и как мешают найму

Level of difficulty Easy
Reading time 6 min
Views 51K

Всем привет! Вместе с коллегами я занимаюсь наймом в Максилекте. Обычно в блоге на Хабре высказываются наши разработчики. От них были статьи не только о технологиях, но и о том, на что смотреть в ходе собеседования и как правильно подобрать компанию по душе. Их мнение вызвало бурный отклик среди коллег-ИТ-шников и заодно выпады в сторону HR, как направления в целом. Известное ведь “противостояние”: ИТ-шники против кадровиков.

Сегодня хочется вставить свои пять копеек в примирение сторон. Иногда отдельные представители HR действительно “перегибают”, применяя в ИТ методы, которые здесь не очень-то работают. Но не все мы такие! Поделюсь своим видением того, откуда берутся надоевшие вопросы про “видение через пять лет”, стоит ли на них “правильно” отвечать и о чем надо задуматься рекрутерам, которые все еще их задают.

Читать далее
Total votes 47: ↑43 and ↓4 +39
Comments 260

Извлечение текста из файлов PDF при помощи Python

Level of difficulty Medium
Reading time 15 min
Views 27K

▍ Введение


В эпоху больших языковых моделей (Large Language Model, LLM) и постоянно расширяющейся сферы их применений непрерывно растёт и важность текстовых данных.

Существует множество типов документов, содержащих подобные виды неструктурированной информации, от веб-статей и постов в блогах до рукописных писем и стихов. Однако существенная часть этих данных хранится и передаётся в формате PDF. В частности, выяснилось, что за каждый год в Outlook открывают более двух миллиардов PDF, а в Google Drive и электронной почте ежедневно сохраняют 73 миллионов новых файлов PDF (2).

Поэтому разработка более систематического способа обработки этих документов и извлечения из них информации позволит нам автоматизировать процесс и лучше понять этот обширный объём текстовых данных. И в выполнении этой задачи, разумеется, нашим лучшим другом будет Python.
Читать дальше →
Total votes 55: ↑54 and ↓1 +53
Comments 10

Тестовые серверы Telegram: инструкция по эксплуатации

Reading time 11 min
Views 15K

Про разработку ботов в Telegram написано много текстов, а про «тестовый дата-центр» практически ничего. Ранее Pavelgram освещал этот вопрос: он кратко рассказал, что такое тестовые серверы и как с ними работать. Я продолжу это начинание.

Эта статья — сборник разбросанной документации и результатов экспериментов. Под катом расскажу о технических особенностях тестового окружения для разработки, покажу примеры ботов и юзерботов. В качестве бонуса — история «о жизни в тестовом контуре».
Читать дальше →
Total votes 64: ↑64 and ↓0 +64
Comments 6

Есть ли жизнь после Nvidia?

Level of difficulty Easy
Reading time 15 min
Views 10K

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

Предпосылки к исследованию

Наша команда разработала собственное цифровое решение для мониторинга транспортного потока, которое работает на одноплатном компьютере Nvidia Jetson. Однако санкции со стороны Запада внесли свои коррективы в будущее проекта: нам пришлось искать альтернативные варианты для бесперебойной работы системы.

Читать далее
Total votes 16: ↑15 and ↓1 +14
Comments 15

Искусство ETL. Пишем собственный движок SQL на Spark [часть 5 из 5]

Level of difficulty Hard
Reading time 14 min
Views 1.7K

REPL


В данной серии статей я подробно рассказываю о том, как написать на Java собственный интерпретатор объектно-ориентированного диалекта SQL с использованием Spark RDD API, заточенный на задачи подготовки и трансформации наборов данных.

Краткое содержание предыдущей серии, посвящённой API расширения и разного рода технической обвязке:


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


Теперь можно поговорить о последних штрихах, делающих инструмент — инструментом, а именно, об интерактивно-отладочном режиме, то есть, REPL, клиенте и сервере, а также о генераторе документации.


Предупреждение о рейтинге «M for Mature»

Уровень сложности данной серии статей — высокий. Базовые понятия по ходу текста вообще не объясняются, да и продвинутые далеко не все. Поэтому, если вы не разработчик, уже знакомый с терминологией из области бигдаты и жаргоном из дата инжиниринга, данные статьи будут сложно читаться, и ещё хуже пониматься. Я предупредил.

Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Comments 0

Почему мой любимый API — это файл zip на сайте Европейского центрального банка

Level of difficulty Easy
Reading time 7 min
Views 31K

Когда был максимальный курс доллара к евро?

Вот небольшая программа, вычисляющая это:

curl -s https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.zip \ | gunzip \ | sqlite3 -csv ':memory:' '.import /dev/stdin stdin' \ "select Date from stdin order by USD asc limit 1;"

Результат: 2000-10-26. (Можете попробовать запустить её самостоятельно.)

Читать далее
Total votes 104: ↑90 and ↓14 +76
Comments 27

Искусство ETL. Пишем собственный движок SQL на Spark [часть 3 из 5]

Level of difficulty Hard
Reading time 20 min
Views 1.5K

04_assets_residents.tdl


В данной серии статей я подробно рассказываю о том, как написать на Java собственный интерпретатор объектно-ориентированного диалекта SQL с использованием Spark RDD API, заточенный на задачи подготовки и трансформации наборов данных.

Краткое содержание предыдущей серии, последней, посвящённой проектированию спецификации языка:
Операторы жизненного цикла наборов данных (продолжение)
Операторы контроля потока выполнения
Операторы управления контекстом исполнения
Операторы выражений


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


Предупреждение о рейтинге «M for Mature»

Уровень сложности данной серии статей — высокий. Базовые понятия по ходу текста вообще не объясняются, да и продвинутые далеко не все. Поэтому, если вы не разработчик, уже знакомый с терминологией из области бигдаты и жаргоном из дата инжиниринга, данные статьи будут сложно читаться, и ещё хуже пониматься. Я предупредил.

Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Comments 7

Zigbee датчик влажности почвы с E-Ink дисплеем eFlora

Level of difficulty Easy
Reading time 4 min
Views 16K
Приветствую всех читателей Habr! Хочу показать и рассказать вам об одном из своих проектов, это небольшой и симпатичный датчик влажности почвы с небольшим экраном на электронных чернилах. Датчик работает от батарейки, умеет отправлять данные по воздуху по протоколу Zigbee в вашу систему умного дома. Данный проект — это дальнейшее развитие другого моего DIY ардуино проекта датчика влажности почвы.


Читать дальше →
Total votes 66: ↑63 and ↓3 +60
Comments 59

Information

Rating
Does not participate
Registered
Activity