Pull to refresh
10
0
Василий @ShiawasenaHoshi

Backend разработчик на Java/Python

Send message

Кибербитва на полигоне The Standoff завершилась победой Codeby — Часть 1

Reading time10 min
Views5.4K

Привет, наш дорогой читатель!

Хочу представиться: меня зовут Станислав (@clevergod), я являюсь вице-капитаном команды Codeby.net, и этой статьей мы начинаем цикл из 3х-4х материалов, посвящённых нашему участию в киберполигоне The Standoff.

По своей старой привычке, постараемся без эмоционально описать всю боль, слезы и радость прошедшего для нашей команды удивительного 123-часового марафона под названием The Standoff 2020.

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

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

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

P.S. - Хочу сказать, что мы с кэпом (BadBlackHat) очень долго шли к этой победе, преодолевая один барьер за другим, отдавая все силы и ресурсы для того, чтобы наша общая мечта сбылась.

Внимание, статья содержит много скринов!

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

Как мы пробивали Великий Китайский Фаервол (ч.2)

Reading time8 min
Views13K

Привет!


С вами снова Никита — системный инженер из компании SЕMrush. И этой статьей я продолжаю историю про то, как мы придумывали решение обхода Китайского Фаервола для нашего сервиса semrush.com.


В предыдущей части я рассказал:


  • какие появляются проблемы после того, как принимается решение «Нам нужно сделать так, чтобы наш сервис работал в Китае»
  • какие проблемы есть у китайского интернета
  • зачем нужна ICP-лицензия
  • как и почему мы решили тестировать наши тестовые стенды с помощью Catchpoint
  • какой результат дал наш первый вариант решения, базирующийся на Cloudflare China Network
  • как мы нашли баг в DNS Cloudflare


Эта часть — самая итересная, на мой взгляд, потому что сосредоточена на конкретных технических реализациях стейджингов. И начнем мы, а точнее продолжим, с Alibaba Cloud.

Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments3

Скрипт для тех, кому лень разбираться в Linux

Reading time7 min
Views112K
Сфер применения Linux может быть очень много. Особенно, когда арендовать VPS стало можно от $1 в месяц. Кроме стандартного использования под хостинг сайтов, его используют в качестве сервера для игр (CS:GO, Terraria, Minecraft), в качестве Proxy-сервера и VPN-сервера. Под майнинг криптовалют. Под резервное хранилище бэкапов. Под домашнюю торренто-качалку. А также для тестирования, разработки и просто различных экспериментов. Именно доступность VPS на базе Linux с огромным спектром возможного его применения привела к популяризации Linux. Но желающих использовать Linux значительно больше, чем людей, которые умеют его использовать. И часто именно слабые познания администрирования Linux останавливают людей от его использования. Ну или просто усложняют таким людям жизнь — им приходится часами ковыряться в мануалах, форумах и «статьях для новичков».

Да мне и самому надоело лазить по специализированным форумам, каждый раз, когда приходится сделать шаг влево или шаг вправо относительно того, что я уже научился делать. Именно поэтому, со временем, все типовые вещи я свёл в один скрипт с дружелюбным интерфейсом, который умеет делать всё сам. Начиналась всё с малого. Скрипт просто автоматизировал установку нужного мне софта. Но за полгода он превратился уже в весьма серьёзную утилиту весом более 100 Кб, в которой около 2,5 тысяч строк кода. Скрипт ранее нигде не выкладывался. Использовался только в личных целях мной и несколькими моими товарищами. Пришло время им поделиться с публикой. Уверен, многим людям он способен сэкономить кучу времени.

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


Далее подробнее опишу, что и как он делает.
Читать дальше →
Total votes 106: ↑68 and ↓38+30
Comments181

Реверс-инжиниринг визуальных новелл (часть 2)

Reading time12 min
Views21K

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


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


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


Читать дальше →
Total votes 66: ↑64 and ↓2+62
Comments33

Как проиндексировать логи бизнес-приложений в Hadoop (SolrCloud)

Reading time12 min
Views6.9K

Введение


У одного из наших клиентов возникла задача вынести логи из большинства корпоративных приложений и их баз данных «куда-нибудь» — уж больно с ними много возни: растут как на дрожжах, чисти их периодически, а к некоторым еще и доступ должен быть обеспечен в течение многих лет, да еще и анализ хочется проводить системным образом. Конечно же, вынести логи – это не первичная цель, и по совокупности требований мы выбрали Hadoop, версию от Cloudera (CDH 5).

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

Как одно из решений — использовать поисковый модуль SolrCloud, который входит в комплект Hadoop от Cloudera. В Cloudera «из коробки» входят тулзы для выгрузки данных из баз данных приложений и их индексации пачкой (не построчно). Однако такой способ оказался хоть и рабочим, но более трудоемким и непредсказуемым в настройке, чем, скажем, если бы мы использовали Impala для выборки данных. Поэтому я решил поделиться как мы это делали, в надежде сэкономить время тем, кто столкнется с похожей задачей.

Эта статья описывает детали настройки, а также встреченные в процессе работы особенности.
Читать дальше →
Total votes 9: ↑6 and ↓3+3
Comments20

Переезд проекта с SVN на Git

Reading time8 min
Views71K
image
Много лет подряд в качестве системы контроля версий для большого количества проектов использовали только SVN. Но наступил момент, когда количество разработчиков на одном из проектов заметно увеличилось, проект уже запущен в работу, и нужно как активно разрабатывать параллельно несколько фич, так и фиксить уже имеющиеся баги в оперативном режиме. Единый trunk в SVN не позволяет этого делать, а организация бранчей в нем же превращает жизнь разработчиков в ад. Поэтому было принято решение о переезде этого проекта с SVN на Git.
Читать дальше о том, как это делается от А до Я
Total votes 119: ↑113 and ↓6+107
Comments51

Переезд из Windows в Linux Ubuntu 14.04 LTS вместе с Jetbrains IntelliJ Idea 14.1.5

Reading time3 min
Views12K
Некоторое время назад появилось желание переехать со всем программным обеспечением необходимым для написания Java кода под Linux. В качестве системы назначения был выбран дистрибутив Ubuntu 14.04.3 LTS. Пост не откроет никаких тайн супертонкой настройки операционной системы — все уже давно известно и на тематических форумах все обсуждено. Я лишь опишу проблемы или, возможно, особенности, которые возникли при работе с Jetbrains IntelliJ Idea 14.1.5. Возможно, читатель и не знает, что у него есть проблемы, а значит для него данные решения станут «improve» фишками.
Читать дальше →
Total votes 14: ↑7 and ↓70
Comments12

Black Hat USA 2015: полная история взлома того самого Jeep

Reading time3 min
Views38K
Как Чарли Миллер и Крис Валасек взломали Jeep Cherokee.

image

В начале своего исследования Миллер и Валасек пытались взломать мультимедийную систему Jeep через Wi-Fi. Производитель автомобиля, компания Chrysler, предлагает возможность использования Wi-Fi по подписке. Оказалось, что эту беспроводную связь взломать достаточно легко, из-за того, что пароль на неё генерился автоматически на основе времени, когда машина и мультимедийная система включались впервые.

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



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

И это время составляет ровно January 01 2013 00.00.32 GMT.
Читать дальше →
Total votes 56: ↑52 and ↓4+48
Comments18

Как запустить собственный торрент-поисковик на базе RuTracker?

Reading time14 min
Views44K
Я максимально постараюсь писать без «воды». Минимум лишней отвлекающей информации и разглагольствований. Максимум полезной информации и рабочего кода. Я не буду поднимать вопрос зачем кому-то собственный торрент-поисковик на базе RuTracker. И я не считаю себя гуру программирования. Мы просто сделаем этот сайт вместе. Будем использовать Apache+PHP, MySQL и Sphinx. Сразу предупрежу, что на минимальном виртуальном хостинге сайт будет работать совсем не быстро.

image
Читать дальше →
Total votes 56: ↑33 and ↓23+10
Comments40

По ту сторону игры: открытый курс по геймдизайну

Reading time1 min
Views28K
Уже сейчас на образовательной платформе «Универсариум» можно записаться на онлайн-курс «Гейм-дизайн: по ту сторону игры». Слушатели курса изучат основные этапы разработки дизайн-документа компьютерной игры, выяснят, какими навыками должен обладать геймдизайнер, и узнают, от чего зависит успех проекта.

Преподаватель курса – Алексей Калинин, исполнительный продюсер СООО «Гейм Стрим», минского центра разработки Wargaming, автор 30 настольных и 10 компьютерных игр.


Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments11

XPath наглядно

Reading time1 min
Views60K
XPath является одним из ключевых моментов на дороге к пониманию XSLT. И на первых порах хочется получить какой-нибудь простой способ поэкспериментировать с ним, чтобы в деталях разобраться, как он работает. Способа такого, впрочем, не наблюдается. Приходится или качать совсем не бесплатные XML/XSLT редакторы, или довольствоваться статичными картинками с zvon.org. Может быть, я плохо искал. Но с моей колокольни все обстоит именно так. И когда передо мной в очередной раз встала задача «Объяснить XSLT», в голове и родилась идея крохотного сервиса. После того, как все заработало, было решено выкатить его для всеобщего пользования: наверняка не я один сталкивался с похожими проблемами.
Читать дальше →
Total votes 100: ↑93 and ↓7+86
Comments35

Не пора ли реляционным базам данных на свалку истории?

Reading time10 min
Views32K
Здравствуйте, меня зовут Дмитрий Карловский и я… антиконформист, то есть человек, который не держится за свои привычки и всегда готов их поменять, если в том есть необходимость. Например, как и многие разработчики, я начинал изучение баз данных с реляционных. Хотя реляционная алгебра и довольно красива в своей простоте, я постоянно ловил себя на мысли, что пытаюсь впихнуть круглую фигуру в квадратное отверстие и получалось как-то не герметично.



Нет, я не буду рассказывать вам про MongoDB или ещё какую неполноценную «убийцу SQL». Статей на тему «SQL vs NoSQL» сравнивающих на самом деле реляционные субд с документными и так полно:


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

Давайте сравним типичных представителей упомянутых типов СУБД (от большего к меньшему).

  • Популярность: Oracle, MongoDB, Redis, HBase, OrientDB.
  • Функциональность: OrientDB, Oracle, MongoDB, HBase, Redis.
  • Скорость: очень сильно зависит от задачи, данных и реализации приложения. Я пересмотрел кучу бенчмарков, везде всё по разному.
Читать дальше →
Total votes 53: ↑23 and ↓30-7
Comments339

Эволюция сетевых способов диалогового общения. Часть I

Reading time4 min
Views11K

Доисторическая эпоха: «Вначале не было ничего. Потом появилась Сеть…»



История развития технологий диалогового обмена сообщениями насчитывает почти столько же лет, сколько развиваются сами информационные сети. Необходимость передачи различных служебных сообщений между вычислительными устройствами возникла сразу же после возникновения первых сетевых систем в 1960-х годах. Ради справедливости нужно сказать, что первыми сетевыми сообщениями были вовсе не тексты: все началось с необходимости передачи сервисных оповещений внутри сети, например, о начале печати. И все же, появление первых способов сетевой пересылки текстов не заставило себя ждать.

Уже в первых компьютерных сетях, еще до возникновения первых сетевых стандартов, обмен текстовыми сообщениями между пользователями стал повсеместным явлением. Любопытно, что зарождение Интернета, которому недавно исполнилось 45 лет, также началось именно с передачи текстового сообщения на 640 км между двумя узлами сети ARPANET. Электронная почта появилась двумя годами позже, в 1971-м, а за ней, как грибы после дождя, начали появляться иные способы обмена информацией: почтовые рассылки, новостные группы, доски объявлений и прообразы того, что сегодня мы называем «форумами», а ещё десяток лет назад нежно называли «бибиэски» – от английской аббревиатуры BBS (Bulletin Board System).

И все же, все эти этапы – лишь доисторическая эпоха развития сетевого диалогового общения. Ни один из этих широко распространенных способов обмена данными не обладал способностью мгновенной передачи сообщений, а те, что обладали, не были стандартизированы, вследствие чего так и не получили широкого распространения. Для перехода на качественно новый уровень понадобилось еще полтора десятка лет. За это время были изобретены актуальные поныне стандарт локальных сетей Ethernet, протокол обмена данными TCP/IP и доменные имена, а Интернет с помощью трансатлантического кабеля превратился из американского междусобойчика в международное явление.
Читать дальше →
Total votes 16: ↑12 and ↓4+8
Comments3

Домашний сервер для работы и не только. Организация рабочего места ленивого инженера

Reading time6 min
Views100K
imageОднажды став тем или иным специалистом в сфере IT, каждый из нас начинает окружать себя всевозможными инструментами для работы и отдыха. Далее это перерастает в целый комплекс мероприятий по поддержанию привычек, установленного расписания дня, комфортных условий труда и отдыха. Не претендуя на какую-либо уникальность, все же хотелось поделиться организацией «рабочего» процесса и отдыха ленивого администратора, как результатом знакомства с разными сферами IT, близкими к основной деятельности.

Вспоминая слова одного преподавателя вуза: «Кто такой инженер? Это же лентяй! Вот он лежит на диване, смотрит телевзор. И захотелось ему переключить канал — но вставать то лень! „Ай, ну его, каналы вставать переключать — пойду-ка разработаю пульт дистанционного управления...“. Всегда хотелось сделать что-то интересное и максимально это автоматизировать…
Читать дальше →
Total votes 25: ↑14 and ↓11+3
Comments20

Почему автомобильный аккумулятор нельзя использовать в ИБП?

Reading time7 min
Views357K
Предыстория

На тот момент, когда я первый раз попробовал заменить в ИБП старый аккумулятор ёмкостью 7Ач на старый автомобильный аккумулятор номинальной ёмкостью 65Ач, я ещё не знал, почему этого нельзя делать, и как это может навредить здоровью аккумулятора, самому ИБП и людям, проживающим в одном помещении с ним.

Доработка бесперебойника не заняла много времени, но профит был заметен сразу же. Сто-ватная нагрузка в виде домашнего «сервера» продержалась порядка двадцати часов без внешнего питания, хотя раньше 10 минут — это был предел, которого хватало разве что на корректное завершение работы. Более длительных отключений за время эксплуатации данной модификации замечено не было, а подключение интернета по технологии GPON позволяло серверу оставаться в сети даже при масштабных отключениях электроэнергии.



Но это было давно. А год назад мне случайно попалось на глаза объявление о продаже нескольких бывших в употреблении ИБП APC 3000 за смешные деньги, 4000 рублей за штуку, без аккумуляторов, но рабочие. Немного подумав, решил что надо брать, причём сразу два, правда к моменту покупки цена успела подняться до 5000 рублей за штуку, но меня это не остановило, ведь в магазине за те же деньги предлагали лишь варианты на 1кВт, да и то от всяких noname фирм с не очень лестными отзывами и модифицированным синусом.
Читать дальше →
Total votes 61: ↑54 and ↓7+47
Comments183

Что нас ждет в Liferay 7.0

Reading time4 min
Views27K
Компания Liferay объявила о выходе последней milestone версии Liferay 7.0 m7. Это означает что дальше пойдут уже альфы и беты, в которых будет идти исправление ошибок — функциональных же изменений уже особо не ожидается. И хотя до релиза еще примерно полгода, уже сейчас можно посмотреть что же нового нас ждет в новой версии Liferayimage
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments11

Solar Paper: универсальная «солнечная» зарядная станция

Reading time2 min
Views16K


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

Solar Paper — новая «солнечная» зарядная станция, которая одновременно и практична, и эффективна в работе. Solar Paper способна зарядить аккумулятор современного смартфона (того же iPhone 6) всего за 2.5 часа. При этом солнечные панели очень легкие, а стороны панели — оснащены магнитными клипсами, что позволяет прикрепить панель к любой металлической поверхности.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments16

Интернет-архив планирует оцифровать 40 тысяч видеокассет

Reading time2 min
Views6.7K

Это не гараж с книгами, а склад с коллекцией видеозаписей (40000 кассет за 35 лет)

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

Вскоре после этого фон Штейн стал волонтером в Internet Archive, некоммерческой организации, предложив перевести в цифру 40 тысяч кассет Стоукс (сама она ушла из жизни в 2012). Фон Штейн провел шесть недель, изучая записи Стоукс. В частности, он обнаружил около 60 эпизодов ТВ-шоу «Input», где он сам выступал сопродюсером (1968-1971). Сейчас эти эпизоды уже в Internet Archive, и их можно скачать.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments2

Боаз Альмог — Левитирующий сверхпроводник

Reading time1 min
Views12K


Как может сверхтонкий диск чуть меньше 8 см в диаметре поднимать вес в 70 тысяч раз больше собственного? Боаз Альмог показывает как феномен, известный под названием квантовый замо́к, даёт сверхпроводнику возможность двигаться над магнитным рельсом без трения и без потери энергии. Выступление поражает фантастичностью и захватывающими демонстрациями.


Оригинальное видео


P.S. В комментариях вы можете предложить интересное видео на перевод и озвучивание.
Total votes 15: ↑14 and ↓1+13
Comments24

Выбираем смартфон с мощным аккумулятором: дайджест середины 2015 года

Reading time7 min
Views51K
Шутки про Android и розетки уже давно перестали быть смешными. Тем не менее, проблема автономности устройств на данной операционной системе все равно осталась. Так, среднестатистический Android-фон на одном заряде аккумулятора работает примерно 1-1,5 дня. Разработчик Android в лице Google борется с прожорливостью своего детища путем «допиливания» ПО. Однако ощутимых результатов это не приносит – за последние пару лет прирост автономности оказался незначительным. Если раньше, году в 2010-м, среднестатистический смартфон работал под нагрузкой до полудня, то теперь – только до конца дня. Но не светового, а рабочего, то есть до 6-7-8 вечера. Практика показывает, что бороться с этим можно только одним способом: с помощью выпуска смартфонов с реально мощным аккумулятором. Говоря слово «мощным», я имею в виду «гораздо более емкими, чем у подавляющего большинства аппаратов». Так, типичный 4-дюймовый Android-фон комплектуется аккумулятором на 1 500-1 700 мАч, 4,5-4,7-дюймовые модели – 1 700-2 200 мАч, а 5-дюймовые – 2 200-2 500 мАч. Это стандарт – и стандарт, скажем так, печальный.



Так вот. В этом материале я хочу рассказать о десяти актуальных смартфонах с мощными аккумуляторами, которые сегодня продаются в российских магазинах. Это и относительно простенькие недорогие модели, и аппараты среднего уровня, и, так сказать, «топовые» устройства со всеми современными «плюшками». Таким образом, думаю, каждый пользователь (из тех, хотел бы купить именно смартфон с мощными аккумулятором) сможет подобрать гаджет с необходимыми ему характеристиками и ценой. Дайджест составлен по «формфакторному» принципу – есть группы моделей на 4, 4.5 и 5 дюймов.
Читать дальше →
Total votes 40: ↑22 and ↓18+4
Comments39
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity