На прошлой неделе бывший подрядчик Siemens, разработчик из Питтсбурга — Дэвид Тинли (David Tinley) — признан виновным в «умышленном повреждении защищённого компьютера» и компьютерном саботаже.

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

Такие действия Тинли напоминают «запланированное устаревание», которое умышленно планируют производители электроники и компьютеров, чтобы пользователи через несколько лет покупали новый гаджет вместо устаревшего или сломанного. Но если компаниям удаётся выйти сухими из воды, Тинли не сможет избежать наказания: ему грозит до десяти лет лишения свободы.

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

Ниже выдержка из обвинительного заключения, опубликованного на Scribd.



Тинли был независимым подрядчиком подразделения Siemens в Монровилле, штат Пенсильвания, около 15-ти лет, с начала 2000-х годов. Он написал «автоматизированные электронные таблицы, которые рассчитывали рабочий процесс и смету затрат для заказов клиентов в подразделении производства электроэнергии Siemens».

Прокуратура утверждала, что Тинли вставил «логические бомбы» в защищённый паролем код, чтобы после определённой даты электронные таблицы «начали беспорядочно глючить, создавая сообщения об ошибках и изменяя размер экранных кнопок». Затем Siemens звонили своему проверенному подрядчику, чтобы исправить проблему. Он это делал, открыв свой код и просто передвинув дату, когда электронные таблицы снова перестанут работать.

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

Детали судебного разбирательства тоже довольно любопытны. Во-первых, логические бомбы не причинили компании особого ущерба, потому что программист быстро всё исправлял. Более того, на него даже не завели бы уголовного дела, потому что сумма ущерба не превысила положенного по законодательству порога в $5000. Однако прокуроры сказали, что порог ущерба в размере $5000 для классификации преступления как уголовного преступления был соблюден, потому что Siemens потратила около $42 тыс. на оплату сотрудников и адвокатов, которые расследовали, не повредили ли глюки компании и её бизнесу каким-либо образом (оказалось, что не повредили, но это не важно для оценки стоимости работ по аудиту). Ответчик обязан компенсировать эти расходы (вдобавок к потенциальному сроку тюремного заключения). Кроме того, суд постановил конфисковать два его ноутбука (вероятно, как «орудия преступления»).

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

Судья вынесет окончательный приговор Тинли 8 ноября. Ему грозит до 10 лет тюрьмы, штраф в размере 250 000 долларов или и то, и другое. Дело «США против Тинли», № 2:19-cr-00156 рассматривается в Окружном суде США по Западному округу Пенсильвании.

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

В похожем процессе 2006 года системный администратор компании UBS PaineWebber Роджер Дуронио (Roger Duronio) получил восемь лет тюрьмы за размещение логической бомбы в корпоративную сеть работодателя и сделав ставку на бирже на падение его акций. Этот сотрудник неоднократно жаловался на плохие условия работы в компании, затем он уволился, но 4 марта 2002 года примерно на 1000 из 1500 корпоративных компьютеров сработала логическая бомба, которая начала удалять файлы с машин. Сам он тем временем купил пут-опционы на падение акций UBS после 4 марта на общую сумму $23 тыс. Вероятно, таким способом системный администратор хотел «компенсировать ущерб», который нанесла ему компания своими плохими условиями работы и недоплачивая ему положенные деньги. Сама фирма заявила об ущербе $3,1 млн, которые ответчик должен компенсировать.

В сентябре 2018 года житель Атланты Миттеш Дас (Mittesh Das) был приговорён к двум годам тюрьмы за размещение логической бомбы в бухгалтерское приложение Regional Level Application Software (RLAS) для выплаты жалования солдатам Армии США, что привело к задержкам выплаты зарплаты в 17 дней. Программист перед этим сам два года обслуживал эту базу данных по договору подряда. Логическая бомба сработала, когда заказчик заключил договор на обслуживание с другим подрядчиком. Армия заявила, что потратила $2,6 млн на расследование инцидента и аудит системы RLAS. В итоге разработчик был приговорён к двум годам тюрьмы и выплате $15 млн штрафов и компенсации издержек.

Несмотря на все эти прецеденты, некоторые фрилансеры и сейчас применяют подобные методы, чтобы более надёжно «привязать» к себе выгодного клиента. Более того, отдельные разработчики считают нормальным, что можно дистанционно отключить какой-то модуль или активировать тайм-бомбу, если заказчик не оплатил работу. Программисты зачастую не подозревают, что за это грозит административная и уголовная ответственность.

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

Комментарии (110)


  1. tvr
    27.07.2019 16:11
    +1

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


    1. 121212121
      27.07.2019 16:29

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


      1. DrPass
        27.07.2019 16:52
        +1

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

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


        1. vitalyvitaly
          27.07.2019 17:39

          А как будет отличаться случай, когда заказчики грубо говоря стырят сырую незаконченную версию кода и начнут им пользоваться, на самом деле и не собираясь за него платить, и тем не менее предъявят претензии автору, когда сработают баги сырой версии?


          1. DrPass
            27.07.2019 17:50

            А это смотря как договаривались. Если есть договор с условиями поставки и оплаты, то вот за нарушение условий договора можно с заказчиком судиться. Если договора нет, то судиться тоже можно, т.к. понятие «устный договор» в ГК тоже предусмотрено, но какие-либо претензии друг другу выставить, дело гиблое.
            И в любом случае, встраивать таймбомбы — это полный идиотизм со стороны разработчика, и создание самому себе потенциальной проблемы на пустом месте. Хотите обезопасить себя от неуплаты со стороны заказчика, впишите в договор пункт о передаче прав после оплаты, и сделайте вместо таймбомбы обычный триал, допустим, на месяц, с сообщением после этого: «Вы пользуетесь нелицензионной версией программного обеспечения. Для продолжения использования, пожалуйста, приобретите ключ».


            1. AlexWenner
              27.07.2019 18:12

              Адекватные люди понимают, что за встроенную в ПО подлянку может прилететь ответка.
              Да, она может быть даже несправедливой.
              И даже вне рамок правового поля.

              Поэтому выстраивать сотрудничество надо таким образом, чтобы мыслей о подобного рода защите не возникало.


              1. VBKesha
                27.07.2019 18:42

                Например работать по предоплате, чего как раз очень не любит заказчик.


            1. vitalyvitaly
              27.07.2019 18:20

              Microsoft, кстати, вставлял логические бомбы в самые ранние версии Word для DOS (периода 1982-83 годов). Там есть фрагмент кода с вызовом сообщения в духе «Копия Word пиратская, стираю ваш жесткий диск в наказание». Читал об этом. Но не ясно, рабочая ли это была ветка когда и срабатывала ли она у кого-то реально. Особенно весело было, видимо, если она срабатывала у законного покупателя программы.


              1. vitalyvitaly
                27.07.2019 22:25
                +4

                А смысл минусовать? Это реальная история, оказывается, они так с отладчиками боролись по одной из версий. «The early versions of Word also included copy protection mechanisms that tried to detect debuggers, and if one was found, it produced the message „The tree of evil bears bitter fruit. Only the Shadow knows. Now trashing program disk.“ and performed a zero seek on the floppy disk (but did not delete its contents» (wiki-en)

                toastytech.com/guis/word1153.html


                1. saboteur_kiev
                  29.07.2019 01:27

                  В те годы в программах вообще было очень много пасхалок и шуток. Если вы сами прочитаете статью по ссылке, то увидите что там около 20 шутливых сообщений, и это — всего лишь одно из них. Никакого реального удаления или стирания — не было, только вывод сообщения, и в худшем случае (в дос) перезагрузка.


              1. saboteur_kiev
                27.07.2019 22:57
                +2

                А пруфы?

                А то вики говроит, что первая версия ворда вышла только в конце 83.


                1. vitalyvitaly
                  27.07.2019 22:58
                  +1

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


              1. tyomitch
                28.07.2019 10:27

                Microsoft, кстати, вставлял логические бомбы в самые ранние версии Word для DOS (периода 1982-83 годов). Там есть фрагмент кода с вызовом сообщения в духе «Копия Word пиратская, стираю ваш жесткий диск в наказание».

                Персоналок с жёстким диском в 1982-83 ещё тупо не существовало.


                1. vitalyvitaly
                  28.07.2019 10:55
                  +3

                  Так вполне существовали. ST-506 на 5 мегабайт выпустили еще в 1980. Другое дело, что стандартной для PC стала только следующая модель ST-412 и поддержка HDD в DOS появилась только со второй версии. Но нестандартные способы подключения существовали и в 1981 году. Выпуск жесткого диска для Apple III — сентябрь 1981 года collection.maas.museum/object/457105

                  Что не меняет того факта, что первый комментарий писался еще по памяти и там на самом деле скорее всего в виду имелась дискета. (Правда, ранние нестандартные способы подключения HDD тоже могли использовать этот интерфейс. В частности, еще потому, что в PC не было и поддержки HDD в BIOS. Однако это можно было обойти кастомным перешиванием BIOSa. Некоторые сведения были в старой книжке Питера Нортона «Работа с жестким диском IBM PC» )


                  1. DrPass
                    28.07.2019 11:13
                    +1

                    В частности, еще потому, что в PC не было и поддержки HDD в BIOS.

                    Так поддержка HDD в BIOS материнки там и не требовалась, соответствующая прошивка была в контроллере.


                    1. vitalyvitaly
                      28.07.2019 11:23
                      +2

                      В PC и XT очень даже требовалась. Во-первых, диск бы тупо не увиделся с BIOSи не было бы никакой возможности загрузки с него. Никакого автоопределения параметров не было еще много лет. И кстати работал BIOS поначалу только со строго определенным списком дисков, параметры которых были прописаны в нем же. Сначала вроде 23 модели, потом 46, и уже на продвинутых 286-х появился знаменитый тип 47, где можно было указать параметры диска вручную. Но еще без автоопределения, поэтому их надо было знать или подсмотреть на корпусе самого винчестера. С неподдерживаемыми типами FDD (а-ля 5.25 1.2 мб, 3.5 дюйма) ранние PC/XT BIOS точно так же не умели работать. Стандартного способа добавить эту поддержку программно не было. Но я все про стандартную брендовую технику IBM раннего периода. Не уверен, что там на клонах могли наворотить. Говорят, что так без поддержки BIOS мог загружаться интерфейс ESDI (?), но это вроде уже конец восьмидесятых. Вспомню еще поддержку жесткого диска советским монстром «Искра-226», восходящим к технологиям ранних семидесятых. В какой-то из комплектаций он имел жесткий диск, по-моему, клон все того же 5-мегабайтного ST-506 и поддержка HDD (низкоуровневая!) была прямо во встроенном Бейсике — low level format и посекторный доступ. Настоящий динозавр технологий.


                      1. DrPass
                        28.07.2019 12:24
                        +2

                        В PC и XT очень даже требовалась. Во-первых, диск бы тупо не увиделся с BIOSи не было бы никакой возможности загрузки с него.

                        Не требовалась. BIOS в PC и XT имел одну универсальную функцию загрузки — сканировал память выше ОЗУ на предмет специальной сигнатуры, и передавал туда управление, если находил.
                        Соответственно, если в системе был какой-либо контроллер, он отображал на память свою прошивку с этой сигнатурой и загрузчиком. И функции int 13h, int 19h для управления жестким диском и загрузки с него соответственно были непосредственно реализованы уже в самом контроллере, а не в BIOS материнки


                        1. vitalyvitaly
                          28.07.2019 12:48

                          Вот теперь мне интересно, откуда взялось ограничение " Supports up to 528MB from a table of drive descriptions in BIOS ROM. No support for >1024 cylinders or drives >528MB or LBA." в Original XT Bios. Как я понимаю, это все-таки ограничение самого Bios XT, если правильно понимаю. И вот вышеизложенное Вами — это скорее всего в основном для типов ST506/MFM (?), потому что были и клоны XT со встроенным 8-битным IDE, кажется, ранние PS/2 с 8088 процессором кажется такие были, и там вроде бы эта поддержка перенесена в системный ROM и в остальном все как «на двойке» и диск должен выбираться из нескольких заданных типов. Thanks. Причем и сам IDE-диск должен был поддерживать 8-битный тип. У меня был такой диск Seagate на 40 мегабайт, с переключателем, видимо, один из последних таких.

                          BIOS в PC и XT имел одну универсальную функцию загрузки


                          Вроде как не оригинальный BIOS PC, а только версии после августа 1982 года. Вроде бы IBM потом рассылала новый чип владельцам старых систем.


                          1. DrPass
                            28.07.2019 14:56

                            Как я понимаю, это все-таки ограничение самого Bios XT, если правильно понимаю

                            Это ограничение в параметрах int 13h. Собственно, даже не ограничение, а всего лишь предел возможностей прямой адресации CHS. Макс. количество головок * макс. кол-во цилиндров * макс. кол-во секторов = 528 Мб. Это касается любого накопителя с прямой адресацией.
                            Потом уже, когда места в микросхемах ПЗУ стало больше, как и потребностей в дисковом пространстве, добавили виртуальную адресацию, когда указывался просто виртуальный номер сектора, а в реальные адреса на накопителе уже транслировала прошивка. Это тот самый LBA.
                            И вот вышеизложенное Вами — это скорее всего в основном для типов ST506/MFM

                            Это справедливо для всех РС/РС ХТ, независимо от того, какой контроллер туда ставили, оригинальный MFM или всякого рода альтернативные, в том числе и IDE. Но естественно, никто не запрещал производителям клонов делать всё, что угодно. Очевидно, что среди них могли быть и девайсы с драйвером HDD в BIOS. Собственно, далеко не надо ходить, например, советский/украинский Поиск-2, или там ЕС 1842 имели код для поддержки винта уже в BIOS. Но это, минуточку, конец 1980-х, когда в западном мире уже 386-е вовсю выпускались, и вот-вот 486 пойдут.
                            Вроде как не оригинальный BIOS PC, а только версии после августа 1982 года. Вроде бы IBM потом рассылала новый чип владельцам старых систем.

                            Насчет этого не в курсе, если честно. Вполне может быть.


                            1. vitalyvitaly
                              28.07.2019 21:24

                              Это справедливо для всех РС/РС ХТ, независимо от того, какой контроллер туда ставили, оригинальный MFM или всякого рода альтернативные, в том числе и IDE


                              Да, все правильно. На карте контроллера есть свой ROM. Например «WD1002A-WX1, feature F300R — Half-slot size hard disk controller card with an ST506/ST412 interface. It supports 2 MFM drives with up to 16 heads and 1024 cylinders and is jumper configurable for secondary addressing and default drive tables. Built in ROM BIOS supports non-standard drive types, virtual drive formatting, dual drive operation, bad track formatting and dynamic formatting». Примерно так же должен вести себя и контроллер ESDI, хотя они исполнялись и в вариантах с ROM и без него, во втором случае поддержка диска должна быть через BIOS stason.org/TULARC/pc/hard-disk-floppy-controllers/U-Z/WESTERN-DIGITAL-CORPORATION-Two-ESDI-drives-WD1007-110.html

                              Вообще, был совет с MFM/RLL контроллерами при наличии Bios Setup (286+) ставить тип диска в 0 или 1, я сейчас прочитал и тоже вспомнил его. Диск определял сам контроллер. Но с 16-битными мультикартами c IDE-интерфейсом такой трюк уже точно не проканывал до появления автодетекта в BIOS на поздних 486. Эти карты были слишком примитивны по сути, а контроллер убрали в сам диск. Но на раритетных 8-битных IDE контроллерах, видимо, ROM таки имелся. Но кстати утилита, заменявшая автодетект, для 286-386 с IDE вроде точно была. Только сейчас эту древность вспомнил.


                              1. DrPass
                                28.07.2019 21:32

                                Да я знаю, я же не совсем посторонний чувак в отношении к контроллерам накопителей PC XT. Вон, см, надпись на плате:
                                s005.radikal.ru/i211/1404/be/e0c2256ddff3.jpg


                                1. vitalyvitaly
                                  28.07.2019 21:40

                                  Круто!


                            1. vitalyvitaly
                              28.07.2019 21:55

                              Ранние BIOS IBM PC 5150 до версии от 27 октября 1982 года не умели читать ROM с карт контроллеров. Также известны, как «544 K» BIOS, там стояло по дизайну ограничение памяти в 544 Кб. Вот даже фото знаменитого апгрейд-набора от IBM нашлось в сети

                              www.minuszerodegrees.net/5150/early/5150_bios_upgrade_kit.jpg


                              1. DrPass
                                29.07.2019 01:28

                                Интересный момент, спасибо, не знал


                        1. vitalyvitaly
                          28.07.2019 13:10
                          +1

                          В BIOS была функция 40H для дискет и 13H вроде бы вставал на ее место. Не уверен, можно ли назвать это фирменным хаком и использовали ли IBM для этого то, что интерфейс ST/506 и произошел от контроллера гибких дисков и, видимо, наследственная совместимость сохранялась для упрощения работы. Но как-то становятся понятнее описанные когда-то Нортоном дикие ухищрения ранних 80х вроде контроллеров ленточных стримеров, которые имитировали привод гибких дисков и сажались на этот же интерфейс.


                    1. vitalyvitaly
                      28.07.2019 12:14
                      +1

                      В общем случае, как я понимаю, нужен был контроллер с загрузочным ROM, что и было стандартом во времена XT. Ко временам 286 с мультикартами IDE, с которыми я больше имел дела, загрузочный ROM с мультикарт убрали и перенесли в стандартный BIOS на материнской плате. Для XT загрузочный ROM занимает 8 килобайт в памяти, которые могут читаться с любого чипа BIOS на картах расширения www.insentricity.com/a.cl/244/adding-a-hard-drive-to-an-original-ibm-pc-using-a-raspberry-pi


            1. Iv38
              27.07.2019 19:09
              +1

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


              1. DrPass
                27.07.2019 19:51
                +1

                Я думаю, срабатывание таймбомбы и ущерб от нее будут квалифицироваться как отдельное дело, а факт нарушения условий договора заказчиком как ещё одно

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


                1. vsb
                  28.07.2019 14:42
                  +2

                  Суть таймбомбы во введении в заблуждение заказчика? Т.е. если я считаю неправильный результат, это плохо, если я показываю MessageBox мол оплатите лицензию, это нормально? А если я падаю с access violation, это таймбомба или триал?


                  1. DrPass
                    28.07.2019 15:02
                    +1

                    Суть таймбомбы во введении в заблуждение заказчика?

                    В сознательном создании скрытых функций, выводящих из строя программное обеспечение. Это статья в УК. Показывать MessageBox с требованиями законно. А вот подгаживать втихаря — незаконно. Отдельный вопрос, можно ли доказать, что AV сделано намеренно, а не нечаянно. Но то такое. Первым должен идти вопрос «зачем мне это надо, если можно добиться того же результата легальным методом».


                  1. saboteur_kiev
                    29.07.2019 01:32
                    +1

                    Некоторые программы вполне могут подгаживать без лицензии. Finereader этим страдал, многие игры страдали.

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


            1. holomen
              27.07.2019 22:16
              +1

              Просто не нужно было делать явное сравнение с датой когда срабатывать, а чтобы оно выглядело как просто ошибка/опечатка. Я обычно такие баги с долгим периодом срабатывания намеренно не лечу до полной оплаты, а потом выкатываю апдейт «я тут противный баг нашел, который может сработать при таких вот условиях, вот исправленная версия». И не подкопаешься. Конечно, если по договору передаются исходники есть шанс что будут проводить аудит и найдут эту ошибку, но все равно не подкопаешься — баги у всех бывают. А если закопать глубоко в логике в редко срабатывающей ветке, да еще и просто всю дорогу считается что-то, кладется, потом опять считается, опять кладется, и так опять и снова. А потом когда-нибудь опять явно ничего не проверяется — просто если изначальный «ключ» был неверным, где-то далеко в глубине не те данные начнут обрабатываться в один прекрасный момент и глюки будут потихоньку нарастать. «Ну, ошибся в константе — опечатался...» Если кто помнит, Медноногов примерно так «Черный ворон» защищал.


              1. SergeyMax
                28.07.2019 07:34
                -1

                Признание — царица доказательств (с)


                1. holomen
                  28.07.2019 13:16
                  +1

                  Вы про меня или про программиста из статьи?
                  Если про статью, то он совершил две ошибки — явно сравнивал с датой и признался. Хотя и с самим признанием из статьи не все ясно, т.к. непонятно чем его додавили чтобы он признался.
                  Если про меня, то даже вышенаписанное не может ничего доказать, т.к. четко доказать что именно в этом проекте это именно заложенная тайм-бомба а не баг — крайне сложно, практически невозможно. «Мало-ли чего в интернете писал. И вообще вспоминал что вытворял когда был молодой и глупый ))» Точнее можно, но при одном условии — я дам доступ к собственному гиту и там по истории может быть получится найти эксперименты с таким багом. Чего, конечно-же, я в трезвом уме и здравой памяти не сделаю никогда.


                  1. Source
                    28.07.2019 19:08
                    +4

                    Я ещё не понял, если он заранее знал дату срабатывания, зачем он в отпуск то уехал на эту дату?


                    1. holomen
                      28.07.2019 20:45
                      +3

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


                    1. tvr
                      29.07.2019 11:07

                      зачем он в отпуск то уехал на эту дату?

                      Расслабился — ведь всё же обычно проходило гладко, в штатном (для него) режиме.


                      1. Source
                        29.07.2019 14:14

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


      1. DarkWolf13
        27.07.2019 20:45

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


        1. softaria
          28.07.2019 19:02

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


          1. DarkWolf13
            30.07.2019 14:22

            по опыту, если заказчик начинает «изобретать» с договором и не соглашается хотя бы на часть оговорок, значит он может кинуть… и тут либо обсудить сразу в чем проблема, либо идти дальше к следующему заказчику,- бесплатно работать и выезжать на доработки вне ТЗ это точно не мое… а то наладишь промустановку люди радостные думаю от эйфории, что можно кинуть… а конкурентов не так уж и много и мои заказчики ко мне приходят.


      1. softaria
        28.07.2019 10:05
        +5

        Есть еще забавный вариант. Заказчик находит бомбу. Немедленно переводит деньги за работу и сразу же подает в суд. Теперь система оплачена, и исполнитель вряд ли сможет что-то доказать.


      1. JamboJet
        28.07.2019 12:31
        +1

        Думаю, результат ещё зависит и от последствий «бомбы». Если в результате «бомбы» погибли люди (медоборудование) или причинен серьезный ущерб (взрыв газопровода) это уже совсем другое дело.


    1. Wesha
      27.07.2019 20:21
      +2

      Если "ОАО НПП „ХХХ“ не оплатило разработку это приложения", то в 5 часов утра на охраняемый объект проникают диверсанты.


    1. edogs
      27.07.2019 23:23
      +3

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


    1. gm1
      28.07.2019 21:44

      Когда клиент платит очень часто такой сюрприз программисты делают, чтоб без денег не сидеть.


  1. Oval
    27.07.2019 16:12

    Пароль в экселе ничего не защищает


    1. Dink
      27.07.2019 17:08
      +3

      Ну почему, исходя из написанного в статье, пароль в экселе как минимум защищает от аудита сотрудниками самсунга :)


      1. tvr
        27.07.2019 17:55
        +1

        пароль в экселе как минимум защищает от аудита сотрудниками самсунга :)

        Сименсовской самописной системы учёта.
        Я всегда не доверял этим ушлым корейцам, оказалось — не зря!


      1. edogs
        28.07.2019 14:33
        +1

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


        1. Gibboustooth
          28.07.2019 22:51

          Я не уверен, что тут можно говорить о какой-либо юридической защите. Софт этого инженера скорее всего не был защищен ничем, кроме авторского права. «Обход пароля» как таковой не требуется — сам код программы хранится в файле VbaProject.bin, который не защищен никаким шифрованием, а значит открытие и чтение его не нарушает никаких законов. Почему в Сименс этого не делали — я не знаю. Скорее всего, не видели необходимости разбираться в чужом коде.


          1. edogs
            29.07.2019 01:43

            «Обход пароля» как таковой не требуется — сам код программы хранится в файле VbaProject.bin, который не защищен никаким шифрованием, а значит открытие и чтение его не нарушает никаких законов.
            И все же в данном случае нарушило бы.
            Проникновение в чужую собственность (код) все равно проникновение, даже если заход был через непостроенную стену (незащищенный файл), при наличии закрытой двери (пароля). Основной нюанс в том, что дверь была закрыта и сименс об этом знал, поэтому проход через непостроенную стену это уже «обход пароля», а не просто «чтение файла».


            1. Iv38
              29.07.2019 04:07

              Сложный вопрос. В данном случае софт сделан по заказу, и в зависимости от договора заказчику могут принадлежать все имущественные права на него. Но даже если это не так, то законы могут позволять декомпилировать и изменять софт для обеспечения его функционирования, как это позволяет конечному пользователю ГК РФ, например.


  1. xfaetas
    27.07.2019 17:16

    "Логическая бомба" — как-то слишком громко звучит для тупого триггера по дате. Вот нарушение логического закона тождества A = A в C-подобных языках программирования — это да, бомба так бомба.


    1. scg
      28.07.2019 10:22
      +2

      #define TRUE ((random() & 0b1)


    1. aamonster
      28.07.2019 13:48

      Вы про NaN? (который, как известно, не равен сам себе)


  1. imanushin
    27.07.2019 17:58

    На самом деле это важный прецендент. При заказной разработке зачастую код получается "немного не по guideline'ам". Как следствие — программа перестает работать на новой версии операционной системы/браузера (так как разработчик использовал хаки и нюансы текущей, без оглядки на будущее).


    Как следствие — компания-заказчик обращается к тому же поставщику (так как в подобном коде уже никто другой особо разобраться и не сможет задешево), а потом еще раз и так далее. Получается такой мягкий vendor lock-in.


    Так вот: в таком сценарии намеренное игнорирование рекомендаций Google по разработке сайтов в некотором смысле являются теми же таймбомбами.


    1. ialexander
      27.07.2019 18:20

      Как вы плавно перевели от Excel к разработке сайтов по рекомендации Google.


      Надеюсь, за игнорированиям этих рекомендаций в суд пока не тянут? А то стало страшно.


    1. vedenin1980
      27.07.2019 18:53

      Получается такой мягкий vendor lock-in.

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

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


      1. nikolayv81
        27.07.2019 23:05
        +1

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


        1. vedenin1980
          27.07.2019 23:21

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

          Да, в «коробочном» решении тоже самое, если документации и api идеальны никто не купит техподержку и допиливание фич или закажет их у любого другого стороненного разработчика. Поэтому часто разрабочик заинтересован не делать продукт слишком хорошо.


          1. Greendq
            27.07.2019 23:46

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


            Очень часто подобное наблюдается в индусском коде — абстракция на абстракции сидит и абстракцией погоняет.


    1. adictive_max
      27.07.2019 19:30
      +5

      А вот нифига. Специально делать закладки в СВОЁМ коде, специально направленные на то, чтобы он перестал работать — это одно дело. А предвидеть наперёд всё, что теоретически может поменяться — это совсем другое. У вас, например, есть список на следующие 15 лет, какие функции в WinAPI или Web-стандартах станут работать по-другому или перестанут работать вообще, в том числе не намеренно, а из-за сайд-эффектов от других изменений?


    1. sumanai
      27.07.2019 21:48
      +2

      рекомендаций Google по разработке сайтов

      Кто такой этот Google, чтобы давать рекомендации?


      1. DrPass
        27.07.2019 23:08
        +5

        А, это такая группа чуваков, которая за вас решает, найдут ли ваш сайт другие пользователи или не найдут.


        1. kinjalik
          28.07.2019 03:08

          А теперь ещё и решают, в большинстве случаев, увидите ли вы сайт в принципе (нет SSL даже на текстовом сайте без персональных данных? Бан!)


          1. sumanai
            28.07.2019 11:08

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


        1. sumanai
          28.07.2019 11:07
          +2


          Чего и остальным советую.


          1. DrPass
            28.07.2019 11:21
            +4

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


    1. aram_pakhchanian
      27.07.2019 21:49

      Здесь важно доказать намерение. Иначе даже простую ошибку можно зачесть за саботаж.


  1. maxbrown
    27.07.2019 18:05

    Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in
    Для не понявших юмора: использовать функции, о которых точно известно, что через некоторое время они перестанут работать сами, безо всяких логических бомб.
    В ту же копилку тотальное кэширование и логирование без средств очистки. Туда же «не замеченные» баги в ТЗ, особенно в случае формального отсутствия такового. И ещё тысячи способов, от всех никаким договором не защитишься.
    Но нафига?
    По уму если, то вовсе не надо никаких таких гадостей делать, а нужно выбирать проекты, которым неиминуемо потребуется доработка в связи с развитием. Да, для такого предвидения необходим опыт, но странно, что 52-летний чувак им не обладал либо поленился и предпочёл вместо этого пойти к успеху кривой дорожкой.


    1. wxmaper
      27.07.2019 21:46
      +2

      использовать функции, о которых точно известно, что через некоторое время они перестанут работать сами, безо всяких логических бомб.

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


  1. ittakir
    27.07.2019 18:11

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


    1. AllexIn
      27.07.2019 20:12
      +8

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

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

      В следующий раз я всё захардкодил, все редакторы которые сделал для верстки и настройка оставил себе. И что вы думаете? Через месяц ко мне пришли за редизайном.

      И вот с тех пор я каждый раз думаю, а выгодно ли мне делать заказчику хорошо? И каждый раз отвечаю: нет, мне выгодно делать по ТЗ. А хорошо — только за отдельные деньги.


    1. androidovshchik
      28.07.2019 09:18
      -5

      Бывают проекты типа прототипа на 1-2 дня. Мне заключать договоры по ним или надеяться на порядочность неизвестного заказчика? Без бомб не вижу смысла браться за такие работы. В остальном да. Крупные и средние проекты требуют большой ответственности, меня до сих пор мучают мысли, что несколько таких запорол и в свое время бросил, потому что либо угорел, либо были другие причины. Лучше десять раз подумать и в полной мере оценить, прежде чем хвататься без разбора за подобные. За 4 года у меня было несколько конфликтов, но они все решились (один раз даже до суда накал был), цепляться за старых заказчиков можно, но не всегда получается держать ценовую планку, как ни странно, потому что чем дольше работаю с определенным заказчиком, тем меньше в результате получаю по деньгам. Парадокс для меня


  1. ialexander
    27.07.2019 18:24
    +1

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


    1. DarkWolf13
      27.07.2019 20:49
      +1

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


  1. 1c80
    27.07.2019 19:28
    -5

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


  1. Sergey6661313
    27.07.2019 19:28
    +2

    одно не понятно — если он дал пароль это ведь обозначает что компания может сама вбросить туда тайм бомбу. Как именно суд постановил что виноват именно Дэвид? Как доказали что именно он написал этот код? Если вводили пароль и смотрели код в присутствии нотариуса и понятых и на камеру — даже в этом случае в компьютере заранее могла быть написана программа которая вставляла бы вредоносный код в xls фаилы сразу как получают к ним доступ. Таких программ на самом деле сотни. Всякие win locker-ы которые потом после того как ломают файлы вымогают перевести деньги на биткоин кошельки.
    Либо я чего то не понимаю, либо сейчас подставить человека слишком легко.


    1. vedenin1980
      27.07.2019 19:32
      +1

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

      сейчас подставить человека слишком легко.

      Да это всегда было легко. Дали работнику и партнеру доступ к проду, а потом заявили, что именно он его сломал специально. Как доказать обратно? Или даже не на прод, мало ли вирус в сеть запустил, троян поставил, багов в код накидал, информацию конкурентам сливал и т.п.


    1. funca
      27.07.2019 20:14

      Он сам признал себя виновным. Судя по информации ранее ему предлагали уладить спор, но он все отрицал. Затем пробовал сослаться на то, что ошибки были вызваны не обнаруженными закладками, а несовместимостью с новыми апдейтами Excel. В результате дело дошло до полномасштабных слушаний. Решения пока нет, приговор будет вынесен в ноябре.


    1. Gibboustooth
      28.07.2019 22:54

      Например, он отправил файл по электронной почте.


  1. amaksr
    27.07.2019 20:11
    +3

    Программист разработал для компании сложные таблицы Excel с формулами

    пароль на свой код исключительно для защиты интеллектуальной собственности

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


    1. AllexIn
      27.07.2019 20:19
      +2

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


      1. nikolayv81
        27.07.2019 23:18

        С другой стороны это вводимая сейчас всеми "сервисная модель" т.е. вам платят не за АО а за услугу его предоставления на срок :)
        В это части очень интересна ситуация с крупными корпорациями рискующими попасть под санкции, как-то присутствовал на демонстрации одного иностранного продукта(в общем его предполагалось использовать как замену живым людям, которых соответственно предполагалось "оптимизировать") который поставляется только по timeshare лицензии на год, и во время презентации меня всё гложил вопрос, а как же непрерывность деятельности и санкции…
        Так вот в итоге когда этот вопрос был задан, уровень оптимизма у презентовавших продукт как-то поубавился, но уверили что работают по данному направлению.


    1. Dolios
      28.07.2019 04:12
      +1

      Не нужно путать трудовые отношения с гражданско-правовыми.


  1. funca
    27.07.2019 20:19
    +1

    Вот интересно, куда смотрел менеджмент организовавший работу так, что столь важные процессы держались на одном контракторе. А если бы автобус? А может ситуация была выгодна не только 62 летнему программисту? У них похоже есть повод для проведения ещё и внутренних расследований.


    1. VBKesha
      27.07.2019 21:49
      +6

      Итак независимый подрядчик который написал какуюто софтина, и на её поддержку за 15 лет потратили меньше $5000(около 28$ в месяц). И с которого потом ещё и поимели 42000$
      Я думаю они достаточно хороши.


      1. DrPass
        27.07.2019 23:15

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


        1. funca
          27.07.2019 23:49

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


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


    1. nikolayv81
      27.07.2019 23:32
      +1

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


  1. Tsimur_S
    28.07.2019 01:21

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

    Кто нибудь может объяснить этот абзац? В чем заключается казус и как он может вынудить признать вину если он уже изложил факты «в поддержку признания вины»? Или весь смысл фразы что обвиняемый просто пошел на сделку с правосудием?


    1. SergeyMax
      28.07.2019 07:43

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


  1. mig126
    28.07.2019 10:08
    -1

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


    1. vedenin1980
      28.07.2019 10:48
      +2

      Было уже при Сталине, когда миллионами зеков строили БАМ'ы и подобные проекты. По факту, получался такой рабовладельческий строй. Очень соблазнительно для любой власти, особенно если в лагеря отправлять за любые проступки и доносы.


      1. mig126
        28.07.2019 11:51

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


        1. Fenzales
          28.07.2019 15:05

          От десяти лет и более, когда вышедший к мирной жизни(как и вышедшие на пенсию военные) не пригоден
          Это проблема реализации, а не концепции тюрем.


    1. Andry81
      28.07.2019 11:52
      +2

      А зачем тюрьме самоокупаемость?
      Заключенный это мой согражданин и я обязан его кормить. Это форма наказания, а не рабства.


      1. tyomitch
        28.07.2019 11:58
        +2

        В развитых странах — это форма реабилитации, где и профессии научат, и социализируют, и психику подправят.


        1. saboteur_kiev
          29.07.2019 01:34

          В развитых странах — тюрьма это организованный рабский труд.


      1. Gar02
        28.07.2019 16:04
        -1

        Ага, конечно. В «оплоте демократии», например, заключённые частных тюрем делают кевларовые каски для военных. И много чего чего другого. Там не просто самоокупаемость, там — не хилые прибыли.


        1. mig126
          28.07.2019 16:53

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


        1. Andry81
          28.07.2019 18:02
          +1

          Это приводит к подобным случаям, в России тоже ЗК много где работают, причем зарабатывая для своих патронов большие деньги и для себя ничтожные
          Я где-то уже слышал, что Россия это нищие США, вот только не знаю расценивать это как комплимент или как оскорбление?
          ru.wikipedia.org/wiki/%D0%94%D0%B5%D0%BB%D0%BE_%D0%BE_%D0%BF%D1%80%D0%BE%D0%B4%D0%B0%D0%B6%D0%B5_%D0%B4%D0%B5%D1%82%D0%B5%D0%B9_%D0%B2_%D0%BE%D0%BA%D1%80%D1%83%D0%B3%D0%B5_%D0%9B%D1%8E%D0%B7%D0%B5%D1%80%D0%BD

          «Дело о продаже детей» (англ. Kids for cash) — уголовное дело по факту должностного преступления, совершённого судьями округа Люзерн, которые незаконно передавали осуждённых несовершеннолетних лиц в частные ювенальные тюрьмы штата Пенсильвания; оно было раскрыто в 2009 году


        1. Fenzales
          28.07.2019 19:32

          Поэтому в США процент рецидивов — 76%, а в Норвегии — 20%.


          1. mig126
            28.07.2019 19:48
            +1

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


  1. Gar02
    28.07.2019 16:02
    +5

    Интересно, удалось ли наказать хоть одну компанию-разработчика ПО или железа за применение «запланированного устаревания»? Вот прямо с миллионными компенсациями и уголовными сроками.
    Сдаётся мне, что нет.


    1. Iv38
      29.07.2019 04:18

      Это ж ещё поди докажи. Редко когда запланированное устаревание явное. Но из таких случаев можно вывернуться. Как Apple со снижением частоты процессора у старых смартфонов. Факт как бы установлен, но формально цель благая — обеспечить функционирование аппарата с изношенной батареей. Да и разве есть законы, позволяющие за такое наказать? Ну кроме картельных сговоров производителей. Так-то никто не мешает уменьшать срок эксплуатации собственных изделий. Потребитель по идее может проголосовать деньгами против этого.


  1. lotse8
    28.07.2019 16:16
    +1

    Так поступать нельзя по многим причинам. От юридических до моральных. Показательную посадку сделают, чтобы другие задумались.


  1. enzain
    30.07.2019 14:13

    Ну именно в контексте того, чтоб обращались снова — поделом…
    Ибо нефиг…


  1. Antonariy
    30.07.2019 20:49

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