одна уязвимость и в цепочке возникала голландская компания-посредник, с помощью которой прибыль перегоняли обратно в первую ирландскую компанию и далее в офшор. Эта схема особенно популярна у высокотехнологических компаний, которые передают права интеллектуальной собственности своим иностранным «дочкам», а те, в свою очередь, укрывают денежные активы в налоговых гаванях.
Именно таким образом Google, Apple и другие технологические гиганты избегают уплаты справедливой доли налогов в США, несмотря на то что являются американскими компаниями. Это определенно не предусмотренное законодателями использование налоговых кодексов трех стран, хотя стоит отметить, что Ирландия намеренно придерживалась мягких налоговых правил, чтобы привлечь американские компании. И это очень выгодная ситуация для хакеров. По оценкам, только в 2017 г. американские компании уклонились от уплаты налогов {16} в США почти на $200 млрд, разумеется, за счет остальных налогоплательщиков.
В налоговом мире баги и уязвимости называются лазейками, а их использование злоумышленниками – стратегией ухода от налогов. Тысячи профессионалов – налоговые юристы и бухгалтеры из числа тех, кого в мире компьютерной безопасности мы называем «черными шляпами» [5], – скрупулезно исследуют каждую строку налогового кодекса в поисках уязвимостей, которые можно было бы использовать для собственной выгоды.
Мы знаем, как исправлять баги в компьютерном коде. Во-первых, мы можем использовать различные инструменты для их обнаружения еще до того, как код будет закончен. Во-вторых, уже после того, как код начнет работать, мы можем выискивать, а самое главное – быстро устранять баги различными способами.
Эти же методы применимы и к налоговому кодексу. Налоговое законодательство 2017 г. ограничило вычеты по налогу на имущество {17}. Это положение вступило в силу только в 2018 г., поэтому кое-кто придумал хитрый хак – досрочно уплатить налог на недвижимость за 2018 г. в 2017 г. Незадолго до конца года налоговое управление США вынесло решение о том, в каких случаях это было законно, а в каких нет, и приняло исправления в Налоговый кодекс для защиты от подобных действий. В большинстве случаев они были сочтены незаконными.
Однако зачастую все не так просто. Некоторые лазейки прописаны в законе и не могут быть исключены из него в мгновение ока. Принятие любого налогового законодательства – это всегда большая проблема, особенно в США, где оно обсуждается с особым пристрастием. Ошибку с подоходным налогом для семей военнослужащих, возникшую в 2017 г., начали исправлять лишь в 2021 г. И до сих пор конгресс не устранил ее: пока исправлена только еще более старая ошибка, которая взаимодействовала с ошибкой 2017 г., а ее окончательное устранение будет завершено в 2023 г. (И это еще довольно легкий случай, поскольку все признают, что ошибка имеет место.) У нас нет возможности править налоговый кодекс с той же оперативностью, с которой мы устраняем баги в программном обеспечении.
Есть и другой вариант: уязвимость остается в системе и постепенно становится частью обычного порядка вещей. Многие налоговые лазейки прекращают свое существование именно так. Иногда их принимает Налоговое управление США, иногда суды подтверждают их законность. Уязвимости могут не совпадать с целями налогового законодательства, но текст закона позволяет их использовать. Иногда они даже задним числом легализуются конгрессом после того, как за них заступятся избиратели. Все это и есть процесс развития систем.
Хак подрывает замысел системы. Какой бы юрисдикцией ни обладала управляющая система, она либо блокирует хак, либо разрешает его – явно или неявно, просто не предпринимая ответных действий.
Хакер соблюдает правила системы, но нарушает ее дух и замысел.
Для того чтобы хак состоялся, должна быть система правил, которую можно взломать. Поэтому мне нужно сделать отступление и уточнить, что означает понятие «система», по крайней мере в том смысле, в каком я его использую.
Определение
Система (англ. system). Сложный процесс, ограниченный набором правил или норм, предназначенный для достижения одного или нескольких желаемых результатов.
Текстовый процессор, с помощью которого я набрал этот абзац, представляет собой систему: электронные сигналы, ограниченные набором программных правил, предназначенных для создания текста. Слова появились на экране – это и есть мой желаемый результат. Создание этой книги как продукта – результат уже другой системы, процессы которой включают в себя дизайн страниц, их печать, сшивание в определенном порядке, наложение суперобложки и транспортировочную упаковку. Каждый из этих процессов выполняется в соответствии с набором четких правил. Две эти системы, а также ряд других приводят к созданию бумажной книги, которую вы держите в руках, или электронного файла, который вы читаете на своем устройстве либо воспроизводите для прослушивания. Это верно независимо от того, собраны элементы системы под одной крышей или разбросаны по всему миру. Это верно независимо от того, является ли результат реальным или виртуальным, бесплатным или дорогостоящим, выпущенным ограниченной партией или общедоступным. В процессе всегда будут задействованы одна или несколько систем.
Всякая система имеет правила. Ими могут быть законы, правила игры, неформальные правила группы или процесса, негласные социальные правила. Когнитивные системы тоже следуют законам – законам природы.
Хак – это всегда то, что позволяет сама система. И под словом «позволяет» я имею в виду нечто конкретное. Дело не в том, законен ли хак, социально приемлем или этичен, хотя все это может быть ему свойственно. Речь идет о том, что система, как она создана, не препятствует взлому самой себя. Система допускает хак непреднамеренно, случайно, но эта случайность является следствием того, как она была спроектирована. В технических системах это обычно означает, что осуществить взлом позволяет программное обеспечение, в социальных системах – что правила или законы, управляющие системой, не запрещают взлом напрямую. Вот почему мы используем слово «лазейка» для описания хаков.
Исходя из сказанного, хакингу подвержены системы, участники которых заранее договорились – явно или неявно – соблюдать общий набор правил. Иногда внутренние правила системы не совпадают с законами среды, в которой она существует. Я понимаю, что это сбивает с толку, поэтому объясню на примере. Компьютер управляется набором правил в виде запущенного на нем программного обеспечения. Хакнуть компьютер означает так или иначе обойти эти правила. Но помимо этого существуют внешние по отношению к компьютеру законы, которые потенциально регулируют то, что с ним можно делать и чего нельзя. К примеру, в США Закон о компьютерном мошенничестве и злоупотреблениях квалифицирует большинство форм взлома как уголовное преступление. (Обратите внимание, что происходит: взламывается компьютерная система, но более общая правовая система защищает ее.) К слову, довольно спорный момент, насколько общим должен являться такой закон, ведь в своем нынешнем виде он создает ловушку, поскольку любой взлом компьютера считается незаконным.
Профессиональный спорт регулируется четким набором правил и потому часто становится мишенью хакеров. Собственно говоря, любые законы в юридическом смысле – не что иное, как набор правил, а значит, их тоже можно взламывать.
В некоторых системах внутренними правилами являются сами нормативно-правовые акты или, по крайней мере, они и обеспечивают существование этих правил. Далее, когда мы будем знакомиться с хакингом финансовой и правовой систем, мы увидим, что незначительные опечатки или слишком запутанные формулировки в законопроектах, контрактах, судебных заключениях способны открыть путь всевозможным эксплойтам [6], которые не были предусмотрены составителями законов и судьями.
Обратите внимание на одну очень важную вещь: правила не обязательно должны быть явными. В нашем мире существует множество систем, особенно социальных, которые ограничены нормами. Нормы менее формальны, чем правила; часто неписаные, они, тем не менее, определяют поведение. Мы все время ограничены социальными нормами, причем для разных ситуаций они разные. Даже политика регулируется нормами в той же степени, что и законом, чему мы неоднократно становились свидетелями в последние годы, когда в США нарушались норма за нормой.
Мое определение системы включает в себя слово «предназначенная», что подразумевает наличие проектировщика – того, кто определяет желаемый результат. Это важный элемент определения, но на самом деле он верен лишь отчасти.
В случае с компьютерами взламываемые системы намеренно создаются человеком или организацией, а значит,