Про блокировку Телеги

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

Идея не моя, просто я на это насмотрелся досыта, когда компьютерные вирусы препарировал. Технология DGA (domain generation algorithm).

При запуске программа сначала пытается идти на свои основные серверы. ОК, допустим Роскомгестапо уже подсуетилось, и заблокировало их. Не проблема, вот у нас, например, сегодня 16 апреля 2018 года. Соответственно, идём на 2018Apr16.com, который вчера был предусмотрительно зарегистрирован владельцами мессенжера. Завтра пойдём на 2018Apr17.com и так далее. Это и есть алгоритм. Роскомгестапе придётся каждый день отрывать зад от стула и блокировать всё новые и новые серверы.

Конечно, вышеописанный пример очень примитивен и алгоритм быстро вычисляется. В реальности алгоритмы намного более сложные, и имена доменов намного более обскурны. Вот, например, такие доменные имена использовал шифровальщик Locky:

bkadufmdyf[.pm]
kpvoxwgf[.pm]
fysck[.fr]
hsasjielgfkneh[.ru]
qquvjijtvatj[.in]
edmgbqygn[.de]
nbavfpb[.uk]
wyusb[.yt]

В нём, правда, алгоритм генерации доменов тоже не фонтан. Но в Телеге сидят настоящие программисты, которые умеют в криптографию, я верю, что они смогут придумать такой алгоритм, который не смогут раскусить интернет-гестаповцы. Потом, кто сказал, что надо генерировать ОДНО доменное имя? А двести тысяч ежедневно — не хотите? (абсолютно реальный случай, вирус GameOver Zeus). Особенно учитывая, что на данный момент процедура блокировки работает в полностью ручном режиме, блокировать 200 000 доменов лапками, да ещё ежедневно… как говорится, это пишется с мягким знаком. Пока владельцу ботнета Zeus всем миром не прищемили хвост, никто, ни ФБР, ни ЦРУ ничего сделать с самим вирусом не могли. Так победим. Удачи.

Получил письмо

Все помнят шутку про Страшный Компьютерный Вирус? Ну, там начинающий крякер посылал письмо примерно такого содержания: “На вашем компьютере есть вирус. Я ещё начинающий программист, поэтому нужна ваша помощь. Зайдите в командную строку и наберите format c:”

В каждой шутке, как известно…

Приехало сегодня:

Gоod day.
Dо nоt mind оn my illiteraсy, I аm from Jараn.

I uploаded thе mаliciоus рrоgram on yоur systеm.

Sinсe that momеnt I pilfеred аll рrivy baсkground from your systеm. Additiоnаlly I have somе morе соmpromising еvidenсе. The mоst interеsting evidеncе that I stolе- its а vidеotаpе with yоur masturbаtion. I аdjustеd virus оn a рorn wеb site аnd aftеr you loаded it. Whеn you decidеd with thе vidеo and tapped оn а plаy buttоn, my dеlеteriоus sоft аt оnce sеt up on yоur system. Aftеr adjusting, yоur сamеrа shoоt thе videоtaрe with you self-abusing, in аddition it sаvеd рrecisely the pоrn videо yоu mаsturbatеd on. In next fеw days my mаlwarе сollесted аll your soсiаl аnd work сontacts.

If you desire to eliminate all the evidence- transfer me 200 united state dollar in Bitcoins.
It is my Bitcoin wallet address – 14Sv5Bc3g3MXEY2PkvpPt8VCL2tb9hyuNz
You have 32 h. to go from this moment. As soon as I receive transaction I will erase the evidence permanently. Other way I will send the tape to all your friends.

Круче всего, конечно эта фраза: I adjusted virus on a porn site and after you loaded it.

Интересно, какой язык для этого говнокрякера родной? Думаю, что китайский.

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

Вот и поглядим активность этого кошелька: https://blockchain.info/address/14Sv5Bc3g3MXEY2PkvpPt8VCL2tb9hyuNz

4 апреля кто-то ему отправил похожую сумму, 220 долларов (0.0319 BTC). Курс биткоина постоянно прыгает, так что вполне возможно, что тогда биткоин и стоил те самые двести долларов.

Блокчейн

Большинство моих ЖЖ-друзей, наверное, в курсе, что это, и как это работает. Но вдруг кто не знает или не понимает.

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

Если два эксперта проведут дактилоскопирование одного и того же человека, они получат (во всяком случае, должны) одинаковый результат. Так и с компьютерами — если два человека будут использовать один и тот же алгоритм хеширования на одном и том же наборе данных, они должны получить один и тот же хеш. То-есть, если у тебя есть кусок текста, и у меня есть кусок текста, мы его хешируем одним и тем же алгоритмом, и у нас получается одинаковый хеш — это значит, что куски текста, которые мы анализировали, 100% идентичны (1).

Теперь построим свой собственный примитивный блокчейн. Блокчейн — это block chain, т.е. цепь из блоков. Каждым блоком внутри нашей цепи будут 5 кусков текста, разделённых запятыми: хеш предыдущего блока, три куска “полезной нагрузки”, и хеш для этого блока. Хранить в блокчейне можно любые данные, но допустим у нас будет хранится информация о финансовых транзакциях. Использовать будем алгоритм хеширования MD5 (2)

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

md5sum <<< "abcdefghijklmopqrstuvwxyz1234567,Маша,Олег,5 рублей", получаем хеш a61d142c8be7fac8b41da05d11c9f76e.

Всё, вот первый блок в нашем блокчейне:

abcdefghijklmopqrstuvwxyz1234567,Маша,Олег,5 рублей,a61d142c8be7fac8b41da05d11c9f76e

Строим второй блок, где Серёжа заплатил Тане 3 рубля:

md5sum <<< "a61d142c8be7fac8b41da05d11c9f76e,Серёжа,Таня,3 рубля", получаем хеш 20e22c43963d6ee9bbc71d65c4251492, и, соответственно, блок:

a61d142c8be7fac8b41da05d11c9f76e,Серёжа,Таня,3 рубля,20e22c43963d6ee9bbc71d65c4251492

И теперь наш блокчейн выглядит так:

abcdefghijklmopqrstuvwxyz1234567,Маша,Олег,5 рублей,a61d142c8be7fac8b41da05d11c9f76e
a61d142c8be7fac8b41da05d11c9f76e,Серёжа,Таня,3 рубля,20e22c43963d6ee9bbc71d65c4251492

Ну, и так далее, блоков можно добавлять до окончания места на жёстком диске.

Чем это круто? Тем, что блокчейн лежит в свободном доступе, и ЛЮБОЙ человек, взяв этот блокчейн, может собственноручно перевычислить все хеши и проверить все записи: если хеши совпадают, значит, информации можно доверять. Именно этим и занимаются майнеры — они перепроверяют транзакции для криптовалют, то-есть, обеспечивают функционирование платёжной системы, за что им отстёгивают денег.

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

1. 100% гарантии, разумеется, быть не может, но если алгоритм шифрования нормальный и не имеет коллизий (это когда два разных набора данных дают один и тот же хеш), то вероятность совпадения будет примерно 1/количество возможных хешей, т.е. для хеша длиной 128 бит это 2.94E-39, или пренебрежительно мало. Для хеша длиной 512 бит это вообще число со 150+ символами после десятичной точки.
2. Алгоритм хеширования MD5 достаточно хреновый по современным меркам, и имеет коллизии. Правда, для реально читаемого человеком текста можно пренебречь — все существующие примеры коллизий это хеши специально сгенерированных двоичных данных. Но в реально рабочих приложениях, тем не менее, рекомендуется использовать более коллизионноустойчивые алгоритмы, типа SHA-256 (используется в блокчейне для биткоина) или SHA-3.

PowerPC? DEC Alpha?

Пишут, что Эппл собирается отказываться от Интеловских x86/x64 процессоров в своих ноутбуках. В принципе, Эппл и до x86 прекрасно себе жил с RISC-процессорами IBM PowerPC. И Microsoft особо в ус не дула — Windows NT 4.0 прекрасно фурыкал как на Интеле, так и на DEC Alpha, и на PowerPC. Но так как x86 захватывал всё большую и большую часть рынка, постепенно софтописатели сфокусировали свои усилия на поддержке именно этой платформы, и к середине 2000х годов архитектура x86 стала практически монополистом, за исключением рынка эмбедщиков и прочих специализированных приложений.

А тем временем самым популярным пользовательским процессором постепенно становится тоже RISC-процессор ARM. Именно эта архитектура стоит в смартфонах, планшетах, “умных” телевизорах, и т.д. И эволюционирует эта платформа семимильными шагами — четырёхядерным процессором в телефоне уже никого не убедишь, а Эппловский A11 по производительности не сильно хуже i7! Поэтому рискну предположить, что заменой Интелу будет именно следующее поколение ARM, A12/A13. И переделывать практически ничего не придётся, уже все решения отточены.

Цисководу на заметку

Настройка SSH аутентификации в коммутаторы и маршрутизаторы Cisco по RADIUS:

http://www.ipbalance.com/security/radius/1165-windows-server-2012-as-radius-for-cisco-router-a-switch.html

Чтобы не как при царе горохе, в разных устройствах — разное имя пользователя и пароль. Хотя, конечно, аутентификация по приватному ключу SSH сильно понижает остроту проблемы.

PS: Статья про IOS, конфигурация RADIUS на NX-OS в новых свитчах немного другая, см. соотв. документ:

https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus9000/sw/6-x/security/configuration/guide/b_Cisco_Nexus_9000_Series_NX-OS_Security_Configuration_Guide.html

Отдал часы мужику

В продолжение истории.

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

Выяснилось до предела тупое — к нему залезли в дом в то время, когда он с семьёй был в Мексике. Украли часы и 800 долларов. Видимо, воры были не полными кретинами, так что часы выкинули. Не полными кретинами — потому что для того, чтобы использовать часы, их надо регистрировать с Apple ID. По запросу суда Apple мгновенно выдаст по серийному номеру всю инфу насчёт гражданина, зарегистрировавшего краденый продукт. Так что эппловские продукты красть бесполезно, разве только если ты спецом не хочешь навести на себя ментов.

И залезли к нему тоже по-тупому, так как он в фейсбуке разместил фотографию из Мексики — “заходите, дорогие воры, нас дома нет”. Народ в массе, всё же идиоты, не понимают, что излишняя разговорчивость в соцсетях может довести до цугундера.

До кучи выяснилось, что мужик является молодёжным пастором. Возможно, кто-то из паствы знали о том, что он уезжает и вольно или невольно выступили в роли наводчиков, а может, и самих воров.