Pull to refresh
88
0

Информационная безопасность

Send message

Введение в CQRS + Event Sourcing: Часть 1. Основы

Reading time 8 min
Views 180K
В первый раз я услышал о CQRS, когда устроился на новую работу. В компании, в которой работаю и по сей день, мне сразу сказали что на проекте, над которым я буду работать используется CQRS, Event Sourcing, и MongoDB в качестве базы данных. Из этого всего я слышал только о MongoDB. Попытавшись вникнуть в CQRS, я не сразу понял все тонкости данного подхода, но почему-то мне понравилась идея разделения модели взаимодействия с данными на две — read и write. Возможно потому что она как-то перекликалась с парадигмой программирования “разделение обязанностей”, возможно потому что была очень в духе DDD.

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

Сразу хочу уточнить что я работал только со связкой CQRS + Event Sourcing, и никогда не пробовал просто CQRS, так как мне кажется что без Event Sourcing он теряет очень много бенефитов. В качестве CQRS фреймворка я буду использовать наш корпоративный Paralect.Domain. Он чем-то лучше других, чем то хуже. В любом случае советую вам ознакомиться и с остальными. Я здесь упомяну только несколько фреймворков для .NET. Наиболее популярные это NCQRS, Lokad CQRS, SimpleCQRS. Так же можете посмотреть на Event Store Джонатана Оливера с поддержкой огромного количества различных баз данных.

Начнем с CQRS


Что же такое CQRS?
CQRS расшифровывается как Command Query Responsibility Segregation (разделение ответственности на команды и запросы). Это паттерн проектирования, о котором я впервые услышал от Грега Янга (Greg Young). В его основе лежит простое понятие, что вы можете использовать разные модели для обновления и чтения информации. Однако это простое понятие ведет к серьёзным последствиям в проектировании информационных систем. (с) Мартин Фаулер
Читать дальше →
Total votes 22: ↑20 and ↓2 +18
Comments 15

Тестирование двухфакторной аутентификации и возможные варианты обхода

Reading time 12 min
Views 34K


Еще до того, как я начал постигать сложную науку информационной безопасности, мне казалось, что 2FA аутентификация — это гарантированный способ защитить свой аккаунт и никакие «эти ваши хакеры» не смогут, скажем, увести мою внутреннюю валюту для покупки одежды персонажам на игровом аккаунте. Но с течением времени опытным путем было доказано,  — система двухфакторной аутентификации может иметь большое количество уязвимостей. 
Читать дальше →
Total votes 16: ↑15 and ↓1 +14
Comments 10

Эксплуатация cookie-based XSS | $2300 Bug Bounty story

Reading time 7 min
Views 15K


Уже на протяжении довольно длительного времени я охочусь за уязвимостями на платформе HackerOne, выделяю некоторое количество времени вне основной работы, чтобы проверить любимые и новые программы. Бесчисленное количество раз приходилось натыкаться на cookie-based XSS уязвимость, которая и станет главной героиней этой статьи. Данный тип уязвимости возникает, когда значение параметра cookie рефлектится на страницу. По умолчанию они считаются self-XSS, если мы, в свою очередь, не докажем их опасность. Собственно, сегодня я расскажу, как эксплуатировать cookie-based XSS уязвимости, а также приведу пример из тестирования одной компании, от которой я получил $7300 в целом за исследование.
Читать дальше →
Total votes 38: ↑37 and ↓1 +36
Comments 10

Очевидные 3 правила безопасности

Reading time 2 min
Views 59K

Правило №1. Делайте все авторизационные куки HttpOnly


Куки с флагом HttpOnly не видны браузерному коду, а отправляются только на сервер. На практике у вас почти никогда нет необходимости получать их содержимое со стороны клиента (если такая необходимость почему-то у вас возникла — пересмотрите архитектуру авторизации, скорее всего, там что-то не так). А вот злоумышленнику, нашедшему XSS — а XSS так или иначе когда-нибудь где-нибудь найдется — отсутствие HttpOnly на авторизационных куках доставит много радости.

Читать дальше →
Total votes 173: ↑140 and ↓33 +107
Comments 117

Программист на всю голову: как кодинг влияет на мышление

Reading time 6 min
Views 62K
Научиться программировать — значит не только развить полезный навык, но и приобрести особый тип мышления. Программисты умеют хорошо решать математические и логические задачи. Также они обращают внимание на детали, моделируют ситуации в обычной жизни и дают оценку на основе большого количества факторов.



В преддверии нашего курса Go Workshop рассказываем, что психологи, лингвисты и педагоги думают о влиянии кодинга на мозг, при чем тут австралийские индейцы и гипотеза Сепира-Уорфа.
Читать дальше →
Total votes 25: ↑20 and ↓5 +15
Comments 258

Я переучиваю людей на Java-программистов

Reading time 8 min
Views 134K

Когда я вижу друзей, которые вкалывают в два раза больше, а зарабатывают в четыре раза меньше, каждый раз начинается разговор:
— А ты бы не хотел поработать программистом? Ты же реально умный. Может ты просто не на своем месте?

В результате я переучиваю своих друзей и знакомых на программистов. Весь процесс занимает от двух до трех месяцев. 25 уроков по 4 часа. Потом все смогли устроиться программистами.
Эта статья не о том, как надо учить, скорее просто описание процесса, который работает.
Читать дальше →
Total votes 351: ↑232 and ↓119 +113
Comments 464

Конец прокрастинации или что такое ИКИГАИ?

Reading time 24 min
Views 97K
Описать понятие прокрастинации можно этим максимально простым изображением. У вас есть ряд определенных задач и есть выделенное время на их выполнение. Прокрастинаторы решают свалить все задачи в кучу и оставить на самый последний момент.

Проблема в том, что прокрастинация всегда заставляет нас чувствовать себя хуже, влияет на нашу продуктивность и на наш уровень счастья.



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

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

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


Total votes 74: ↑64 and ↓10 +54
Comments 87

Особенности национальной охоты на баги или Bug Bounty по-славянски

Reading time 4 min
Views 13K


Почему крупнейший мобильный оператор платит за критические уязвимости 3-мя месяцами бесплатного интернета, государственная авиакомпания считает паспортные данные и дату рождения не конфиденциальной информацией, а служба доставки №1 в стране по скриншотам отрицает утечку данных?

А тем временем, на другом континенте, Пентагон собирает 1410 фрилансеров ИБ-шников и выплачивает 75 000 долларов за найденные уязвимости. Министерство Обороны США так же запускает программу вознаграждения и выплачивает более 100 000 долларов за 118 найденных уязвимостей (багов) на всех официальных сайтах департамента.

В данной статье мы рассмотрим особенности внедрения и обслуживания одного из самых эффективных мер в сфере безопасности (security) — программа поиска и выявления уязвимостей (bug bounty).
Читать дальше →
Total votes 31: ↑28 and ↓3 +25
Comments 21

CoffeeMiner: взлом WiFi для внедрения криптомайнера в HTML-страницы

Reading time 7 min
Views 30K
Предупреждение: эта статья и проект имеют исключительно образовательные цели.

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

Цель этой статьи — объяснить, как провести атаку MITM (человек посередине) для внедрения определённого JavaScript-кода в страницы HTML, чтобы заставить все устройства, подключённые к WiFi, майнить криптовалюту для злоумышленника.

Задача состоит в создании скрипта, который проводит автономную атаку в сети WiFi. Это то, что мы назвали CoffeeMiner, поскольку атаки такого типа можно проводить в кафе.
Читать дальше →
Total votes 23: ↑21 and ↓2 +19
Comments 15

Как я узнал, что у нас сливают трафик

Reading time 5 min
Views 13K
Приветствую Вас уважаемое хабра-сообщество. Хочу поведать Вам о том, как сливали трафик у одного из моих клиентов.
Сидел я поздним вечером, и решил пройтись по сайтам клиентов, и на одном из них, я увидел, что чуть-чуть сместился один div.
Посмотрев исходный код и пролистав его туда-сюда раз 10, я увидел, что скрипт подгружается с интересного домена:

Трудно заметить, что последний подключаемый скрипт ведет на goog1(цифра)e-analitics.com
Читать дальше →
Total votes 167: ↑154 and ↓13 +141
Comments 85

Как я взломал компании, связанные с криптовалютой, и заработал на этом $60 000

Reading time 9 min
Views 79K
image

Биткоин и криптовалюты в целом сейчас у всех на слуху. Моё знакомство с криптовалютами произошло примерно 5 месяцев назад, именно тогда я начал инвестировать в bitcoin и ethereum, курс на тот момент был по $1900 за btc и $89 за эфир. Для того, чтобы вы могли понять, какой профит я получил, скажу, что на момент написания статьи биткоин стоит $18 100, а эфир $830 и продолжает выходить на орбиту вместе с остальными криптовалютами. Подумал, что будет отлично посмотреть насколько безопасны сервисы, в которых я держу свои криптовалютные сбережения, торгую ими или отдаю в доверительное управление.
Total votes 95: ↑87 and ↓8 +79
Comments 42

unCAPTCHA: использование сервисов Google для обхода Google reCAPTCHA

Reading time 2 min
Views 28K
image

unCAPTCHA – автоматизированная система, разработанная экспертами Мэрилендского университета, способная обойти reCAPTCHA от Google с точностью до 85 %. Им это удалось благодаря распознаванию аудио-версии подсказки для людей с ограниченными возможностями.
Total votes 48: ↑46 and ↓2 +44
Comments 31

Вы уволили самого талантливого сотрудника. Надеюсь, теперь вы довольны

Reading time 7 min
Views 168K
Недавно довелось прочитать статью под названием «Мы уволили самого талантливого сотрудника. Это лучшее решение, которое мы когда-либо делали». [Очень популярная статья, которая получила массу положительных оценок на Medium — прим. пер.]

Давайте присядем, вы и я. Нужно поговорить. Если вы не читали статью по ссылке, то уделите 10–15 минут и прочитайте, впитайте её целиком.

Готовы? Отлично. Теперь разберём этот текст, потому что он значит гораздо больше, чем там написано. Если вы прочитали статью, то понимаете, что автор описывает проблемного сотрудника под вымышленным именем «Рик». Рик — это местный гений с огромным количеством знаний в предметной области, он входит в состав ключевых разработчиков продукта.

На первый взгляд, это история о технаре, который возомнил себя божьим даром для компании. Он решил, что руководители должны поклоняться земле, по которой он ходит и быть благодарны за одно его присутствие, а руководство вышвырнуло его пинком за дверь, потому что его репутация обналичивала чеки, за которые талант не мог заплатить.
Читать дальше →
Total votes 310: ↑300 and ↓10 +290
Comments 439

Расширения Burp Suite для эффективного тестирования веб-приложений

Reading time 3 min
Views 19K
image
 
Burp Suite – это платформа для проведения аудита безопасности веб-приложений. Содержит инструменты для составления карты веб-приложения, поиска файлов и папок, модификации запросов, фаззинга, подбора паролей и многое другое. Также существует магазин дополнений BApp store, содержащий дополнительные расширения, увеличивающие функционал приложения. В этой статье будут рассмотрены инструменты, повышающие эффективность Burp Suite при тестировании на проникновение веб-приложений.
Читать дальше →
Total votes 23: ↑21 and ↓2 +19
Comments 3

WAF глазами хакеров

Reading time 23 min
Views 38K
Привет, Хабр! Сегодня мы поговорим об одном из современных механизмов защиты веб-приложений, а именно о WAF, Web Application Firewall. Мы расскажем, на чем основываются и как работают современные WAF, какие существуют способы обхода и bypass-техники, как их применять, а также почему ни в коем случае не стоит всецело полагаться на WAF. Мы представим свой взгляд пентестеров, которые никогда не принимали участие в разработке WAF и которые собирали информацию из открытых источников и на основе своего опыта, поэтому о некоторых тонкостях работы WAF мы можем даже и не подозревать.
Читать дальше →
Total votes 42: ↑34 and ↓8 +26
Comments 3

Новые способы монетизации взломанных веб-ресурсов

Reading time 2 min
Views 19K
image
 
Способов получить выгоду со взломанного сайта всегда было довольно много. Тем не менее, кибер-преступность не отстает от прогресса и использует передовые технологические методы для незаконного заработка.
Читать дальше →
Total votes 27: ↑26 and ↓1 +25
Comments 12

Как вести и продвигать канал в Telegram — полное руководство

Reading time 14 min
Views 134K

Привет. Один из трендов в социальном маркетинге последнего года — каналы в Телеграме. Считается, что в этом мессенджере сейчас лучшая аудитория, высокая вовлеченность и самая дорогая реклама. Я веду один из самых быстрорастущих и успешных каналов в Телеграме и буду рад поделиться своим опытом продвижения.


Продвижение в соцсетях — не моя специальность, и я тем более не считаю себя экспертом. Однако кейс роста канала t.me/za_bugrom с нуля до 7000 подписчиков за месяц (если кто-то пока не в теме: по меркам Телеграма это большой канал) заинтересовал очень многих.
Раз есть такой большой интерес, в этой статье я один раз опишу свое видение процесса, которое является лишь моим мнением и может не иметь никакой связи с реальностью. Я поделюсь всем своим опытом, от начала и до конца, без недосказанности. По этой причине статья большая. TL;DR.

Читать дальше →
Total votes 20: ↑13 and ↓7 +6
Comments 11

Ticket Trick: взлом сотен компаний через службы поддержки пользователей

Reading time 9 min
Views 18K
Несколько месяцев назад была обнаружена уязвимость, с помощью которой хакеры могут взламывать корпоративные средства обмена сообщениями. Воспользоваться этой уязвимостью не сложнее, чем пару раз щёлкнуть мышью, при её успешной эксплуатации можно получить доступ ко внутренней сети компании, к аккаунтам её сотрудников в социальных сетях, таких, как Twitter, и, обычно, к командам в Yammer и Slack.

Я придумал для моей находки имя и логотип. Примите как данность.

Проблема, о которой идёт речь, всё ещё существует. Это — не тот случай, когда всё можно моментально привести в порядок. За последние несколько месяцев я связался с десятками компаний и затронутых уязвимостью поставщиков услуг, в рамках их программ отлова багов, для того, чтобы исправить ситуацию. Из-за огромного количества организаций, на которых это распространяется, я не в состоянии связаться со всеми. Следуя рекомендациям некоторых уважаемых мною людей и с разрешения затронутых проблемой организаций, я публикую этот материал для того, чтобы все, кого это касается, могли бы немедленно принять меры. Сейчас я расскажу о том, что я назвал Ticket Trick.
Читать дальше →
Total votes 54: ↑53 and ↓1 +52
Comments 9

Взлом Wi-Fi

Reading time 7 min
Views 329K

Взлом маршрутизаторов WPA/WPA2 Wi-Fi с помощью Airodump-ng и Aircrack-ng/Hashcat


Это краткое пошаговое руководство, которое демонстрирует способ взлома сетей Wi-Fi, защищённых слабыми паролями. Оно не исчерпывающее, но этой информации должно хватить, чтобы вы протестировали свою собственную сетевую безопасность или взломали кого-нибудь поблизости. Изложенная ниже атака полностью пассивна (только прослушивание, ничего не транслируется с вашего компьютера) и о ней невозможно узнать, если вы только реально не воспользуетесь паролем, который взломали. Необязательную активную атаку с деаутентификацией можно применить для ускорения разведывательного процесса. Она описана в конце статьи.
Читать дальше →
Total votes 77: ↑64 and ↓13 +51
Comments 51

Как я исходники собственного сайта скачал

Reading time 3 min
Views 10K
В сентябре 2009 года была опубликована статья об уязвимости, связанной с системой контроля версий subversion, позволяющей скачать исходники сайтов, использующих SVN. Периодически от нечего делать мой мозг хотел, что бы я написал граббер и проверил актуальность данной угрозы на текущий момент, но было как-то лень. Однако, мне не давал покоя комментарий хабраюзера Semenov



Понятно, что каждый школьник уже попробовал скачать %sitename% через .svn, потому от этой идеи я отказался сразу, зато попробовать git clone %sitename%/.git/ руки чесались.
Читать дальше →
Total votes 18: ↑9 and ↓9 0
Comments 10

Information

Rating
Does not participate
Registered
Activity