Читаем Взломать всё. Как сильные мира сего используют уязвимости систем в своих интересах полностью

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

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

Нечеткие формулировки в Законе о создании рабочих мест в США{168} 2004 г. породили несколько уязвимостей в налоговом кодексе, и хорошо обеспеченные фирмы смогли воспользоваться ими с большим успехом. Самая заметная среди этих лазеек называлась «вычет за производственную деятельность внутри страны». Этот вычет должен был помочь отечественным производителям конкурировать на международном уровне, но он настолько широко определял производство («объединение или сборка двух или более изделий»), что всевозможные компании не преминули воспользоваться этим вычетом. Компания World Wrestling Entertainment получила его за производство видеороликов о реслинге. Продуктовые магазины претендовали на него, потому что они распыляют на продаваемые фрукты химикаты для быстрого созревания. Аптеки заявляли, что на их территории тоже есть производство – фотокабинки. Производитель подарочных корзин затребовал вычет на том основании, что объединил в одной упаковке вино и шоколад. В последнем случае правительство обратилось в суд, но проиграло.

Невозможно знать наверняка, но эта проблематичная формулировка{169}, похоже, была намеренно внедрена законодателями под давлением лоббистов и в силу необходимости получить достаточное количество голосов в конгрессе для принятия закона. Эта налоговая льгота, имевшая непреднамеренные последствия, была одной из многих в законе. Она стала настолько популярной, что оставалась в силе до 2017 г., когда ее заменили вычетом на квалифицированный доход от предпринимательской деятельности.

По мере того как мы переходим от более простых к более сложным примерам, становится все труднее определить, полезен ли тот или иной хак. В чем именно заключается цель хоккейных правил? Соотносятся ли с этой целью изогнутые клюшки или они, наоборот, мешают ее достижению? Изогнутые клюшки способствуют более быстрому движению шайбы{170}, а значит, и более захватывающей игре. Но слишком быстрая шайба опасна и приводит к большему количеству травм. Когда Национальная хоккейная лига устанавливала правила, определяющие, насколько изогнутой может быть клюшка, она пыталась сбалансировать соображения безопасности и спортивного мастерства. С 1967 г. эти правила менялись, поскольку менялся баланс на чаше весов: сначала был разрешен максимальный изгиб в 3,81 см, затем в 2,54 см, потом в 1,27 см, а в настоящее время в 1,9 см.

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

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

Мы определили хакинг как технику, которая придерживается правил системы, но подрывает ее замысел, ее цель. И это не всегда плохо. Как мы успели убедиться, некоторые хаки являются полезными инновациями. В конечном итоге они нормализуются и улучшают систему. В Китае, например, реформистские правительства 1980–1990-х гг. маневрировали, обходя сопротивление частных собственников{171} с помощью таких хакерских приемов, как предложение арендаторам 70-летней возобновляемой аренды на землю. Они следовали правилам коммунистической партии, но полностью подрывали их суть.

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

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

Перейти на страницу:

Похожие книги

Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT
Фундаментальные алгоритмы и структуры данных в Delphi
Фундаментальные алгоритмы и структуры данных в Delphi

Книга "Фундаментальные алгоритмы и структуры данных в Delphi" представляет СЃРѕР±РѕР№ уникальное учебное и справочное РїРѕСЃРѕР±ие по наиболее распространенным алгоритмам манипулирования данными, которые зарекомендовали себя как надежные и проверенные многими поколениями программистов. По данным журнала "Delphi Informant" за 2002 год, эта книга была признана сообществом разработчиков прикладных приложений на Delphi как «самая лучшая книга по практическому применению всех версий DelphiВ».Р' книге РїРѕРґСЂРѕР±но рассматриваются базовые понятия алгоритмов и основополагающие структуры данных, алгоритмы сортировки, поиска, хеширования, синтаксического разбора, сжатия данных, а также многие другие темы, тесно связанные с прикладным программированием. Р

Джулиан М. Бакнелл

Программирование, программы, базы данных