Pull to refresh
1
0
Евгений @fly_tiger

User

Send message

Хакер/фрикер 1903 года: взлом «защищенного» беспроводного канала связи

Reading time6 min
Views40K
«Другим моим увлечением, также обнаруженным в раннем возрасте, была практическая магия (фокусы). Узнав, как действует та или иная уловка, я отрабатывал её много раз, пока не достигал совершенства. В какой-то степени именно через фокусы я открыл удовольствие от получения секретных знаний.» Кевин Митник
«manage the adversary’s sensory perception» in order to «confuse, delay, inhibit, or misdirect [his] actions» DARPA`s project «Battlefield Illusion».


В рамках подготовки молодых авторов Хабра в категории «Саурон» появился второй номинант. Позвольте представить — Trephs (Леша), он сделал большую часть работы по переводу с английского (так что с вопросами по переводу к нему).
В этот раз мы решили осветить тему, на мой взгляд вполне достойную Хабра, а именно историю первого взлома информационной системы, про которую я уже упоминал вскользь в посте «История хакерских взломов информационных систем (1903-1971)».
Стоит особо отметить, так это то, что взлом имел исключительно «троллинговый» характер.

Маскелины — та еще семейка. Дед-астроном изучал Венеру и увековечил род Мескелинов тем, что в честь него назвали кратер на Луне, папаша героя нижеприведенного текста, Джон Маскелин, изобрел платный туалет-кабинку и прочие фокусы, а его сынуля, Джаспер Маскелин водил Гитлера за нос (а может и Черчилля) и был настоящим боевым магом-иллюзионистом, «спрятал» Александрийскую гавань, наколдовал немецкий крейсер «Адмирал граф Шпее» и кучу «надувных» танков, а так же помогал пленным с побегами.

О том, как же Невил Маскелин хакнул Маркони с его «суперзащищенным» радио читайте под катом.
Читать дальше →
Total votes 71: ↑66 and ↓5+61
Comments20

Две красивые задачи по алгоритмам

Reading time4 min
Views68K
На этой неделе я начал читать бакалаврам Академического университета базовый курс по алгоритмам. Начинал я совсем с основ, и чтобы тем, кто с базовыми алгоритмами уже знаком, было чем заняться, я в начале пары сформулировал две, наверное, самые свои любимые задачки по алгоритмам. Давайте и с вами ими поделюсь. Решение одной из них даже под катом подробно расскажу. Но не отказывайте себе в удовольствии и не заглядывайте сразу под кат, а попытайтесь решить задачи самостоятельно. Обещаю, что у обеих задач есть достаточно простые решения, не подразумевающие никаких специальных знаний по алгоритмам. Это, конечно, не означает, что эти решения просто найти, но после пары один из студентов подошёл и рассказал правильное решение первой задачи. =) Если же вам интересно посмотреть на начало курса или порешать больше разных задач — приходите к нам на (бесплатный) онлайн-курс, который начнётся 15 сентября.

Задача 1. Дан массив A длины (n+1), содержащий натуральные числа от 1 до n. Найти любой повторяющийся элемент за время O(n), не изменяя массив и не используя дополнительной памяти.


Сразу поясню. В условии не говорится, что каждое число от 1 до n встречается в массиве, поэтому повторяющихся элементов там может быть сколько угодно (если бы все числа входили по разу, а одно — дважды, то задача была бы гораздо проще). Ограничение на использование дополнительной памяти означает, что нельзя заводить дополнительный массив линейной длины, но можно заводить переменные.

Задача 2. Дана матрица nxn, содержащая попарно различные натуральные числа. Требуется найти в ней локальный минимум за время O(n).


Локальным минимумом матрицы называется элемент, который меньше всех своих четырёх соседей (или трёх, если этот элемент лежит на границе; или двух, если это угловой элемент). Обратите внимание, что от нас требуется линейное по n время, хотя в матрице квадратичное по n число элементов. Поэтому мы предполагаем, что матрица уже считана в память. И нам нужно найти в ней локальный минимум, обратившись лишь к линейному количеству её ячеек.

Под катом — решение первой задачи. Ещё раз призываю вас заглядывать под кат только после того, как порешаете задачу. По второй задаче могу какую-нибудь подсказку сказать.
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments82

Котфускация исполняемого .net кода

Reading time6 min
Views65K
(пятница)

Обычно развернутое приложение в файловой системе выглядит как-то так:



Совершенно незащищенное от инструментов типа рефлектора или IlSpy, но что если оно станет таким:



По крайней мере легкий ступор хакеру-неофиту обеспечен. Приятно смотрится, и антивирусы не заинтересуются.
Порефлексировать
Total votes 148: ↑133 and ↓15+118
Comments42

Естественный отбор — враг бота

Reading time1 min
Views68K
Интересный баг только что отловили. Рассказываю.

Имеем сервис с капчами. Чтобы уменьшить время отклика логично генерировать картинки по случайному коду в свободное время в час наименьшей нагрузки. Так и делаем — ставим в крон задачку, делаем 100500 капч (картинка + код в базе) и в течение дня их показываем. На тот случай если прегенерированные капчи все-же закончатся, делаем режим аварийного полета — если отгаданная и, в связи с этим, убираемая из базы капча уменьшает общее число капч до опасного уровня (например, остается меньше 50), то генерируем новую капчу вместо убранной.

Казалось бы, простая и рабочая схема. Так и было до недавнего времени.
Читать дальше →
Total votes 173: ↑150 and ↓23+127
Comments70

Видеопост: сверхзвуковой теннисный шарик, автомат Калашникова и колибри

Reading time3 min
Views36K
Всех с пятницей! У нас накопилась вторая подборка различных удивительных видеороликов. Если пропустили первую, то рекомендуем ознакомиться. Сегодня у нас, в основном, подобрались видео о тех или иных проявлениях физических сил и свойств. И, конечно, наука и техника тоже не остались обделёнными.

Высокоскоростная съёмка столкновения шарика и ракетки для настольного тенниса. Шарик имеет сверхзвуковую скорость



Не знаем, как вы, а мы обалдели дважды. Первый раз, когда шарик (шарик для пинг-понга!) пробил ракетку, второй раз — когда он её вообще сломал к чёртовой матери. И это несмотря на ничтожную массу.
Читать дальше →
Total votes 87: ↑50 and ↓37+13
Comments23

Линейный криптоанализ для чайников

Reading time7 min
Views77K
image

Привет, %username%!
Многим известно, что стандартом по умолчанию в области симметричного шифрования долгое время считался алгоритм DES. Первая успешная атака на этот неубиваемый алгоритм была опубликована в 1993 году, спустя 16 лет после принятия его в качестве стандарта. Метод, который автор назвал линейным криптоанализом, при наличии 247 пар открытых/зашифрованных текстов, позволяет вскрыть секретный ключ шифра DES за 243 операций.
Под катом я попытаюсь кратко изложить основные моменты этой атаки.
Читать дальше →
Total votes 71: ↑67 and ↓4+63
Comments9

Интерфейсы в реальном мире

Reading time5 min
Views179K
IT-интерфейсы часто растут из физических. Например, вот аппаратные чекбоксы:



Вообще, лучший же пример правильного инженерного интерфейса – это гранёный стакан.

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

Сейчас покажу ещё несколько интерфейсов, которые облегчают жизнь. Общий смысл – попробовать понять, как думал разработчик, чтобы сделать что-то удобнее.
Читать дальше →
Total votes 314: ↑304 and ↓10+294
Comments347

Отладка Javascript

Reading time5 min
Views146K
Debug Logo

Многие задают мне один и тот же вопрос:
«Как дебажить этот $%*!%$! JavaScript?».

Так вот, во-первых JavaScript — не $%*!%$! А как я его дебажу — сейчас расскажу.

(Примечание: наверное эта статья больше для новичков. Так что не судите строго)

Читать дальше →
Total votes 192: ↑178 and ↓14+164
Comments78

Как Митник троллил ФБР. Статьи на Хабр из лагеря для школьников

Reading time22 min
Views73K
«Митник, умеешь с телефонами обращаться?» — спросил надзиратель.
«Не особо — ответил я, — но умею вставить вилку в розетку. Вы не волнуйтесь, я быстро учусь».
Два дня я устанавливал и ремонтировал тюремные телефоны. К.Митник «Призрак в сети»
Пару дней назад мне пришла в голову идея привить школьникам вкус к прекрасному и приобщить их к прочтению написанию статей на Хабре.
Дело происходит прямо сейчас, я сижу в лагере в классе робототехники (лагерь необычный, а с блэкджеком и курсами по олимпиадному программированию, разработкой приложений и робототехнике) и пишу эти строки.
Обсуждая темы информационной безопасности, взлома Wi-Fi сетей, 3d-принтеры, Arduino, брутфорс и асимметричное шифрование, выяснилось, что многие (школьники, школьницы, вожатые и преподаватели) активно читают Хабр и пользуются им как справочным пособием для своих проектов.
Идея совместного написания статьи возникла у меня тогда, когда при обсуждении самых прикольных статей за последнее время ребята сослались на статью, где «один знакомый проник на конференцию Митника». Пришлось признаться, что это про моего знакомого и, в развитие темы этичного хакерства, я предложил молодежи попробовать свои силы в написании интересных постов.



Единственный момент когда можно найти всех участников лагеря — это обед (в Хогвартсе знали толк, когда произносить речи), и я объявил о наборе добровольцев. Откликнулось несколько ребят. В тот же день на лагерной доске объявлений для поддержания интереса я развесил объявления.

Цели:
— разжигание интереса к Хабру, информационной безопасности, социальной инженерии;
— показать как то, что раньше считалось нереальным становится реальным (ближайшая зона роста);
— вдохновить молодых авторов на написание статей на Хабре;
— вдохновить/вовлечь ветеранов Хабра на помощь начинающим авторам (джедаи-падаваны).

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

План работ:
первый этап — совместное написание статьи на Хабр, перевод статьи из «Time» и ролика Митника «How to Troll the FBI», а так же дополнить пост интересными моментами из книги про взаимоотношения Митника и ФБР
второй этап — каждый описывает одно событие для второй части статьи «История хакерских взломов информационных систем» (первая часть — История хакерских взломов информационных систем (1903-1971))
третий этап — самостоятельное написание своей статьи под моим присмотром (примерные темы: "Google Code Jam. Интервью с финалистом — Романом Удовиченко (10-е место)", «Будущее робототехники. Интервью с экспертами ТРИК», «Кузница белорусских программистов» и т.д.)
UPD 28.08.2014 первый «Саурон» появился.

Результаты первого этапа под катом.
Читать дальше →
Total votes 118: ↑105 and ↓13+92
Comments15

Сисадмины. Поколение NEXT

Reading time3 min
Views60K
Некоторое время назад, мне довелось в рамках совместного проекта пообщаться с представителями мелкого интегратора Москвы. В том числе, я ради интереса поговорил с ребятами, которых называли отделом системных администраторов. Средний возраст — 26 лет, многие имеют по 3-4 сертификата от Microsoft или даже Oracle. Занимаются биллинговой системой одного очень крупного оператора России. Это лицевая часть, солидная, но существует и другая, теневая сторона, которую обычно прячут от посторонних глаз и о которой я узнал исключительно потому, что пообщался с работниками. Наиболее полно эту часть характеризует диалог, который состоялся у меня с таким «администратором»:
Читать дальше →
Total votes 113: ↑68 and ↓45+23
Comments185

Инженерная культура, которую мы потеряли?

Reading time5 min
Views239K

Этот пост, наверно, правильно воспринимать как крик души, как попытку найти поддежку в профильном сообществе и окончательно не потерять веру в текущий уровень высшего инженерно-технического образования. То, что сейчас все крайне непросто в этой сфере, не говорит только ленивый, но я хочу постараться дать вам некую объективную информацию, а выводы… Выводы, думаю, все сделают сами. Кому интересно, прошу под кат.
Читать дальше →
Total votes 212: ↑199 and ↓13+186
Comments728

Нестандартные решения сложных задач

Reading time4 min
Views19K
Меня интересуют различные методы системного и творческого мышления, которое можно использовать в реальной жизни для решения сложных задач. О нескольких методах расскажу в данной статье.
Недавно прочитал книгу Торп С. — Учебник креативного мышления. Простой подход к нестандартным решениям – 2010. В ней предлагается интересный подход для развития навыков решения сложных задач.

Основная мысль автора – чтобы решать сложные задачи, нужно сворачивать с колеи шаблонного мышления, нарушать правила, которые зачастую нам не дают взглянуть на проблему шире. Вот что пишет автор:
Неспособность разрешить какую-то проблему вполне может объясняться тем, что вы застряли в «колее» правил. Мы все живем по правилам — укоренившимся в нас шаблонам мышления, которые ошибочно принимаем за истину. Наши правила формируются естественным образом в результате многократного использования одних и тех же идей. Следуя правилам, мы постепенно увязаем в глубокой «колее», и тогда любые неординарные идеи остаются вне нашего поля зрения.

Как нарушать правила, отлично показано на примере игры «Крестики-нолики».
Многие неразрешимые проблем похожи на игру в «крестики-нолики»» Выигрыш кажется невозможным, как бы ты не играл. Однако нарушив (или расширив) правила можно получить победу множеством путей.


Читать дальше →
Total votes 32: ↑16 and ↓160
Comments4

Папа, а почему на ноль делить нельзя?

Reading time6 min
Views238K
Моя трёхлетняя дочка София в последнее время частенько упоминает «ноль», например, в таком контексте:
— Соня, вот ты вроде сначала не послушалась, а затем послушалась, что же получается?..
— Ну… ноль!

Т.е. ощущение отрицательных чисел и нейтральности нуля уже имеет, о как. Скоро поинтересуется: почему же это на ноль делить нельзя?
И вот решил я простыми словами записать всё, что я ещё помню про деление на ноль и всё такое.
Читать дальше →
Total votes 262: ↑192 and ↓70+122
Comments281

Кош на комплексной плоскости

Reading time6 min
Views65K
В какой-то из весенних дней этого года я ехал в троллейбусе и листал комикс о Коше. В одном из выпусков была такая фраза «НО! Её можно понять, она же фракталами в горизонт перетекает, я бы тоже замешкался...». После этого я посмотрел в окно и понял, что если мы возьмём два подходящих дробно-линейных преобразования комплексной плоскости a(z) и b(z), и рассмотрим систему итерированных функций для a(z), b(z), a−1(z), b−1(z), взяв в качестве начального множества картинку с Кошем, то Кош будет перетекать фракталами в горизонт!

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

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



Читать дальше →
Total votes 214: ↑206 and ↓8+198
Comments26

Дао программирования, часть 1

Reading time4 min
Views52K

Книга 1


Безмолвная пустота.

И сказал Великий Программист: «Если ты научился выхватывать ошибочный код из эксепшена, значит пришла пора тебе уходить».
Читать дальше →
Total votes 108: ↑74 and ↓34+40
Comments16

Как улучшить свой стиль программирования?

Reading time6 min
Views139K

Исповедь 1


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

Весь мой опыт программирования складывается из университетских работ и пары лет пребывания в различных компаниях. Критикующие меня люди неоднократно говорили мне, что в целом я разбираюсь в теме, так что я далеко не клинический случай, как можно было подумать. Однако, очевидно, я выработал совсем не те программистские привычки (как минимум, на взгляд работодателя) и мне нужно срочно изменить их. Везде, где бы я ни работал, мои решения, использующие иерархии мелких классов с делегированием поведения, признавались плохими. Говорят, будто так и надо писать, но это не так. Потому что всё это «как надо» может стоить мне работы.
Читать дальше →
Total votes 235: ↑202 and ↓33+169
Comments248

Дюжина логических задач с собеседований

Reading time2 min
Views315K
image

Не знаю, как у вас, но у меня любимая часть интервью — логические задачи.
Довелось пройти немало собеседований на вакансию разработчика, поэтому набралась небольшая коллекция.
Спешу поделиться с вами!

Некоторые задачи проще и широкоизвестные, другие заставляют хорошенько задуматься.
Ответы пока что публиковать не буду, надеюсь, вы сами сможете всё решить.
Предлагаю размять свой мозг…
Читать дальше →
Total votes 71: ↑55 and ↓16+39
Comments244

Ковыряционный анализ, балалайка, божена – а как вы разговариваете с коллегами?

Reading time8 min
Views66K
imageСвой собственный сленг рано или поздно образуется в любой команде. Айтишный же, наверное, складывается на 90% из словечек, которые более-менее понятны любой другой компании-разработчику, особенно в контексте. А на 10% — из особенностей фунциональности разрабатываемого продукта или конкретного разработчика.
Под катом – профессиональный словарик девелоперов Parallels. А какие у вас в команде крылатые выражения?
Читать дальше →
Total votes 171: ↑129 and ↓42+87
Comments67

Старый трюк — работает всегда?

Reading time2 min
Views45K
Облачный эмулятор Internet Explorer 9 в окне браузера Google Chrome.

image

Предисловие


Эта история началась с того, что я искал эмулятор IE7/8/9 для проверки одного из веб проектов, мне нужно было проверить как IE9 реагирует на SSL сертификат.
Сайт то я проверил — все хорошо, и после чего я задал себе вопрос: а что будет если....? И да я не имею никакого отношения к компании выше.
Поехали!
Total votes 90: ↑80 and ↓10+70
Comments38

MediaTek и LTE: первые результаты

Reading time2 min
Views14K
Как известно, чипсеты с интегрированными LTE-модемами до недавних пор имелись только в линейке Qualcomm. Именно поэтому подавляющее большинство Android-смартфонов, продающихся на Западе, базируются на платформах этого производителя: местным операторам, инвестировавшим в развитие сетей четвертого поколения, необходимо отбивать средства, и они «приказывают» разработчикам смартфонов реализовывать LTE в своих моделях. Именно поэтому в модификациях Samsung Galaxy S5 для США, Европы, Южной Кореи и, кстати, России используется чипсеты Qualcomm, а в варианте для той же Украины – Exynos, где поддержка LTE не предусмотрена.


Коллаж из Интернета

Тайваньской компании MediaTek, извечному конкуренту Qualcomm, путь на развитые рынки до недавних пор был заказан: решений с LTE в ее линейке не было. Однако в начале 2014 года дело сдвинулось с мертвой точки: на выставке CES 2014 тайваньцы показали выполненный в виде отдельного модуля (да, это не интегрированное решение, но лучше, чем ничего) модем MediaTek MT6290, поддерживающий в том числе и LTE. Потом еще были анонсированы топовые чипсеты MT6595 и MT6732, в которых также есть поддержка сетей четвертого поколения, однако устройства на их основе появятся в продажи ближе к концу года. То есть не «здесь» и не «сейчас».
Читать дальше →
Total votes 30: ↑26 and ↓4+22
Comments2

Information

Rating
Does not participate
Location
Казань, Татарстан, Россия
Registered
Activity