Pull to refresh
-5
@cosmolevread⁠-⁠only

User

Send message

Burp Suite — сканирование веб-приложений на основе JWT

Reading time7 min
Views8.7K

Привет, Хабр! Снова с вами те, кто отчитываются, что в вашем приложении не хватает заголовков безопасности, а именно инженеры по динамическому анализу. В нашей прошлой статье мы описали плагин для OWASP ZAP, упрощающий авторизацию на основе JWT. А сейчас хотим рассказать о том, как настроить подобную магию авторизации в популярном инструменте Burp Suite Pro.

Читать далее

Карта, золото, «Герои»: продолжаем разбираться в технико-исторической части HeroWO.js — браузерного клона культовой игры

Level of difficultyEasy
Reading time11 min
Views6.7K

TL;DR для тех, кому некогда читать™:




День пятый

Корневые хранилища сертификатов в браузерах. Основные доверенные центра Интернета

Reading time3 min
Views10K


В декабре 2022 года из корневого хранилища Mozilla исключили корневые сертификаты TrustCor (точнее, для них проставлена метка Distrust for X After Date с 01.12.2022). Причиной стало сотрудничество с компаниями, у которых обнаружились связи с разведывательным сообществом США. К этому решению Mozilla позже присоединились Apple, Google и Microsoft. Таким образом, сертификаты крупного УЦ одномоментно обесценились на большинстве пользовательских устройств.

Более того, «доверие к TrustCor» внесли в глобальную базу данных уязвимостей. Теперь если вы размещаете на GitHub код с доверием к сертификатам TrustCor, система сообщает об уязвимости средней тяжести.
Читать дальше →

Язык PL/I: десять тонн синтаксического сахара

Level of difficultyEasy
Reading time17 min
Views16K

Данный обзор посвящён чрезвычайно популярному в прошлом, но практически полностью забытому в настоящее время языку программирования PL/I. Между тем, многие свойства этого языка, на наш взгляд, заслуживают изучения и наше время, так как часть их периодически переизобретается различными авторами, причём часто в ухудшенном виде.

Читать далее

VSСode. Как настроить окружение для разработки в Docker на удаленном сервере через SSH

Level of difficultyEasy
Reading time3 min
Views25K

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

Читать далее

Асинхронность как основной подход к разработке высоконагруженных приложений

Level of difficultyEasy
Reading time8 min
Views15K

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

Читать далее

От проверки шрифтов до HAR-файлов: оцениваем инструменты для ускорения работы тестировщиков

Level of difficultyMedium
Reading time7 min
Views14K

Привет, Хабр! Меня зовут Ульяна, я тестирую новые фичи и продукты Selectel. Обычно тестирую фронтенд сайта компании или панели управления, но сегодня выступлю немного в другой роли тестировщика.

Я завсегдатай Heisenbug — одной из самых крупных конференций для тестировщиков. На последнем митапе мне запомнился доклад про различные фичи и возможности браузерных инструментов разработчика. Некоторые были для меня в новинку, и я решила протестировать самые интересные и полезные, на мой взгляд. Оценила их на практике и составила обзор по каждому. Если вы в поисках новых инструментов для работы, вам под кат.
Читать дальше →

Укрощение кислорода и подводные камни терраформирования

Reading time12 min
Views16K

Терраформирование — одна из самых долговечных (но не самых древних) идей в научной фантастике. Не подвергается сомнению, что скалистые планеты у других звёзд обживаемы, при условии, что на них есть гидросфера и атмосфера, и залог колонизации этих миров — приближение их биохимических, геохимических и климатических характеристик к земным. Более того, в фантастике рубежа XIX и XX веков, вдохновлённой мечтами об обитаемости Марса (Уэллс и Берроуз) не подвергается сомнению, что марсиане свободно дышали бы на Земле без средств жизнеобеспечения, а на своей планете даже искусственно поднимали бы уровень кислорода при помощи специальных атмосферных фабрик. Один из самых зрелищных эпизодов терраформирования Марса в кинофантастике — это финал фильма «Вспомнить всё» (1990). Но уже в книге «Голубая точка» Карла Сагана, оригинал которой вышел в 1996 году, терраформирование Венеры описывается как экологическая катастрофа, поскольку резкое и даже поступательное насыщение любой планеты газообразным кислородом и водяным паром приведёт к фундаментальной перестройке условий на поверхности планеты и, возможно, в её глубинах. С накоплением данных об экзопланетах (в основном эта информация собрана космическими телескопами Kepler, TESS и Cheops) требуется уточнить, каковы приемлемые рамки увлажнения и оксигенации экзопланеты, чтобы на ней могла существовать жизнь. В этой статье будет рассмотрено, сколько кислорода действительно нужно для жизни, каковы риски дефицита или избытка кислорода в атмосфере, а также какие факты об этом уже известны из изучения экзопланет.    

Читать далее

Как перестать беспокоиться и начать жить в эпоху ИИ

Level of difficultyEasy
Reading time7 min
Views3.7K

Сам-то я “сварщик не настоящий” и в искусственных интеллектах ничего не понимаю, но когда “вокруг только и разговоров, что о море и о закате”, возникает непреодолимое желание разобраться хотя бы на бытовом уровне, “что такое, товарищи, море и что такое, товарищи, закат”. Если кому интересна (ещё одна) точка зрения дилетанта на то, что делать с приближающейся технологической сингулярностью - добро пожаловать под кат. Но сразу предупреждаю, ничего нового вы там не обнаружите, просто рефлексия одного естественного интеллекта.

Читать далее

Супергерой или миф: как возникло понятие 10х-программист и что за ним стоит

Level of difficultyEasy
Reading time4 min
Views15K

Все, кто так или иначе связан с IT-сферой, знакомы с понятием 10х-программист. Так называют самых крутых и эффективных разработчиков. Термин встречается буквально везде: от кликбейтных статей “Как стать программистом за месяц” до книг уважаемых экспертов вроде Стива Макконнелла или Мартина Фаулера. Даже в сериале "Кремниевая долина" в первых же сериях упоминается, что главный герой – как раз один из тех самых 10х-программистов.

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

Читать далее

Осваивают ли LLM модели мира, или лишь поверхностную статистику?

Level of difficultyMedium
Reading time15 min
Views30K

Большие языковые модели (Large Language Model, LLM) сейчас у всех на слуху. Они привлекают внимание общественности своей, казалось бы, впечатляющей возможностью — составлять осмысленные тексты в ответ на запрос пользователя (иногда такие запросы называют «приглашениями», а так же — «промптами» или «промтами» — от английского «prompt»). Эти системы представляют собой тщательно сконструированные комбинации из исключительно простых алгоритмов, огромных объёмов данных и грандиозных вычислительных мощностей. LLM учатся, бесчисленное множество раз играя сами с собой в игру «угадай следующее слово». В каждом раунде такой игры модель смотрит на часть предложения и пытается угадать, или предсказать, следующее слово. Если слово угадано — модель обновляет параметры для того чтобы подкрепить свою уверенность; в противном случае модель учится на своей ошибке для того чтобы в следующий раз её догадка была бы точнее.

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

Как эти модели достигли таких результатов? Они всего лишь запоминают обучающие данные и потом их воспроизводят, или они схватывают правила английской грамматики и усваивают синтаксис языка C? Создают ли они нечто вроде внутренней модели мира — доступной для понимания модели процесса, выдающего некие последовательности данных?

Читать далее

SQL-инъекции для самых маленьких. Часть 3

Reading time5 min
Views13K

И это заключительная часть цикла статей про SQL-инъекции. В ней мы с вами узнаем, как можно собирать информацию о БД путем применения инъекций и затронем тему слепых SQL-инъекций.

Читать далее

Работаем с Git: трудовые будни

Level of difficultyMedium
Reading time14 min
Views51K

Прошлая статья «Работаем с Git: первые шаги в GitHub» была посвящена установке, настройке Git и классическим операциям из набора для новичков GitHub. А теперь перейдём к практике и рассмотрим «горячие» сценарии, которые делают трудовые будни куда веселее. Или не очень.

Читать далее

Чистый код, часть 1

Reading time16 min
Views22K

Привет! В этом посте я хочу обсудить, что такое чистый код и почему я считаю его очень важной практикой. Если у вас всё руки не доходили до того, чтобы сесть и подробно почитать книги Дяди Боба, я подготовил небольшой конспект по его видеолекциям со своими примерами с самым главным.

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

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

Читать далее

Как закалялась сталь современной симметричной криптографии. Глава 2. Математическая криптография

Level of difficultyHard
Reading time42 min
Views8.7K

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

Читать далее

Как выжать 1,5 терафлопса производительности для 32-битных чисел с плавающей точкой на одном процессоре M1

Level of difficultyMedium
Reading time6 min
Views8K

Если вы занимаетесь обучением крупных современных нейросетей, эта статья будет вам не совсем в тему, ведь у A100 скорость в сто раз выше (156 терафлопсов).


Так что же интересного в этих полутора терафлопсах?


  • работа на одном ядре MacBook Air 2020 года с питанием от батареи;
  • выполнение с задержкой ~0,5 наносекунды на инструкцию.

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

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

Я анимирую тентакли и мне платят за это деньги

Level of difficultyEasy
Reading time16 min
Views62K
Видели когда-нибудь в интернете странную, сексуализированную или даже оскорбительную рекламу какой-нибудь мобильной игры? Задумывались о том, кто же сделал это непотребство? Ну так вот, это была я.

image

Сегодня я хочу рассказать вам о том, как: дошла до жизни такой, как вы можете дойти до жизни такой же, расскажу про саму работу и дам несколько советов тем, кто хочет «вкатиться» в мир сладкой анимации.
Читать дальше →

Корни RxJava — о чем мы не подозревали

Level of difficultyMedium
Reading time6 min
Views6K

В этой статье описано то, как под капотом работает RxJava и почему она работает именно так, а не иначе. Статья рекомендуется к прочтению разработчикам уровня junior - middle, так же очень желательно перед прочтением статьи ознакомиться/вспомнить паттерн Observer, потому что вся история основана на нём.

Читать далее

Строка на 1,5 гигабайта

Level of difficultyMedium
Reading time4 min
Views38K

На своей предыдущей работе я занимался поддержкой Java-сервиса, обеспечивавшего удалённую функциональность UI подобно RDP или Citrix. Этот сервис был устроен на основе сессий, состоявших из взаимосвязанных объектов Java, которые должны были очищаться или после выхода пользователя, или после истечения заданного таймаута.

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

Как вкатиться в геймдев начинающему винтику

Level of difficultyEasy
Reading time18 min
Views46K

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

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

Если вы готовы пройти через всё это, чтобы создавать игры — добро пожаловать под кат. Я покажу путь.

Портал в ад

Information

Rating
Does not participate
Registered
Activity