Люблю придумывать ответы на вопросы, которые никто не задает. Есть такая штука как шифр Вернама - случайная гамма побитно складывается с открытым текстом (обычный XOR). И то и другое в свое время пробивали на перфоленте в пятибитном телеграфном коде Бодо (единица скорости передачи информации "бод" названа в его честь). Если лента той же длины, что и текст и никогда не используется повторно, то это невзламываемый одноразовый блокнот.
С 1919 года много воды утекло, а я в очередной раз задумался об ошибках в шифровании, которые делают новички вроде Dark Leech и ЦРУ. И те, и другие погрязли в грехе и пользуются шифром Вернама с коротким ключом, чтобы скрыть строки от невооруженного глаза. Так как мальварь в основном пишется на Си, то есть одна особенность. Если символ ключа совпадает с символом открытого текста, то в результате побитного сложения получится ноль, а ноль в Си используется как маркер конца строки, то есть строка попросту обрежется.
Возникает вопрос, как сгенерировать XOR-ключ так, чтобы строки не обрезались? Отдельные уникумы пробуют случайные ключи до тех пор, пока все строки не начнут зашифровываться и расшифровываться правильно. И мы их за это презираем, конечно. Давайте, просто запишем все строки в виде последовательности бит, строка за строкой, а затем пройдемся по диагонали, меняя ноль на единицу, а единицу на ноль. Получившаяся из инвертированной диагонали строка отличается от каждой строки в таблице, как миниму одним битом https://bit.ly/3ef9LXu Георг Кантор в 1891 году доказал таким образом, что действительных чисел куда больше, чем натуральных. Фокус кажется простым только на первый взгляд.
Ричард Скрента автор одного из первых вирусов для Apple II, видимо чувствовал что-то подобное, потому в текстовой строке в Elk Cloner он выставил восьмой, бесполезный с точки зрения латиницы бит, наводя ужас на пользователей русской кодировки KOI-7/KOI-8: "иллегал яуантиты еррор" https://bit.ly/3H0hZzf Но принцип понятен, нужно подобрать ключ таким способом, чтобы он не мог совпасть ни с одним символом открытого текста. Достаточно обычного решета, чтобы отсеять символы ключа совпадающие сс текстом в определенной позиции.
Как говорится, не ракетостроение https://pastebin.com/UAH6PRNV
P.S. И делать так конечно не нужно. А как нужно - это уже полезный вопрос, так что как-нибудь в другой раз.
С 1919 года много воды утекло, а я в очередной раз задумался об ошибках в шифровании, которые делают новички вроде Dark Leech и ЦРУ. И те, и другие погрязли в грехе и пользуются шифром Вернама с коротким ключом, чтобы скрыть строки от невооруженного глаза. Так как мальварь в основном пишется на Си, то есть одна особенность. Если символ ключа совпадает с символом открытого текста, то в результате побитного сложения получится ноль, а ноль в Си используется как маркер конца строки, то есть строка попросту обрежется.
Возникает вопрос, как сгенерировать XOR-ключ так, чтобы строки не обрезались? Отдельные уникумы пробуют случайные ключи до тех пор, пока все строки не начнут зашифровываться и расшифровываться правильно. И мы их за это презираем, конечно. Давайте, просто запишем все строки в виде последовательности бит, строка за строкой, а затем пройдемся по диагонали, меняя ноль на единицу, а единицу на ноль. Получившаяся из инвертированной диагонали строка отличается от каждой строки в таблице, как миниму одним битом https://bit.ly/3ef9LXu Георг Кантор в 1891 году доказал таким образом, что действительных чисел куда больше, чем натуральных. Фокус кажется простым только на первый взгляд.
Ричард Скрента автор одного из первых вирусов для Apple II, видимо чувствовал что-то подобное, потому в текстовой строке в Elk Cloner он выставил восьмой, бесполезный с точки зрения латиницы бит, наводя ужас на пользователей русской кодировки KOI-7/KOI-8: "иллегал яуантиты еррор" https://bit.ly/3H0hZzf Но принцип понятен, нужно подобрать ключ таким способом, чтобы он не мог совпасть ни с одним символом открытого текста. Достаточно обычного решета, чтобы отсеять символы ключа совпадающие сс текстом в определенной позиции.
Как говорится, не ракетостроение https://pastebin.com/UAH6PRNV
P.S. И делать так конечно не нужно. А как нужно - это уже полезный вопрос, так что как-нибудь в другой раз.
👍1
С удовольствием наблюдаю за тем, как минцирк, отчаявшись загнать людей в самое лучшее приложение в мире, перешел от принуждения к подкупу, и скупает пользователей по $37 за доверчивую голову. Наиболее предприимчивые из них придумывают все новые и новые схемы обнала "вовиной тысячи". Как по мне дороговато, андроидная загрузка на черном рынке стоит пятерку. Однако, многие в ленте хвастаются новыми книжками, что радует.
Ладно, все побежали и я побежал (не за всратой тысячей конечно, а просто посмотреть, что я читал за последние пару недель).
Из старого, но хорошего "Circle of Treason" Граймс и Вертфей про то как ловили Рика Эймса - контрразведчика из ЦРУ шпионившего в пользу советов https://amzn.to/3sropna Он сдал десяток ценных агентов, большую часть расстреляли. Не смотря на дисклеймер "Все утверждения относительно фактов, мнений и аналитики авторские и не отражают официальную позицию или взгляды ЦРУ или других правительственных агентств США" книжка написана непосредственными участниками расследования. И как всегда бывает с подобными книжками, интересно не только то, что они говорят, но и то, о чем умалчивают.
В "Tower of Secrets" https://bit.ly/3ecjiyG, которую написал перебежчик из восьмого главного управления КГБ (связь и криптография) Виктор Шеймов, умолчания и "приветы" бывшим коллегам приобретают такой размах, что я, если честно, мучительно долго пытался отодрать сову от глобуса и, дочитав, отложил книгу с недоумением.
Шеймова долго считали погибшим ("убийство на Ждановской", то самое, когда пьяные мусора вальнули гебиста, закончившееся самоубийством министра Щелокова). Шеймова сдал Роберт Ханссен, контрразведчик ФБР и советский шпион, и я уже успел увязнуть в абсолютно лишних биографических подробностях в "Spy" Девида Вайза https://amzn.to/3FitTnO
Понравилась "Russians Among Us" Гордона Кореры https://amzn.to/3skIbk6 про российско-советских шпионов глубокого залегания, за которыми ФБР следили годами и летом 2010 года их решили брать. Нетривиальная задача, учитывая то, что часть нелегалов резко засобиралась в Москву, ЦРУ наоборот нужно было вытащить своего агента Потеева из Москвы, связной офицер под неофициальным прикрытием Метсос засветился на Кипре, а в Штаты приехал Медведев жрать бургеры, твитить в твиттеры и слушать про перезагрузку. Что-то пророческое есть в том, что когда Клинтон и Лавров нажимали на символическую красную кнопку, на ней по ошибке написали "перегрузка".
Рассматривался даже вариант прямым текстом сказать Медведеву, что эти штучки времен холодной войны пора прекращать. Но в отличии от "вагнеровцев", в итоге решили ничего не говорить, а шпионов арестовать. В качестве уступки, администрация Обамы попросила контриков подождать, пока наследник медвежонок сядет в самолет, и после арестов сами же попытались преуменьшить значимость операции. В самой РФ тема зашла на ура и, к примеру Глеб Павловский, говорил что поменяли "сертифицированных разведчиков на группу клоунов" https://bbc.in/3sokSpo
Клоуны, как же! На подготовку и работу с нелегалами, которые успешно выдают себя за американцев в Америке КГБ/СВР потратили десятилетия и миллионы долларов. Рухнула берлинская стена, Таманская и Кантемировская дивизии заезжали в Москву, танки хуярили по парламенту, первая чеченская, кто-то носил туда-сюда коробки из под ксерокса и голосовал, чтобы не проиграть, расширялось НАТО (на эту тему свеженькая "Not one inch" https://bit.ly/3J2AbtQ), а эти люди продолжали шпионить, как сукины дети.
Одним словом, чтобы не портить "reset" с Россией их быстро поменяли. На Сутягина, пару офицеров КГБ, работавших на ЦРУ и Скрипаля (того самого, которого россияне отравят в Солсбери). На описании того, как Путин вместе со своими шпионами поют хором в Кремле "С чего начинается родина..." я бы с удовольствием посмеялся, но вспомнил о том, что у нас Служба безпеки чуть менее, чем полностью состоит из неадекватных долбоебов, жадных пидорасов и российской агентуры под руководством клоунов, и стало как-то не смешно...
Ладно, все побежали и я побежал (не за всратой тысячей конечно, а просто посмотреть, что я читал за последние пару недель).
Из старого, но хорошего "Circle of Treason" Граймс и Вертфей про то как ловили Рика Эймса - контрразведчика из ЦРУ шпионившего в пользу советов https://amzn.to/3sropna Он сдал десяток ценных агентов, большую часть расстреляли. Не смотря на дисклеймер "Все утверждения относительно фактов, мнений и аналитики авторские и не отражают официальную позицию или взгляды ЦРУ или других правительственных агентств США" книжка написана непосредственными участниками расследования. И как всегда бывает с подобными книжками, интересно не только то, что они говорят, но и то, о чем умалчивают.
В "Tower of Secrets" https://bit.ly/3ecjiyG, которую написал перебежчик из восьмого главного управления КГБ (связь и криптография) Виктор Шеймов, умолчания и "приветы" бывшим коллегам приобретают такой размах, что я, если честно, мучительно долго пытался отодрать сову от глобуса и, дочитав, отложил книгу с недоумением.
Шеймова долго считали погибшим ("убийство на Ждановской", то самое, когда пьяные мусора вальнули гебиста, закончившееся самоубийством министра Щелокова). Шеймова сдал Роберт Ханссен, контрразведчик ФБР и советский шпион, и я уже успел увязнуть в абсолютно лишних биографических подробностях в "Spy" Девида Вайза https://amzn.to/3FitTnO
Понравилась "Russians Among Us" Гордона Кореры https://amzn.to/3skIbk6 про российско-советских шпионов глубокого залегания, за которыми ФБР следили годами и летом 2010 года их решили брать. Нетривиальная задача, учитывая то, что часть нелегалов резко засобиралась в Москву, ЦРУ наоборот нужно было вытащить своего агента Потеева из Москвы, связной офицер под неофициальным прикрытием Метсос засветился на Кипре, а в Штаты приехал Медведев жрать бургеры, твитить в твиттеры и слушать про перезагрузку. Что-то пророческое есть в том, что когда Клинтон и Лавров нажимали на символическую красную кнопку, на ней по ошибке написали "перегрузка".
Рассматривался даже вариант прямым текстом сказать Медведеву, что эти штучки времен холодной войны пора прекращать. Но в отличии от "вагнеровцев", в итоге решили ничего не говорить, а шпионов арестовать. В качестве уступки, администрация Обамы попросила контриков подождать, пока наследник медвежонок сядет в самолет, и после арестов сами же попытались преуменьшить значимость операции. В самой РФ тема зашла на ура и, к примеру Глеб Павловский, говорил что поменяли "сертифицированных разведчиков на группу клоунов" https://bbc.in/3sokSpo
Клоуны, как же! На подготовку и работу с нелегалами, которые успешно выдают себя за американцев в Америке КГБ/СВР потратили десятилетия и миллионы долларов. Рухнула берлинская стена, Таманская и Кантемировская дивизии заезжали в Москву, танки хуярили по парламенту, первая чеченская, кто-то носил туда-сюда коробки из под ксерокса и голосовал, чтобы не проиграть, расширялось НАТО (на эту тему свеженькая "Not one inch" https://bit.ly/3J2AbtQ), а эти люди продолжали шпионить, как сукины дети.
Одним словом, чтобы не портить "reset" с Россией их быстро поменяли. На Сутягина, пару офицеров КГБ, работавших на ЦРУ и Скрипаля (того самого, которого россияне отравят в Солсбери). На описании того, как Путин вместе со своими шпионами поют хором в Кремле "С чего начинается родина..." я бы с удовольствием посмеялся, но вспомнил о том, что у нас Служба безпеки чуть менее, чем полностью состоит из неадекватных долбоебов, жадных пидорасов и российской агентуры под руководством клоунов, и стало как-то не смешно...
Чтобы отвлечься от шпионских страстей пролистал "Real-World Cryptography" Девида Вонга https://bit.ly/3svUXfP Многообещающе выглядит "No Shortcuts" Макса Смитса, о том как различные государства строят "кибервойска", но она еще не вышла, так что буду рад, если посоветуете, что-нибудь еще.
"Печальная правда заключается в том, что в последние годы нерадивая военная администрация позволила шпионажу и коварной пропаганде пустить корни настолько глубоко, что сегодня власти оказались бессильны искоренить их пагубный рост". Вильям Ле Кью не занимал постов в либеральном правительстве Генри Асквита, он писал популярные романы о шпионах, и добился такого градуса общественной паранойи, что шпионы ̶Ф̶С̶Б̶ Кайзера мерещились под каждым кустом.
Так что в 1909 году собрался Комитет Имперской Безопасности (что-то вроде СНБО), и они пришли к выводу о том, что "представленные свидетельства" (в основном подчерпнутые в фантастических историях Ле Кью из Daily Mail и не менее упоротых писем неравнодушных граждан) "не оставляют сомнений в том, что разветвленная система немецкого шпионажа действует в нашей стране и у нас нет организации, чтобы следить за ней и понимать её цели", так и появилось Секретное Бюро в военном министерстве.
В начале Бюро состояло всего из двух человек Келла и Каммингса. Два капитана никак не могли договориться между собой, и они решили разделить обязанности - Каммингс занялся разведкой, а Келл контрразведкой. Так и появились MI5 и MI6.
Сэр Келл гонялся за ̶л̶а̶й̶к̶а̶м̶и̶ ̶и̶ ̶р̶е̶п̶о̶с̶т̶а̶м̶и̶ фикцией. Пока он со своими немногочисленными помощниками искал несуществующих шпионов из Abteilung III b (военная разведка, спецслужбы неизбежно порождают развитую бюрократию, и та же MI5 тогда называлась Military Operations 5(g) Nachrichten-Abteilung - разведка ВМС шпионили как последние сукины дети. Но ему однажды необыкновенно повезло. Любимый шпион Кайзера Густав Стейнхауер не придумал ничего лучше, чем вербовать агентов по переписке.
Келл случайно услышал, как двое немецких беизнесменов обсуждают письмо, в котором Стейнхауер напоминал соотечественникам о том, что Хохзеефлоту нужно помогать. После чего британская контрразведка выпросила у министра внутренних дел Черчиля ордера по спискам, завели себе ̶М̶и̶р̶о̶т̶в̶о̶р̶е̶ц̶ картотеку, и взялись потрошить почту. Уже в августе 1914, через несколько дней после начала войны, агентство состоящее из семнадцати человек смогло арестовать более двадцати настоящих немецких шпионов. Кайзер Вильгельм был в бешенстве.
Но вернемся в наше время, на днях любимая Моника президента Ермака посетила коллегию Служба Брелков, которой как раз исполняется тридцать лет. За это время конечно произошли колоссальные изменения. Так отдельные шпионоловы перешли от традиционного вымогательства к грабежам, зампреды устраивают друг на друга покушения, а предатели тащат все до чего дотягиваются руки. Но говнокоандующий ставит им новые задачи.
Во-первых, защитить наивеличайшего лидера современности (и Ермака) от злобно настроенных граждан, а во-вторых, ж̶и̶в̶о̶т̶н̶о̶в̶о̶д̶с̶т̶в̶о̶ кибербезопасность. Баканов в ответ пообещал усилиться и верно служить имперскому совету. Контрразведка идет последним пунктом. Такие дела.
Так что в 1909 году собрался Комитет Имперской Безопасности (что-то вроде СНБО), и они пришли к выводу о том, что "представленные свидетельства" (в основном подчерпнутые в фантастических историях Ле Кью из Daily Mail и не менее упоротых писем неравнодушных граждан) "не оставляют сомнений в том, что разветвленная система немецкого шпионажа действует в нашей стране и у нас нет организации, чтобы следить за ней и понимать её цели", так и появилось Секретное Бюро в военном министерстве.
В начале Бюро состояло всего из двух человек Келла и Каммингса. Два капитана никак не могли договориться между собой, и они решили разделить обязанности - Каммингс занялся разведкой, а Келл контрразведкой. Так и появились MI5 и MI6.
Сэр Келл гонялся за ̶л̶а̶й̶к̶а̶м̶и̶ ̶и̶ ̶р̶е̶п̶о̶с̶т̶а̶м̶и̶ фикцией. Пока он со своими немногочисленными помощниками искал несуществующих шпионов из Abteilung III b (военная разведка, спецслужбы неизбежно порождают развитую бюрократию, и та же MI5 тогда называлась Military Operations 5(g) Nachrichten-Abteilung - разведка ВМС шпионили как последние сукины дети. Но ему однажды необыкновенно повезло. Любимый шпион Кайзера Густав Стейнхауер не придумал ничего лучше, чем вербовать агентов по переписке.
Келл случайно услышал, как двое немецких беизнесменов обсуждают письмо, в котором Стейнхауер напоминал соотечественникам о том, что Хохзеефлоту нужно помогать. После чего британская контрразведка выпросила у министра внутренних дел Черчиля ордера по спискам, завели себе ̶М̶и̶р̶о̶т̶в̶о̶р̶е̶ц̶ картотеку, и взялись потрошить почту. Уже в августе 1914, через несколько дней после начала войны, агентство состоящее из семнадцати человек смогло арестовать более двадцати настоящих немецких шпионов. Кайзер Вильгельм был в бешенстве.
Но вернемся в наше время, на днях любимая Моника президента Ермака посетила коллегию Служба Брелков, которой как раз исполняется тридцать лет. За это время конечно произошли колоссальные изменения. Так отдельные шпионоловы перешли от традиционного вымогательства к грабежам, зампреды устраивают друг на друга покушения, а предатели тащат все до чего дотягиваются руки. Но говнокоандующий ставит им новые задачи.
Во-первых, защитить наивеличайшего лидера современности (и Ермака) от злобно настроенных граждан, а во-вторых, ж̶и̶в̶о̶т̶н̶о̶в̶о̶д̶с̶т̶в̶о̶ кибербезопасность. Баканов в ответ пообещал усилиться и верно служить имперскому совету. Контрразведка идет последним пунктом. Такие дела.
👍4
Сперва прохожие на Тверской услышали крики. Потом из окна вылетел нож и газовый балончик, а вслед за ножом серебряной пулей вылетел русский и очень голый националист Егор Просвирин и упокоился неуправляемой ракетой об асфальт. Не писать мне теперь для "Спутника и Погрома", какая жалость! На память осталась только эта открытка, не первая, надо вам сказать и, надеюсь, не последняя
Контрольные суммы окружают нас со всех сторон. Они используются везде, где могут появиться ошибки при передаче данных. Ethernet, мобильные телефоны, компакт-диски, кредитные карты, номера ISBN в книжках и налоговые номера.
Казалось бы, что может быть проще? Давайте сложим все байты между собой (как в первом издании Кернигана и Ричи)? Но если поменять два байта местами, то ошибка пройдет незамеченной. От перемены мест слагаемых сумма не меняется. Или будем не просто складывать, а еще домножать на константу, а затем возьмем остаток от деления на простое число, как djb2? Уже лучше, только умножать и делить - больно. Так появились циклические избыточные коды CRC, в которых нет ничего кроме сдвигов и ⊕ (XOR). Комрада Yonkie (автор хорошей книжки "Reverse Engineering for Beginners") заинтересовали именно они https://bit.ly/347IdSn Для начала, сколько у этой функции возможных значений?
Прежде, чем озадачивать компьютер брутфорсом (а 2^32 это уже не больно, но по-прежнему неприятно), я бы обратил внимание на то, что CRC не только линейна f(a ⊕ b) = f(a) ⊕ f(b), но и если представить ее в виде сдвигового регистра с линейной обратной связью (LFSR) в конфигурации Галуа, состоит из обратимых операций x ^= (x >> k), композиция обратимых функций тоже обратима, значит и для CRC есть обратная функций g, такая, что для любого x, g(f(x)) = x. С биекцией худо-бедно разобрались. Теперь посмотрим на сишную реализацию CRC:
c = (c ^ getbit()) & 1 ? (c >> 1) ^ 0xEDB88320 : c >> 1;
И возникает вопрос, что это за всратое число, и что будет если его поменять? Его почему-то называют многочленом. Так как мы имеем дело с нулями и единицами, то у нас есть поле F_2, которое предсказуемо состоит из нулей и единиц и исключающего ИЛИ в качестве сложения (1 + 1 = 0, 0 + 0 = 0, остальные комбинации дают 1). Мы можем записать все последовательности нулей и единиц длины n, к примеру для n = 3 их восемь: 000, 001, 010, 011, 100, 101, 110, 111.
Представим, что это не числа от нуля до семи, а коэфициенты многочлена 010: 0•x^0 + 1•x^1 + 0•x^2 = (x), или 110: 1•x^0 + 1•x^1 + 0•x^2, то есть (x + 1). Иксы нужны не для того, чтобы решать уравнения, а для того, чтобы показать, что коеффициенты находятся в разных позициях и не смешиваются между собой. Получилось кольцо многочленов F_2[X]. Со своими правилами. (x) можно умножить на (x + 1) и получится (x^2 + x), многочлен второй степени (потому что впереди двойка, или 011 в обратной двоичной записи).
Правила сложения и умножения не сильно сложнее привычной арифметики в Z и они нас не интересуют. Контрольная сумма CRC - остаток от деления сообщения представленного в виде многочлена. M•x^n = Q*P + R; M - сообщение, Q - частное, которое нам не нужно, R - контрольная сумма, P - генерирующий многочлен. На всякий случай получившаяся конструкция записывается, как F_2[X]/P. Суть в том, что CRC-n(M || CRC-n(M)) = 0, Потому, что M•x^n - R = Q*P ≡ 0 (mod P), то есть делится на P без остатка. 0xEDB88320 это - 1 + x + x^2 + x^4 + x^5 + x^7 + ... + x^32. Помимо эзернета так же используется в PNG, MPEG2 и много где еще.
У Yonkie возник вопрос, почему 0x80000000 работает, а 0x12345678 нет? Что будет, если сбросить старший бит? Мы убираем константу "+ 1" и значит, что у любого такого многочлена есть множитель x. Возьмем (x + x^2 + x^4 + x^5), выносим x за скобки: x•(1 + x + x^3 + x^4). Как это повлияет на контрольную сумму? У нас есть многочлен A без единицы и существует такое B (с единицей), что A = x•B. Степень B на единицу меньше, чем у A. Подставим в определение CRC. M•x^{n-1} = Q•B + R, и умножим на x: M•x^n = Q•B•x + R•x = Q•A + R•x, в случае с 32-битной контрольной суммой, если мы уберем единицу из многочлена, то получим 31-битную сумму сдвинутую на один разряд. А в случае 0x12345678, не на один. Это, если я не ошибаюсь, CRC-29
Казалось бы, что может быть проще? Давайте сложим все байты между собой (как в первом издании Кернигана и Ричи)? Но если поменять два байта местами, то ошибка пройдет незамеченной. От перемены мест слагаемых сумма не меняется. Или будем не просто складывать, а еще домножать на константу, а затем возьмем остаток от деления на простое число, как djb2? Уже лучше, только умножать и делить - больно. Так появились циклические избыточные коды CRC, в которых нет ничего кроме сдвигов и ⊕ (XOR). Комрада Yonkie (автор хорошей книжки "Reverse Engineering for Beginners") заинтересовали именно они https://bit.ly/347IdSn Для начала, сколько у этой функции возможных значений?
Прежде, чем озадачивать компьютер брутфорсом (а 2^32 это уже не больно, но по-прежнему неприятно), я бы обратил внимание на то, что CRC не только линейна f(a ⊕ b) = f(a) ⊕ f(b), но и если представить ее в виде сдвигового регистра с линейной обратной связью (LFSR) в конфигурации Галуа, состоит из обратимых операций x ^= (x >> k), композиция обратимых функций тоже обратима, значит и для CRC есть обратная функций g, такая, что для любого x, g(f(x)) = x. С биекцией худо-бедно разобрались. Теперь посмотрим на сишную реализацию CRC:
c = (c ^ getbit()) & 1 ? (c >> 1) ^ 0xEDB88320 : c >> 1;
И возникает вопрос, что это за всратое число, и что будет если его поменять? Его почему-то называют многочленом. Так как мы имеем дело с нулями и единицами, то у нас есть поле F_2, которое предсказуемо состоит из нулей и единиц и исключающего ИЛИ в качестве сложения (1 + 1 = 0, 0 + 0 = 0, остальные комбинации дают 1). Мы можем записать все последовательности нулей и единиц длины n, к примеру для n = 3 их восемь: 000, 001, 010, 011, 100, 101, 110, 111.
Представим, что это не числа от нуля до семи, а коэфициенты многочлена 010: 0•x^0 + 1•x^1 + 0•x^2 = (x), или 110: 1•x^0 + 1•x^1 + 0•x^2, то есть (x + 1). Иксы нужны не для того, чтобы решать уравнения, а для того, чтобы показать, что коеффициенты находятся в разных позициях и не смешиваются между собой. Получилось кольцо многочленов F_2[X]. Со своими правилами. (x) можно умножить на (x + 1) и получится (x^2 + x), многочлен второй степени (потому что впереди двойка, или 011 в обратной двоичной записи).
Правила сложения и умножения не сильно сложнее привычной арифметики в Z и они нас не интересуют. Контрольная сумма CRC - остаток от деления сообщения представленного в виде многочлена. M•x^n = Q*P + R; M - сообщение, Q - частное, которое нам не нужно, R - контрольная сумма, P - генерирующий многочлен. На всякий случай получившаяся конструкция записывается, как F_2[X]/P. Суть в том, что CRC-n(M || CRC-n(M)) = 0, Потому, что M•x^n - R = Q*P ≡ 0 (mod P), то есть делится на P без остатка. 0xEDB88320 это - 1 + x + x^2 + x^4 + x^5 + x^7 + ... + x^32. Помимо эзернета так же используется в PNG, MPEG2 и много где еще.
У Yonkie возник вопрос, почему 0x80000000 работает, а 0x12345678 нет? Что будет, если сбросить старший бит? Мы убираем константу "+ 1" и значит, что у любого такого многочлена есть множитель x. Возьмем (x + x^2 + x^4 + x^5), выносим x за скобки: x•(1 + x + x^3 + x^4). Как это повлияет на контрольную сумму? У нас есть многочлен A без единицы и существует такое B (с единицей), что A = x•B. Степень B на единицу меньше, чем у A. Подставим в определение CRC. M•x^{n-1} = Q•B + R, и умножим на x: M•x^n = Q•B•x + R•x = Q•A + R•x, в случае с 32-битной контрольной суммой, если мы уберем единицу из многочлена, то получим 31-битную сумму сдвинутую на один разряд. А в случае 0x12345678, не на один. Это, если я не ошибаюсь, CRC-29
👍2
Решил перечитать одну из немногих хороших книжек про хакеров, Полсена. Дочитал до того момента как Iceman потрошит AdmW0rm https://bit.ly/3pMT3Wi и тоже захотел посмотреть. Нашел https://bit.ly/3EQotPF (кстати, кто угадает, что произошло с архивом и как его распаковать?) Хорошие были времена, наивные. Не делайте так никогда.
Когда разбираю какие-то кусочки кода (или смотрю как другие ребята делают это) меня интересует не столько сам код, сколько образ мысли автора. Очень интересно, что происходит в черепушке у товарища майора (особенно, если это не забордюрные нищеброды с одним вордовским макросом на всех, а серьезные заведения с хорошим финансированием).
Я уже как -то глумился над черным ходом ЦРУ (Hive/"Vault 8"), теперь мне попалась хорошая статья @osxreverser про DewDrop от АНБ https://bit.ly/3f3W2U3, которым мы можеи насладиться благодря #ShadowBrokers (привет, дядя Женя)
Суть в том, что на взломаном тазике нужно оставить черный ход. Можно пропилить в стене дверь, но тогда в открытую дверь могут залезть бомжи. Уже двадцать лет назад FX написал cd00r https://bit.ly/3I23eg3 черный ход, который открывается только, если "постучать" определенным образом. "Сезам, откройся!" так и назвали - port knocking.
ЦРУ с технологией не справились, Hive просто слушает все подряд, ожидая специального пакета, и подобные беспорядочные связи (именно promiscuous, именно так) создают нагрузку на процессор. АНБ как и положено нормальным людям https://bit.ly/31CkRmQ повесили фильтр. Но вместо того, чтобы использовать setsockopt / ioctl втянули в тулзу похаканый (в плохом смысле этого слова) libpcap...
В очередной раз убеждаюсь, что как минимум половина совершенно секретных (вот это уже не шутка) технологий утекает в трехбуквенные агентства от хакеров, а не наоборот. Политикам, которые выбирают курс на "нераспространение кибероружия" и "сдерживание" стоит это учитывать.
Я уже как -то глумился над черным ходом ЦРУ (Hive/"Vault 8"), теперь мне попалась хорошая статья @osxreverser про DewDrop от АНБ https://bit.ly/3f3W2U3, которым мы можеи насладиться благодря #ShadowBrokers (привет, дядя Женя)
Суть в том, что на взломаном тазике нужно оставить черный ход. Можно пропилить в стене дверь, но тогда в открытую дверь могут залезть бомжи. Уже двадцать лет назад FX написал cd00r https://bit.ly/3I23eg3 черный ход, который открывается только, если "постучать" определенным образом. "Сезам, откройся!" так и назвали - port knocking.
ЦРУ с технологией не справились, Hive просто слушает все подряд, ожидая специального пакета, и подобные беспорядочные связи (именно promiscuous, именно так) создают нагрузку на процессор. АНБ как и положено нормальным людям https://bit.ly/31CkRmQ повесили фильтр. Но вместо того, чтобы использовать setsockopt / ioctl втянули в тулзу похаканый (в плохом смысле этого слова) libpcap...
В очередной раз убеждаюсь, что как минимум половина совершенно секретных (вот это уже не шутка) технологий утекает в трехбуквенные агентства от хакеров, а не наоборот. Политикам, которые выбирают курс на "нераспространение кибероружия" и "сдерживание" стоит это учитывать.
👍3
Все вы видели красивые карты сети семидесятых. Когда весь ARPA Net (на карте Соединенных Штатов) помещался на одном листочке. И наверное думаете, что это такой же Интернет, только маленький и медленный. Нашел хорошую доку BBN про сеть 1976 года. С адресным пространством уже тогда начались проблемы.
В сети 64 адреса выделены под "маршрутизаторы". IMP - Interface Message Processor, IMP 516 специализированный компьютер размером с добрячий холодильник и потреблением в два киловатта. К нему полагалась еще одна стойка с модемами Bell 303 (230/50 килобит в секунду), каждый модем, точнее широкополосная станция связи размером с хорошую тумбочку. И телетайп в качестве терминала, куда же без него.
Для фоновых процессов IMPа зарезервировано четыре адреса, и можно было послать сообщение с терминала на терминал. А хосты? Хостов было по четыре на каждый узел. Всего 256 адресов, которые к 1975 году стали подходить к концу. Потом конечно ввели новый протокол, 16 бит на IMP и 8 бит на хост.
В 1980 сеть упала в первый раз, из-за мигающего бита в сеть попали три пакета с обновлением маршрутов, и по счастливому стечению обстоятельств, каждый следующий пакет выглядел более новым, чем предыдущий. Эта "змейка" устроила широковещательный шторм и настолько нагрузила импы, что у них не осталось ресурсов даже на то, чтобы следить за состоянием линков. Подробнее в RFC789.
Что меня насмешило в доке http://www.bitsavers.org/pdf/bbn/imp/BBN1822_Jan1976.pdf "Хосты, использующие эти форматы, будут поддерживаться без ограничений (into the indefinite future)" Будущее наступило довольно быстро
В сети 64 адреса выделены под "маршрутизаторы". IMP - Interface Message Processor, IMP 516 специализированный компьютер размером с добрячий холодильник и потреблением в два киловатта. К нему полагалась еще одна стойка с модемами Bell 303 (230/50 килобит в секунду), каждый модем, точнее широкополосная станция связи размером с хорошую тумбочку. И телетайп в качестве терминала, куда же без него.
Для фоновых процессов IMPа зарезервировано четыре адреса, и можно было послать сообщение с терминала на терминал. А хосты? Хостов было по четыре на каждый узел. Всего 256 адресов, которые к 1975 году стали подходить к концу. Потом конечно ввели новый протокол, 16 бит на IMP и 8 бит на хост.
В 1980 сеть упала в первый раз, из-за мигающего бита в сеть попали три пакета с обновлением маршрутов, и по счастливому стечению обстоятельств, каждый следующий пакет выглядел более новым, чем предыдущий. Эта "змейка" устроила широковещательный шторм и настолько нагрузила импы, что у них не осталось ресурсов даже на то, чтобы следить за состоянием линков. Подробнее в RFC789.
Что меня насмешило в доке http://www.bitsavers.org/pdf/bbn/imp/BBN1822_Jan1976.pdf "Хосты, использующие эти форматы, будут поддерживаться без ограничений (into the indefinite future)" Будущее наступило довольно быстро
👍2
Очередной случай мошенничества с Дія https://cutt.ly/SIqA3qu Что в очередной раз напоминает о том, что Bank ID (и Дию, которая настолько же ненадежна как и Bankl ID) нельзя использовать для открытия счетов и выдачи кредитов, о том, что нельзя отрывать второй фактор аутентификации, и о том, что иногда безопасность важнее "удобства". Полиция в таких случаях не особенно помогает, они заняты тем, что вебкамщиц на онлифанс ловят.
👍2
Между тем, прошло уже почти полгода с того момента, как под петицией на сайте президента за отставку мусорского чорта Татарова появилась подпись "Biden Joe". Скромный американский пенсионер зашел на сайт петиций через систему электронной идентификации Дія (ІСЕІ), воспользовавшись цифровой подписью. С тех пор Міністерство цирковой трансформации, Державна служба нихуя, Національна дилдополиция и Офіс найвеличайшего лидора не прекращают ссать в глаза и рассказывать десять взаимоисключающих версий. Так что там с "надежными" цифровыми подписями, а? Времени уже прошло достаточно, не так ли?
(фото @ogawastudios)
(фото @ogawastudios)
Пока киберполиция натирает себе трудовые мозоли на сайтах знакомств и онлифанс, Служба Безумных Упырей, "чтобы прошла беда над миром стороной", тоже не дремлет. Сходите по ссылке https://bit.ly/3Ig3kRl - интересная оптическая иллюзия, вам кажется, что вы видите унылую как говно дорогого леонида ильича совкодрочерскую хуету, а на самом деле, если вы ее нечаянно лайкните, то немедленно призовете ̶С̶а̶т̶а̶н̶у̶ "к захвату государственной власти" (ст. 109 ч.2).
ООО "Shit & Меч" потратило год на поиск лайка в одноклассниках. Потом к ним подключился спецназ для обыска, прокуратура, судьи со своими секретарями, кунилингвистическая "экспертиза" все, чтобы покарать врага государства в лице автозаправщика из сумской области. Вам не кажется, что лайки нам обходятся довольно дорого, пока мы оплачиваем "работу" всех этих дармоедов?
Не считая того, что суд обязал минюст сотрудничать с оккупантами: "Доручити Міністерству юстиції України звернутись із запитом до компетентного органу Російської Федерації про витребування у представника ТОВ «Однокласники» - ТОВ «Мейл.Ру»; и как сказал бы прокурор: распространяет призывы к свержению действующей власти, путем размещения ссылки на сайтах судебной власти Украины.
Преследование за "лайки" и есть совок, в самых мерзостных его проявлениях, он не в гербах, а в головах у чекистов. Не говоря уже о том, что пока палач "Изоляции" Куликовский спокойно гулял по Киеву, эти мудаки за лайками в одноклассниках гонялись.
ООО "Shit & Меч" потратило год на поиск лайка в одноклассниках. Потом к ним подключился спецназ для обыска, прокуратура, судьи со своими секретарями, кунилингвистическая "экспертиза" все, чтобы покарать врага государства в лице автозаправщика из сумской области. Вам не кажется, что лайки нам обходятся довольно дорого, пока мы оплачиваем "работу" всех этих дармоедов?
Не считая того, что суд обязал минюст сотрудничать с оккупантами: "Доручити Міністерству юстиції України звернутись із запитом до компетентного органу Російської Федерації про витребування у представника ТОВ «Однокласники» - ТОВ «Мейл.Ру»; и как сказал бы прокурор: распространяет призывы к свержению действующей власти, путем размещения ссылки на сайтах судебной власти Украины.
Преследование за "лайки" и есть совок, в самых мерзостных его проявлениях, он не в гербах, а в головах у чекистов. Не говоря уже о том, что пока палач "Изоляции" Куликовский спокойно гулял по Киеву, эти мудаки за лайками в одноклассниках гонялись.
👍3
Хорошая книжка про варезную сцену. Автор и издатель поступили мудро и сразу выложили полную бесплатную версию https://bit.ly/3rfkV4U иначе, с такой-то темой, она стала бы релизом задолго до того как закончится печать. Что делает её интересной, автор не пытается впихнуть сложное культурное явление в рамки нормативной морали или показать его сквозь призму личных историй. Сцена по правилам сцены, для тех, кто ни разу не заглядывал в кроличью нору. Со многим можно поспорить, но со многим всегда можно поспорить. Жаль, что про хакерскую сцену (а варез её часть) ничего подобного пока не написано
👍3
Собственно, чего-то подобного и следовало ожидать. Около часа ночи пользователи в твиттере обратили внимание на дефейс сайта министерства образования mon[.]gov.ua. То же самое произошло с сайтами кабинета министров, министерства аграрной политики и минрегионом. На сайтах появилось сообщение на украинском, русском и польском. И на всех трех языках оно звучит одинаково безобразно, как по содержанию, так и по форме, что как бы намекает на взломщиков из Неизвестной Федерации или усатой республики. РИАН поставил новость уже через два часа после взлома. В EXIF картинки координаты указывают на парковку около школы экономики в Варшаве, но я полагаю, что все это сделано нарочно, чтобы поссорить Украину и Польшу. МОН и МинАгро пока показывают дейфейснутую страницу, КМУ, Дия и Минрегион лежат. Может им прочитать вслух доктрину кибербезопасности или сбросить на них кибервойска с парашютом?
Update. Как мне подсказывают, казначейство тоже взломано
Update. Как мне подсказывают, казначейство тоже взломано
👍16
Аха. То есть двадцать разных министерств и ведомств не смогли обновить свой заведомо дырявый OctoberCMS с мая месяца. И настроить его правильно тоже не смогли. Это все, что вам нужно знать про потужную систему кибер-безопасности и прочие кибервойска. И это не райрады и не поликлиникки, а центральные органы власти. Вам не кажется, что мы зря содержим пять киберцентров? Может скинемся и наймем админа-фрилансера им на замену? Господи, какой стыд
👍59