Search
Write a publication
Pull to refresh
2
0
Константин @ConstOrVar

Разработчик мобильных приложений

Send message

Почему DNS по-прежнему сложно изучать?

Reading time7 min
Views12K

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

Для примера возьмём DNS. Мы пользуемся DNS с 80-х (больше 35 лет!). Он применяется на каждом веб-сайте Интернета. И он довольно стабилен – во многих смыслах он работает точно так же, как делал это тридцать лет назад.

Но мне понадобились ГОДЫ, чтобы понять, как с уверенностью отлаживать проблемы с DNS, и я видела множество программистов, тоже испытывавших трудности с отладкой проблем DNS. Что же происходит?

Я приведу пару своих рассуждений о том, почему устранять проблемы DNS трудно.

(В этом посте я не буду глубоко объяснять DNS, подробности о его работе см. в моём посте Implement DNS in a Weekend или в других моих постах о DNS.)

Читать далее

Как работает хэширование

Level of difficultyMedium
Reading time12 min
Views91K

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

Хэш-функции фундаментальны и используются повсюду.

Но что же такое хэш-функции и как они работают?

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

Поговорим об оптимизирующих компиляторах. Сказ четвёртый: Циклы

Level of difficultyMedium
Reading time9 min
Views5K

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

Зациклиться

Правила хорошего пентестера, или «Я никогда не»

Level of difficultyEasy
Reading time9 min
Views8.3K

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

Читать далее

Поговорим об оптимизирующих компиляторах. Сказ третий: неопределённое поведение и оптимизации

Level of difficultyMedium
Reading time13 min
Views12K

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

Наверное, многие слышали, что неопределённое поведение (undefined behavior, UB) -- постоянный источник разнообразных багов, иногда очень забавных, иногда довольно жутких. Тема также неоднократно освещалась и на Хабре, навскидку раз, два, три (и даже целый тег есть). Однако чаще всего статьи по данной теме посвящены тому, как можно отстрелить себе ногу, голову или случайно сжечь свой жёсткий диск, исполнив какой-нибудь опасный код. Я же намерен сделать акцент на том, зачем авторы языков программирования надобавляли всей этой красоты, и как оптимизатор может её эксплуатировать. Всё будет проиллюстрировано наглядными примерами из LLVM и присыпано байками из собственного опыта, так что наливайте себе чай, располагайтесь поудобнее, и погнали.

На дно

Поговорим об оптимизирующих компиляторах. Сказ второй: Доминирование

Level of difficultyMedium
Reading time10 min
Views10K

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

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

Причаститься

Wireshark — подробное руководство по началу использования

Level of difficultyMedium
Reading time8 min
Views331K

Wireshark – это широко распространённый инструмент для захвата и анализа сетевого трафика, который активно используется как для образовательных целей, так и для устранения неполадок на компьютере или в сети. Wireshark работает практически со всеми протоколами модели OSI, обладает понятным для обычного пользователя интерфейсом и удобной системой фильтрации данных. Помимо всего этого, программа является кроссплатформенной и поддерживает следующие операционные системы: Windows, Linux, Mac OS X, Solaris, FreeBSD, NetBSD, OpenBSD.

Читать далее

Поговорим об оптимизирующих компиляторах. Сказ первый: SSA-форма

Level of difficultyMedium
Reading time9 min
Views20K

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

Коротко обо мне. Меня зовут Макс, и так получилось, что я вот уже 10 лет, почти с самого начала своей карьеры, занимаюсь оптимизирующими компиляторами. Я начинал в Intel, потом перешёл в Azul Systems, год провёл в Cadence и вернулся обратно, всё это время занимаясь компиляторными оптимизациями для Java, C++ и нейросетевых моделей. На момент написания статьи у меня чуть за 900 патчей в LLVM, большинство из них посвящено цикловым оптимизациям.

За это время я провёл десятки собеседований на позиции как интернов, так и инженеров сеньорного уровня, и довольно часто люди, приходя на эти собеседования, многих вещей не знают или знают поверхностно. И я подумал: а мог бы я написать такой цикл статей, чтобы человек, прочитав их, узнал бы всю ту базу, которая, на мой собственный взгляд, необходимо начинающему компиляторному инженеру? Очень бы хотелось, чтобы новичку в этой области можно бы было дать один (относительно небольшой по объёму) набор текстов, чтобы он получил оттуда всё необходимое для старта. Это не перевод, текст оригинальный, поэтому в нём могут быть ошибки и неточности, которые я буду рад исправить, если вы мне их укажете.

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

Погрузиться

Соревнования Capture The Flag (CTF) и все, что вы о них еще не знали

Level of difficultyEasy
Reading time27 min
Views8.6K

Привет! Меня зовут Анна Шабалина, и я работаю в Swordfish Security. Этой статьей я открываю нашу новую рубрику #досугбезопасника.

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

Статья длинная, заготовьте чашечку кофе.

Читать далее

Мамкины хацкеры или мой путь в CTF

Reading time7 min
Views48K
Это был далекий 2014 год, когда еще зеленые, недавно поступившие в универ, парни, услышали, что есть какие-то соревнования с завлекающим названием — «Capture the flag» (сокр. CTF, в переводе «Захват флага»).


Фото с сайта securitylab.ru к новости про Facebook CTF 2016

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

Итак, давайте теперь я вам немножко поведаю:

1. CTF (Capture the flag или Захват флага) — командные соревнования (изредка бывают личными) в области компьютерной (информационной) безопасности.
Читать дальше →

Как начать заниматься багхантингом веб-приложений

Reading time14 min
Views31K

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

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

Под кат

Как стать этичным хакером в 2024 году. Полный Guide

Reading time4 min
Views198K

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

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

Часть материала я взял у Codeby здесь и тут, которые я считаю обязательными к изучению, часть позаимствовал из своего личного XMIND, часть из телеграм каналов

Начну с того что Хакинг делится на следующие области:

Стать хакером

Google Dorking или используем Гугл на максимум

Reading time21 min
Views315K

Вступление


Google Dorks или Google Hacking — техника, используемая СМИ, следственными органами, инженерами по безопасности и любыми пользователями для создания запросов в различных поисковых системах для обнаружения скрытой информации и уязвимостях, которые можно обнаружить на общедоступных серверах. Это метод, в котором обычные запросы на поиск веб-сайтов используются в полную меру для определения информации, скрытой на поверхности.
Читать дальше →

From Zero to Hero: определите ваш уровень решения LeetCode задач от 1 до 5

Reading time8 min
Views77K

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

А какой у вас уровень?

Читать далее

Есть ли польза от решения алгоритмических задач на LeetCode?

Reading time8 min
Views94K

Пожалуй каждый программист, который сталкивался с вопросом: "А как устроиться на работу в FAANG?" - получал ответ, что ему нужно разобраться с алгоритмами, со структурами данных и прорешать порядка 300-400 задач на leetcode по алгоритмам.

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

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

Читать далее

Пройти LeetCode за год: экскурсия по сайту и roadmap [обновлено 30.11.2023]

Level of difficultyEasy
Reading time23 min
Views128K

С наступающим наступившим вновь наступающим, Хабр.

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

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

С сайтом несколько больно знакомиться, он отпугивает вездесущими приписками "premium", пользуясь славой ресурса для техсобесов продвигает функционал вроде списков компаний, где встречался вопрос n и симуляции интервью в компанию m, да и сам не особо стремится рассказать о себе, потому в нём зачастую и видно голый задачник с одной страницей "problems".

За всем этим теряется важный пункт – а можно ли использовать сайт не для механического зазубривания популярных вопрос-ответов, а для изучения/закрепления алгоритмов и структур данных? Можно. Но подход к этому нужно формировать самостоятельно.

🏆

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

Reading time5 min
Views9.4K

Мы расспросили шестерых прокачанных багхантеров, на счету которых сотни обнаруженных уязвимостей в системах известных компаний (в том числе с присвоенными CVE) и которые одними из первых присоединились к The Standoff 365 Bug Bounty, о том, какие ресурсы помогают им прокачивать навыки в offensive security и оперативно узнавать о новых ресерчах, техниках и эксплойтах. Надеемся, подборки Circuit, Ustinov, Zctym92, Fi5t, Impact и еще одного исследователя, пожелавшего сохранить инкогнито, помогут обнаружить те самые баги, которые принесут вам солидное денежное вознаграждение, признание комьюнити и публичную благодарность от известных компаний.

Подробнее

Подборка полезных ресурсов от экспертов Positive Technologies: от лаб и подкастов до блогеров и сообществ. Часть 3

Reading time4 min
Views6.4K

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

Кстати, если пропустили, ловите ссылку на полезные материалы по машинному обучению и не забывайте про наш хит — подборку 100+ ресурсов, посвященных анализу защищенности мобильных и веб-приложений, реверсу зловредов и киберразведке. А если интересно узнать, чем занимается департамент аналитики в Positive Technologies и почему специалисты этого направления уникальны на рынке, читайте другой наш пост.

Смотреть подборку

Подборка полезных ресурсов от экспертов Positive Technologies: от лаб и подкастов до блогеров и сообществ. Часть 2

Reading time7 min
Views5.3K

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

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

Смотреть подборку

Ontol про пентест и этичное хакерство: подборка лучших бесплатных курсов на YouTube

Reading time9 min
Views27K
image

Анджелина как бы намекает, что пора стать этичным хакером.

Чтобы YouTube не банил обучающие курсы по хакерству, их назвали курсами этичного хакерства.

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

Есть очень дорогие курсы, есть не очень дорогие, а есть бесплатные. Вообще-то, тру хакер всё должен выучить самостоятельно по книгам, но иногда можно и на YouTube подсмотреть.

Предлагаем вашему вниманию подборку 20+ самых популярных обучающих видеокурсов на YouTube.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity