Исходный код украден \ взломан конкурирующей компанией

23

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

Мой вопрос Известны ли примеры, когда исходный код был украден и конкурирующая компания широко его использовала?

Я знаю, какой-то игровой движок (Quake 1 и Half Life 2, если я правильно помню), исходный код украден, но я не могу понять, что действительно повредит их бизнесу.

(Я знаю, этот вопрос может быть более подходящим для другого форума на stackexchange)

Виктор Сер
источник
6
Если исходный код, если какой-либо продукт безопасности украден, это может позволить хакерам легче анализировать его на наличие слабых мест и использовать их для атаки на клиентов, использующих продукт безопасности. Хотя то же самое можно сделать с помощью средств обратного инжиниринга, это занимает гораздо больше времени, чем просто просмотр исходного кода.
@Viktor, рассмотрите возможность переместить это в IT Security .
AviD
48
Мы привыкли шутить среди коллег, что любой, кто украл наш код и смог заставить его работать, заслужил это!
Бенджол
1
Некоторые приложения могут потерять больше от утечек исходного кода, чем другие. Например: вы можете поспорить, что если исходный код для XRumer будет пропущен, то каждый пакет программного обеспечения форума будет защищен от него на следующий день. Это может повлиять на доходы его сопровождающих, пока они не выпустят следующую версию.
user16764
1
@IAbstract - Apple получила идею оконного графического интерфейса от Xerox Park, у которого также была одна из первых (если не первая) компьютерных мышей ... (< cultofmac.com/… >). Теперь, откуда у Xerox появилась идея?
Мартин С. Столлер

Ответы:

18

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

Это была Half-Life 2, утечка которой произошла как раз перед выпуском в 2004 году. Есть очень хороший отчет о том, что здесь произошло: http://www.eurogamer.net/articles/2011-02-21-the-boy-who-stole- Период полураспада-2-статьи

Трой Хант
источник
2
Увлекательная статья о HL2. +1
jnevelson
16

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

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

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

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

perdian
источник
4
Оружейного класса U-235 вполне достаточно для создания ядерного устройства, учитывая довольно скромные ресурсы и инженерный талант. Оружейный плутоний стал бы лучшей аналогией. Уверяю вас, что если бы полный доступ к исходному коду был всем, у меня было бы намного меньше проблем с программным обеспечением U3D.
Дэвид Торнли
9

Вот несколько примеров, которые я лично знаю ...

AT & T разработала Yacc генератор синтаксических анализаторов и Lex лексического анализатора генератор, как часть Unix. Вы должны были получить копии исходного кода только в том случае, если вы получили исходную лицензию Unix ... но кто-то смахнул копию со стола человека, который останется здесь анонимным где-то в 1980 году. я, и я не уверен, что он хотел бы, чтобы его имя было подкуплено.) Источник начал плавать вокруг, люди портировали их на IBM PC, yadda yadda. Я получил копии от компании в Остине, которая продавала дискеты с «исходным кодом для изящных программ» в 1986 году.

Примерно в 1990 году у Microsoft была такая репутация, хотя я не уверен, что это была именно корпоративная политика. В дополнение к делу Stac, о котором упоминала Тангурена, консалтинговая компания, которая ранее делала для Apple работу по переносу QuickTime на Windows, повторно использовала некоторые проприетарные источники QuickTime в проекте для Intel и Microsoft для ускорения MS Video для Windows. Apple закончила судебное разбирательство против «Видео для Windows». Для посторонних, конечно, не ясно, знал ли кто-нибудь в Intel и / или Microsoft об этой краже.

Однако в действительности это происходит не очень часто с американскими компаниями - риски слишком высоки. Например, я был подрядчиком в ныне несуществующем поставщике баз данных Informix, когда они находились в середине битвы за тесты с Oracle, и Informix продолжал побеждать. Oracle нанял одного из главных инженеров баз данных Informix, и он в первый день пришел на работу с жестким диском, полным источников Informix, думая, что они встретят его с распростертыми объятиями. Они приветствовали его, все в порядке - с командой безопасности, чтобы сопровождать его в полицейский участок. Они также назвали Informix security, чтобы прийти и получить неисследованный жесткий диск.

Боб Мерфи
источник
8

Известны ли примеры, когда исходный код был украден и конкурирующая компания широко его использовала?

Тот, который сразу же приходит на ум, - это Microsoft, крадущая код Stac Electronics для DoubleSpace . Это закончилось в суде, и самым дешевым решением для Microsoft была покупка Stac (первоначально они утверждали, что хотят это сделать, поэтому они получили доступ к исходному коду, но затем решили развернуть скопированный код как Drivespace, а затем насмехались над Stac с "Что вы собираетесь с этим делать?").

Tangurena
источник
а также кража Microsoft концепции поиска / настраиваемых полей в i4i, когда они сотрудничали.
gbjbaanb
Основная проблема, которую я вижу, пытается ли компания украсть IP, - это уровень техники. Он не может подать заявку на патент, если он заметно не отличается от оригинала
GrumpyMonkey
6

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

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

Помимо высокого юридического риска кражи исходного кода и прямых затрат на его приобретение, ваши собственные разработчики должны понимать это. Который - особенно если первоначальные разработчики не готовы помочь - это огромная задача для нетривиальной базы кода. Питер Сейбел (из « Практической Common Lisp и Coders at Work» ) однажды сказал, что количество времени находится в том же порядке, что и первоначальные усилия по разработке.

Хотя есть исключения, например, если база кода ...

  • ... содержит очень ценные, легко идентифицируемые, дискретные части (например, собственный алгоритм со значительно превосходящими характеристиками по сравнению с широко известными аналогами)
  • ... извлекает значительную выгоду из «незаметности», такой как некоторые связанные с безопасностью продукты
  • ... сам по себе очень маленький, со строгими требованиями к корректности, которые обычно встречаются во встроенном программном обеспечении (то есть ценность в том, что он подвергается всестороннему тестированию, проверке и может даже подвергаться формальным доказательствам)
  • ... содержит доказательства пренебрежения / нарушения договора / неэтичной деловой практики / некомпетентности и т. д.
Александр Баттисти
источник
3

Известен случай, когда высокочастотный торговый исходный код Goldman Sachs был украден бывшим сотрудником: http://www.bloomberg.com/apps/news?pid=newsarchive&sid=axYw_ykTBokE

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

quant_dev
источник
2

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

quickly_now
источник
Конечно, встроенная прошивка никогда не останавливает людей от попыток реинжиниринга систем Nintendo 1980-х годов. Я верю, что многие люди смогли сделать именно это. У нас есть эмуляторы, которые работают на iPhone и позволяют играть в игры 20 лет.
Ramhound
1
Эмулятор для игры - это не то же самое, что кража прошивки, которая запускает некоторые из наиболее распространенных продуктов - например, зачем платить кому-то за разработку прошивки для контроллера стиральной машины, если вы можете просто украсть кого-то еще. Может показаться, что это не так много долларов, и это не очень хороший пример. Однако есть и другие примеры, когда микроконтроллеры могут получить информацию о прошивке (например, вытравив эпоксидную смолу и проверив матрицу), потому что содержимое стоит того, чтобы все это делать.
quick_now
1

Да, есть несколько примеров, но я не знаю ни одного с проприетарным кодом. Смотрите http://gpl-violations.org/ для примеров того, как компании использовали открытый исходный код, как если бы он был их собственным. В этих случаях получение исходного кода не было проблемой, так как это был открытый исходный код.

Мартин Вилканс
источник
Это не правда, что нет примеров с проприетарным кодом. Смотрите другие ответы.
Боб Мерфи
@ Боб Мерфи: Моя ошибка. Добавил "никто не знает" в мой ответ.
Мартин Вилканс
<смеется> Со мной все время.
Боб Мерфи
1

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

Однако любой опытный разработчик может в любом случае скопировать точное поведение 99% веб-приложений или приложений для настольных компьютеров без исходного кода.

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

Тем не менее, в большинстве случаев это не имеет значения.

Джонатан Хенсон
источник
1

Я могу вспомнить два примера:

  • Tengen незаконно получил код для чипа защиты от копирования NES. Затем они использовали этот код для изготовления нелицензионных картриджей NES (включая тетрис). Как они получили код? По социальной инженерии это из ведомства авторского права США. Другими словами, они ложно утверждали, что Nintendo предъявляет им иск и что им необходим исходный код для подготовки своей защиты. Это сработало.
  • Смотрите ARJ против PK-ZIP.
user16764
источник
1

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

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

http://en.wikipedia.org/wiki/Clean_room_design

Хотя это было бы огромным усилием с их стороны, поэтому, если ваши условия лицензирования являются справедливыми, я не вижу в этом возможности.

SpacePrez
источник