애플리케이션에 자체 파괴 방법을 포함시켜야합니까?


39

최근에 고객이 청구서에서 쫓겨 난 부정적인 경험이 있었지만 중개인이 소프트웨어와 디자인을 클라이언트 서버에 이미 업로드했습니다. 클라이언트는 알려진 범죄자로 밝혀졌으며 물론 서버의 모든 가능한 암호를 변경했습니다.

그러나 여전히 CMS의 관리자 패널에 액세스 할 수 있습니다. 슬프게도 내 소프트웨어가 매우 안전하다는 것이 밝혀졌습니다 .. SQL 주입을 시도하고 이미지 업로드 등을 위조했습니다. 그러나 내 소프트웨어를 해킹 할 수는 없습니다. 문제는 .. 지금 생각하고 있는데, 아마도 백엔드 자체 파괴 방법이있을 것입니다. 따라서 비슷한 경우가 발생 하면 소프트웨어 를 죽일 수있는 옵션 이 있습니다.

내 생각은 핵심 파일에서 일부 기능을 숨기는 것입니다. base64로 인코딩하므로 명확하지 않습니다. 그래서 이런 식으로 :

eval(base64_decode('ZWNobyAnSGVsbG8gd29ybGQhJzs=')); // echo 'Hello world!';

그리고 기본적으로 작은 스크립트를 만들어 모든 소프트웨어 파일을 가져 와서 chmod가 확인한 다음 삭제합니다.
최신 버전의 CMS에는 모두 해킹 을 쉽게하기 위해 사용할 수있는 파일 관리자가 있습니다 . 그러나 관리자 패널에 대한 액세스가 제한되어 있다면 어떨까요?

매우 명확하게 말하자면 이것은 개인용 서버 또는 클라이언트 서버의 개발 단계 소프트웨어에만 해당됩니다 (마지막 부분은 윤리적으로 의문의 여지가 있습니다). 따라서 고객이 내 소프트웨어를 훔쳐 야하는 경우. -소프트웨어.
더 명확하게하기 위해 , 우리는 그 희귀 한 프리랜서 일자리 에 대해 이야기하고 있습니다. 계약 작업에는 그러한 방법이 필요하지 않습니다. 우리는 개발 모드에서만 이러한 위험에 직면 한 클라이언트들에 대해 이야기하고 있습니다. 프로젝트가 준비되면, 이것은 매우 비 윤리적 인 백도어 가 될 것 입니다.

  1. 윤리적으로 이것이 좋은 생각입니까? (프로젝트가 100 %이고 모든 것이 지불되면 분명히 제거 할 것입니다.)
  2. 클라이언트와 비슷한 문제로 인해 여러분 자신의 소프트웨어 를 해킹 한 적이 있습니까?
  3. 이 아이디어, 코드 및 방법에 대한 권장 사항은 무엇입니까?
  4. 자기 파괴 스크립트의 가능한 단점 또는 영향은 무엇입니까?

이것에 대한 나의 결론

모든 답변이 계약 된 사건을 대상으로한다는 점은 조금 슬프다. 내 질문에 더 명확하게 설명하지 않은 것은 내 잘못이었다. 단지 계약에 의해 보호받을 때 킬 스위치에는 아무런 의미가 없다고 생각했다.
그러나 계약 작업을하는 경우 계약서에 명시해야합니다. 이는 클라이언트 자체 서버 내부에서도 합법적입니다. 그러나 내 개인 서버에 킬 스위치를 사용하는 것은 실제로 비즈니스가 아닙니다 (이것이 내가 정말로 알고 싶었던 것입니다).

CMS에 킬 스위치 스크립트를 작성하기로 결정했습니다. 주로 흥미로운 도전으로 보입니다. 또한 클라이언트가 친구의 친구 인 친구 인 비 계약 작품에도 사용할 수 있습니다. 클라이언트 서버에서는 사용하지 않을 것입니다. 중개인이 내 서버에 액세스 할 수 있습니다.. 그리고 소프트웨어가 도난 당했거나 "내 지식없이 이동"하면 돈을받지 못하고 소프트웨어에 대한 액세스가 중단됩니다.

나는 여기에서 많은 주제를 읽었으며 경고를 보내고 페이지를 내려 놓을 것을 권장합니다. 글쎄, 나는 누군가를 상대 할 때와 같이 문제가있는 것을 보았다. 누가 다른 곳으로 그것을 복사하고 (브랜드를 바꾸고 팔 수도있다), 나에게 말해졌다. 또한 "사이트를 끄지 않고"삭제합니다. 그래도 클라이언트 서버에 액세스하여 삭제하는 것은 여전히 ​​불법입니다. 또는 적어도, FTP가 아닌 트로프 백엔드에 액세스하십시오. 이것에 대해 나는 대답 한 당신 모두에게 감사합니다.


26
당신의 노력은 당신의 고객에 대한 실사를 수행하는 데 더 잘 사용될 것입니다!
Steven A. Lowe

14
코드에 알려지지 만 의도적 인 보안 취약점을 남겨 두는 것은 비전문가 일뿐만 아니라 법적 위험에 노출되어 있어야합니다.
Kevin D

2
뒷문과 폭탄은 아마도 제품 사양의 일부가 아닙니다. 국가 / 국가의 책임과 계약 법률에 따라이 계약의 위반 행위가
스티븐 A. 로우

11
나는 이것을보고 즉시 생각할 지도 모른다 .
메이슨 휠러

3
@ KalleH.Väravas Freeland work! = 계약없이 일하십시오. 그것은 "자영업자이고 특정 고용주에게 장기적으로 헌신하지 않는 사람"을 의미합니다. 계약없이 일을하는 것은 거의 항상 나쁜 생각으로 여겨집니다. 왜냐하면 당신이이 질문을하는 정확한 이유 때문에 (고객은 일에 대한 비용을 지불하지 않고
도망칩니다

답변:


38

저는 변호사가 아닙니다. 고객을 고소 할 목적으로 이미 가지고있는 것 같습니다. 당신이 그를 보유자에게 가지고있는 동안 나는 이것에 대한 조언을 얻는 것이 좋습니다.

이 사이트에는 "킬 스위치"및 개발자가 보상을받지 못한 소프트웨어를 비활성화하는 다른 방법을 다루는 다른 질문이 있습니다. 일반적으로 계약이이 가능성을 규정하지 않고 "턴키"소프트웨어 (소프트웨어를 개발 한 후 고객에게 모든 권한을 양도)에 소프트웨어를 구축하는 것은 좋지 않은 생각으로 간주됩니다.

우선, 계약서에 비 지불로 소프트웨어를 비활성화 할 수 있다고 명시되어 있지 않거나 지불이 전액 수령 될 때까지 고객에게 소프트웨어에 대한 권리가 없다고 명시되어 있지 않으면 "킬 스위치"를 넘길 수 없습니다 계약 위반 반대로, "소유는 법의 9 분의 1이다"라는 말이 없다면, 그가 소유 한 소프트웨어는 그의 소프트웨어이기 때문에 그것을 파괴하는 것은 당신이 그랬다면 그를 위해 지은 새 사무실 건물을 다니는 것과 비슷할 것이다. 비용을 지불하지 마십시오.

두 번째 요점은 다음과 같습니다. 고객에게 제공하는 모든 계약에는 "계약 만족도에 대한 지적 재산권 이전" 의 효력이 있습니다. 그것은 당신이 그에게 사용할 소프트웨어의 사본을 주었더라도, 그가 당신에게 전액을 지불 할 때까지, 그는 그것을 소유하지 않음을 의미합니다. 이 WOULD는 귀하가 전액 지불을받을 때까지 어떤 이유로 든 소프트웨어 사본을 비활성화 할 권리를 귀하에게 있으며 귀하가 원하는대로 할 수있는 권리를 부여합니다. 이제 그는 계약을 위반했지만 아직 계약을 체결하지 않았으므로 변호사가 발표하기가 훨씬 쉬우 며 고객이 잘못 구입 한 물건으로 인한 이익을 얻지 못합니다.

건축업자와의 유사점은 다음과 같습니다 : 일단 건설중인 건물이 불법 출입에 대해 보호 될 수 있다면, 계약자는 일반적으로 작업이 완료되고 사인 오프 될 때까지 모든 열쇠의 모든 사본을 구내에 보관합니다. 지불이 전액 접수되었습니다. 열쇠를 양도 한 후에도 지불이 이루어지면 재산에 대한 유치권을 붙일 수 있으며 극단적으로 그것을 다시 소유하게 할 수 있습니다. 여기서도 마찬가지입니다. 고객은 소프트웨어에 액세스 할 수있는 키를 제공 할 수 있지만 "마스터"키를 보유하면 전액을 지불 할 때까지 관리자 액세스 권한을 얻지 못합니다. 그가 지금 들어갈 수 있고 당신에게 돈을 지불하지 않는다면, 단지 "자물쇠를 바꾸어"소프트웨어에서 그를 잠그면됩니다.

그러나 클라이언트에 소프트웨어에 대한 "마스터"키를 부여했으며, 이제 모든 잠금을 해제하여 변경하지 못하도록했습니다. 이제는 그 방법으로 작동하지 않습니다. 여전히 손해 배상을 청구 할 수 있지만 그 동안 비뚤어진 고객이 소프트웨어를 사용하여 다른 곳에서 소프트웨어를 복사 할 수 있습니다 (계약자에게는 발생할 수없는 큰 일입니다. 건물을 다시 가져 가면 그는 걱정할 필요가 없습니다) (다른 로트에 정확한 무료 사본을 만들었습니다) 등) 기본적으로 귀하의 유일한 구제책은 소프트웨어의 모든 사본을 회수했음을 보증 할 수 없기 때문에 전액 지불을 시행하는 것입니다. 소프트웨어가 더 이상 사본을 가지고 있지 않다고 보장 할 수 있더라도 소프트웨어를 되 찾아서 기쁘지 않을 것입니다. 그냥 돌아 서서 다른 사람에게 팔 수없는 맞춤 작업 일 수 있습니다.

소프트웨어에 대한 귀하의 권리에 관계없이 그의 데이터는 그에게 귀속됩니다. 만질 수 없습니다. 자신이 만든 소프트웨어에 대한 액세스를 중지 할 수 있지만, 데이터를 파괴하는 경우, 비용을 지불하지 않은 사람을 지은 건물을 철회 한 후 소유물을 태우는 것과 같습니다. 귀하는 해당 데이터에 대해 어떠한 권리도 없으며 컴퓨터에 그대로 두거나 소프트웨어없이 합리적인 방식으로 데이터에 액세스 할 수없는 경우 소프트웨어와의 얽힘에서 데이터를 제거하여 사용 가능한 형식 (예 : 사람이 소비 할 수있는 데이터베이스 또는 인쇄물 또는 전자 사본).


3
감동적인 답변! 감사합니다. 이 질문이 프리랜서 작업을 염두에두고 있다는 점을 제외하고는 100 % 동의합니다. 죄송합니다. 질문에서 명확하지 않은 것 같습니다. 나는 그러한 방법을 계약 작업에 사용하지 않을 것이며, 그 상식과 그에 대한 질문도 이유가 될 것입니다. 어쨌든 법적으로 다루어지기 때문입니다. 그러나 나는 당신이 자동차를 원하는 사람과 구두 계약을 할 때에 대해 이야기하고 있습니다. 그리고 당신이 그것을 만드는 동안 그는 그것을보고 싶어 .. 따라서 개발 모드에서 .. 점화 스위치를 끊는 것이 쉽지 않을까요?
Kalle H. Väravas

11
그렇기 때문에 귀하는 서면 계약없이 귀하를 고용하지 않은 사람, 상당한 시간이나 자원을 필요로하는 사람을 위해 개발 작업을하지 마십시오. 독립 계약자로 자신을 대표하고 있기 때문에 여전히 "자유로운"작업이지만 계약을 통해 귀하와 고객 모두 뒤를 커버 할 수 있습니다. 그것은 제품과 돈뿐만 아니라 사무실 공간과 컴퓨터와 같은 자원이 양측이 상대방에게 제공 할 내용과 합의에 따라 발생하지 않을 경우 어떻게 될지를 명시합니다.
KeithS

동의했고 수업을 받았습니다. 글쎄, 이론적으로는 정확하지만 다른 변수의 드문 조합 중 하나였습니다. 저렴한 가격 (1000 €)을 원하는 친구의 친구, 맞춤형 디자인의 개인 CMS. 프로그래머 커뮤니티가 이것에 대해 어떻게 느끼는지 더 분명하다고 생각합니다. 답변 해 주셔서 감사합니다. 계약서에 여전히 초점을 맞추었지만 비 계약직에 대한 상상력을 남겼습니다.
Kalle H. Väravas

멋진 답변입니다.
Teekin

21

개념 상 당신이 맞습니다. 당신의 처형은 모두 잘못되었습니다.

만료 된 평가판 라이센스를 제공해야합니다. 전액 지불하면 최종 "영원히"라이센스를 부여하십시오. 솔직하고 정직합니다.


훨씬 더 나은 아이디어.
익명 유형

실제로, "당신은 왜 계약을하지 않는지"또는 "사용 unlink()은 불법이다"에 대해 논쟁하지 않는 첫 번째 대답입니다 . 나는 실제로 당신의 생각을 정말 좋아합니다. CRON에서 무언가를 요리 할 수 ​​있습니다.
Kalle H. Väravas

@ 칼 : 아무도 "사용 unlink이 불법 "이라고 말한 적이 없습니다 . 사람들 겪고 자하는 것은 적어도 미국은 "무단 컴퓨터 시스템의 무단 사용"에 관한 매우 광범위한 법률을 가지고 있다는 것입니다. 법률 서한에 따르면 대부분의 사람들이 업무용 컴퓨터를 사용하여 여기에 답변을 게시하는 것은 범죄입니다. 귀하에게 계약을 체결 할 권리가 없다면, 귀하가 소유하지 않은 컴퓨터에서 실행되는 소프트웨어를 원격으로 비활성화하면이 법률에 위배됩니다. 사용하지 않는 소프트웨어의 도난 여부는 요금이 실행중인 시스템을 무단으로 사용했을 때 관련이 없을 가능성이 높습니다.
Dave Sherohman

@ 데이브. 나는 당신의 요점을 알지만 당신이 그것에 대해 생각한다면. 계약이없는 경우 약관 및 설정되지 않은 사항. 그런 다음 프로그램은 그대로 구멍입니다. 따라서 소프트웨어가 이동 / 도난 / 제공되었을 때 킬 스위치가 코드 내부에있는 경우 해당 킬 스위치 (기본적으로 unlik () 함수)를 사용하는 것이 소프트웨어 목적의 일부입니다. 변호사와 상담했습니다. 그는 소프트웨어 해킹이 불법이라고 지적했다 (예를 들어 파일 관리자를 사용하여 링크 해제 스크립트를 업로드하는 경우). 그러나 킬 스위치가 소프트웨어의 일부로 코드 내부에 포함된다면 완벽하게 합법적이다.
Kalle H. Väravas

19

아니요. 고객이 알게되면 몸이 나빠질 수 있습니다. 전혀 안전하지 않습니다. 누군가, 어떤 방법으로 트리거하는 방법을 찾은 다음 갑자기 모든 고객에게 연락하여 그것에 대해 알리고 긴급 패치를 수행 해야하는 이유를 알 수 있습니다.

당신이 그것을 해킹하면 당신은 또한 형사 소송에 자신을 개방하고 있습니다. 사이트를 여전히 소유하고 있다는 증거가 있다고 생각하십니까? 액세스 할 권리가 있습니까? 그의 사업 비용은 "천문학적"일 수있다

수용 가능한 대안이 있습니다. 사이트에 워터 마크를 넣으면 모든 페이지에 메시지가 표시됩니다. 결제시 워터 마크를 제거 할 수 있습니다.


내가 참조. 나는 당신의 요점을 얻는다. 기록을 위해 킬 스위치는 비상업적 소프트웨어에 포함되며 대부분 내 서버에만 있거나 최소한 개발 모드에만 포함됩니다. 일부 고객은 개발이 자체 서버 내에서 수행되어야하므로 매우 취약한 상황에 처하게됩니다. 저는 현재 모든 파일에 크레딧을 받았고 디자인에 워터 마크가 찍혀 있으며 이름은 어디에나 있습니다. 저는 확신을 갖고 소송을 이길 것이라고 확신합니다. 내 서버에 킬 스위치를 두는 것이 여전히 좋은 생각이라고 생각합니다. 그들을 훔칩니다.
Kalle H. Väravas

17

이것은 잠재적으로 감옥에 갇힐 수있는 엄청나게 나쁜 생각처럼 보입니다.

  1. 비 윤리적입니다. 클라이언트의 나쁜 행동으로 인해 시스템을 해킹하는 것이 옳은 것은 아닙니다.
  2. 불법입니다. 이 문제 는 이전일어 났 으며 문제 당사자들에게 나쁜 결과를 가져 왔습니다 .
  3. 무의미합니다. 이 백도어로 문제를 일으키지 않을 수있는 방법은 무엇입니까? 고객을 협박 하시겠습니까?
  4. 멍청 해 잡히지 않고이 작업을 수행 할 수 있더라도 잠재적 인 위험은 가능한 모든 이익보다 훨씬 큽니다.

1
죄송 합니다만 귀하의 답변에 WHY 부분이 없습니다. 왜 나쁜 생각이고 감옥에 갈 수 있는지에 근거합니까? 좀 더 설명해 주시겠습니까?
Kalle H. Väravas

3
@Kalle이 정서에 동의하는 한 옳습니다. 이유를 포함하십시오. -1
Steven Evers

3
킬 스위치가 불법이라고 말하는가? 계약이 특정 상황으로 인해 서비스가 중단 될 것을 규정하는 경우 불법이 아닐 수 있습니다.
FrustratedWithFormsDesigner

그것은 당신이 사업을 수행하는 곳의 법적 기준에 달려 있지만, 일반적으로 법률 시스템은 문제를 직접 해결하려는 노력을 엄중히 처벌합니다. 그들은 정말로 당신이 법정 시스템을 통과하기를 원합니다. 일부 관할 구역에서는 허가없이 컴퓨터 시스템에 단순히 액세스하는 것은 감옥에서 처벌 할 수있는 중범 죄입니다. 귀하는 그것이 귀하의 소프트웨어라고 주장 할 수도 있지만, 법원은 귀하가 아닌 귀하가 결정할 것이라고 말합니다.
Charles E. Grant

킬 스위치 방식은 프리랜서 작업을 염두에 두었습니다. 미안, 내 질문에 언급하는 것을 잊어 버렸습니다. 나는 계약 작업에서 그런 방법을 사용하지 않을 것입니다. 여기에있는 법적 문제 (에스토니아)는 저작권법에 관한 한 걸음 단계에 있습니다. 스웨덴 및 핀란드와 같은 저작권법은 유사하지만 동일하지 않습니다. 개인적으로 나는 전에 고객들에게 아무런 문제가 없었습니다. 어떤 사람들은 지불을 지연시키는 것입니다.
Kalle H. Väravas

12

프로그래머에게 묻지 말고 변호사에게 문의하십시오. 나는 적어도 당신이 당신의 질문에 대해 생각하는 것을 할 권리가 있다고 말하는 조항을 계약서에 포함시키고 싶다고 생각합니다. (일부 계약의 "돌이킬 수없는 피해"조항은 법원에서 소프트웨어를 정리할 기회가있을 때까지 소프트웨어를 즉시 종료하라는 법원 명령을받지 않습니까?) 법원 명령은 귀하보다 더 안전하다고 생각합니다. 코드 폭탄 (범죄로 간주 될 수 있음, 법원에서 소프트웨어를 소유하지 않은 것으로 판명되면 재산을 파괴 할 수 있음), 미국에서는 디지털 밀레니엄 법 (Digital Millennium Act) 등의 디지털 암호화 조항에 해당 될 수 있습니다. 민사 법원에서 손해 배상을 받고 여전히 형사 재판소에서 유죄 판결을 받고 있다고 상상해보십시오.

규칙은 귀하와 귀하의 고객이 거주하고 운영하는 지역에 따라 다르므로 변호사를 원한다고 생각합니다.


킬 스위치는 주로 프리랜서 작업을 목표로 삼았습니다. 계약이 훨씬 쉬워졌습니다. 현재의 경우는 기본적으로 다음과 같습니다. 내 지식이없는 내 소프트웨어가 서버에서 옮겨졌으며 그게 전부입니다. 그런 다음 다시 도둑질을하는 분명한 사례가 있습니다. 그래서 법적인 현명한 상황에서는 걱정할 필요가 없습니다. 따라서 킬 스위치는 소프트웨어를 도난 당했을 때 주로 내 서버에있을 것입니다. 그래도 여전히 나쁜 생각이라고 생각하기 시작했습니다. 답변 해 주셔서 감사합니다. 며칠 후에 변호사와 만날 예정입니다.
Kalle H. Väravas

5

윤리적으로 이것이 좋은 생각입니까?

절대적으로하지. 그것은 당신을 정직하고 선량한 고객에게 비전문가처럼 보이게 할뿐만 아니라, 전체적으로 직업에 해롭다 고 생각합니다. 소프트웨어 엔지니어는 고객 또는 고용주에게 최고 품질의 소프트웨어 제공을 포함한 책임이 있습니다. 지불 또는 계약에 대한 분쟁이있는 경우 적절한 채널이 있습니다. 소프트웨어의 품질을 낮추는 것은 적절한 채널이 아닙니다.

클라이언트와 비슷한 문제로 인해 여러분 자신의 소프트웨어를 해킹 한 적이 있습니까?

계약이나 프리랜서 작업은 한 번도하지 않았습니다. 나는 항상 더 큰 조직의 직원이었습니다 (일부 경우 계약을 맺고있었습니다). 나에게 생각은 생각할 수 없다. 시스템의 사용자에 대한 윤리적 책임뿐만 아니라 소프트웨어의 품질을 떨어 뜨리는 것보다 소수의 고객에게 내 이름을 부여하고 속이는 것에 대해 자랑스럽게 생각하는 소프트웨어를 제공하고 싶습니다.

이 아이디어, 코드 및 방법에 대한 권장 사항은 무엇입니까?

하지마

자기 파괴 스크립트의 가능한 단점 또는 영향은 무엇입니까?

명백한 윤리적 문제 외에도 법적인 문제가 걱정됩니다. 자신의 작업을 방해하는 것이 합법적인지 확실하지 않으며 그러한 경우에도 그러한 익스플로잇을 사용하는 것이 적합하지 않을 수 있습니다.


답변 주셔서 감사합니다. 나는 이것이 기본적으로 클라이언트에서 100 % 숨겨 질 것이라는 것을 명확히하기 위해 내 질문을 편집했다. 그것은 대부분 내 자신의 서버 안에 있고 개발 모드에서만있을 것이기 때문이다. 누군가 누군가 내 소프트웨어를 훔치면 죽일 수 있습니다. 더 명확 해지기 시작했지만 "힘"이 아니라 법을 사용해야합니다.
Kalle H. Väravas

2
@ KalleH.Väravas 위치는 중요하지 않지만 처음부터 작성했다는 사실은 중요합니다. 프로덕션 환경이 아닌 개발 환경에 배치하는 것이 더 나쁘다는 주장을 할 수도 있습니다. 두 환경이 더 이상 동일하지 않으며 개발 및 배포 중에 해결해야 할 또 다른 변수가되기 때문입니다.
Thomas Owens

3

만료시 소프트웨어를 비활성화하는 시간 제한 라이센스로 라이센스 모듈을 구현하기 만하면됩니다. 이것은 소프트웨어 업계에서 잘 알려진 관행이며, 이후에 제한을 제거하므로 클라이언트가 이에 반대해서는 안됩니다.

기능을 제한하고 다른 버전의 제품을 제공하려는 경우에도 유용 할 수 있습니다.

킬 스위치는 너무 많은 위험이 있으며 그만한 가치가 없습니다.


2

비밀 자체 파괴 기능은 끔찍한 아이디어입니다. 예, 당신은 영리하고 미래에 끔찍한 고객에게 붙일 수있는 기회를 가질 수는 있지만 그보다 가치가 없습니다.

  1. 당신이 한 일에 대해서는 여전히 돈을받지 않습니다. 예, 다른 사람이 귀하의 코드를 사용하지 않습니다. 하지만 여전히 결제 부족이 발생합니다. 일부 범죄자가 이미 자신의 사이트를 한 번 원격으로 중단 한 사람에게 비용을 지불하기로 결정했다고 생각하십니까? 그들은 무료로 사이트를 만들 수있는 새로운 처프를 발견 할 것입니다.

  2. 자체 파기 순서를 활용하면 자신의 법적 문제에 대해 책임을집니다. 관할권에 따라 데이터를 해킹 / 파기하는 것으로 쉽게 볼 수 있습니다 (지급하려고하고 조기에 지불하지 않은 이유가 충분히있는 경우). 유죄 판결을 받거나 성공적으로 고소되지 않은 경우에도 여전히 많은 법적 비용이 부과 될 수 있으며 그보다 가치가 훨씬 높습니다.

  3. 돈을 많이내는 고객이 나중에 코드를 찾아 보거나 (또는 ​​약간의 조정을 위해 코드를 찾은 CS 친구가있는 경우) 이상한 base64 부분이있는 기능을보고, 이와 같은 기능을 수행하고, 실행하려고 시도하며 실수로 웹앱을 삭제하는 경우 (그리고 휴가 중에도 고치려면 시간이 걸리나요?) 아니면 비 윤리적이며 직장에 백도어를 남기는 곳 어디에서나 당신에 대한 많은 공개 리뷰를 게시합니까? 물론 지불 후 완제품에서 제거 할 수는 있지만 VCS를 사용하면 지불 후 오래된 소스를 찾아 보거나 서버에서 원하지 않을 수 있습니다 (그리고 그 대화는 어색한 대화입니다. 예, 다시 계정이 필요합니다. 비밀 자체 파괴 백도어를 제거하지 마십시오).

  4. 범죄자가 데이터를 백업하면 어떻게 되나요? 비밀 백도어를 사용하여 웹 서버를 삭제하면 사이트가 하루나 이틀 동안 오프라인 상태입니다 (또는 친구가 문제를 일으키는 기능 백도어 기능과 백 온라인을 찾음).

앞으로는 사람들이 간단한 계약서에 서명하고 단계적으로 지불하도록하고, 지불을받을 때까지 자신 만 제어 할 수있는 개발 서버와 컴퓨터를 코드로 남겨 두지 마십시오. (모든 작업이 완료되기 전에 작동해야하는 경우 작동중인 코드의 일부에 대해 대가를 지불했는지 확인하십시오). 그들이 개발중인 작업을보고 싶다면 개발 서버를 위해 방화벽을 열 수있는 몇 개의 IP 주소를 제공하십시오.unpaid_work_in_development.example.com). 개발자 서버의 가동 시간을 보장하지 않으며, 예상보다 많은 트래픽이 발생하는 경우 (예 : 많은 사람을 사이트로 리디렉션하는 경우) 지불 할 때까지 방화벽을 닫으십시오. 웹 서버에 컨텐츠를 제공해야하는 경우 컨텐츠 제안과 함께 이메일을 보내거나 드롭 박스 외부의 VCS 제어 하에서 파일의 작은 서브 세트에만 쓸 수있는 드롭 박스 공유 폴더를 작성하십시오. 의미있게 기여할 수 있습니다 (예 : html 템플릿).


나중에 끔찍한 고객에게 충실합니까? 그것은 내가 묻지 않았거나 언급하지 않은 것 같습니다. 그리고 내가 돈을받지 않으면 소프트웨어를 잃어 버릴 것입니다. 그러면 첫 번째 포인트는 어떻게 유효합니까? 또한 내 질문에는 두 가지 점이있었습니다. 윤리 / 법률은 내 자신의 서버 및 / 또는 클라이언트 서버에 킬 스위치를 두는 것입니다. 무슨 뜻인지 언급하지 않았습니다. 확실히 내 서버에 킬 스위치를 사용할 수 있다는 것이 확실합니다. 따라서 누군가 복사하면 원격으로 삭제할 수 있습니다. 킬 스위치는 소프트웨어에 포함되어 있지 않기 때문에 좋은 클라이언트는 적합하지 않다고 생각합니다. 1 줄입니다.
Kalle H. Väravas

2

당신은 잘못된 질문을했습니다. 작업하고 개선하는 것은 일종의 원격 킬 스위치를 추가하는 것이 아니라 (사용자 또는 다른 사람 이 사용할 수 있는 취약점 추가 ) 실제 문제를 해결하는 것입니다. 더 나은 에스크로 시스템이 필요하다고 생각되는 것 같습니다 (또는 그러한 개념이 거주하는 곳이라고 불림).

킬 스위치에서 시간을 낭비하지 말고 비즈니스 거래에서 어느 부분을 망쳤는지 파악하십시오.


-1 죄송 합니다만 귀하의 답변은 주제에 맞지 않습니다. 좋은 충고, 약간 불쾌하지만 여전히. 나는 당신이 전체 이야기를 모르거나 내가 보통 어떻게 사업을 하는지를 알기 때문에 판단을 내리는 것을 권장하지 않습니다.
Kalle H. Väravas

2

나는 어떤 종류의 라이센싱 메커니즘을 고안 할 것이라고 생각한다. 이는 수많은 상업적 아이디어 나 가정용 아이디어에 기초 할 수 있으며 라이센스가 만료 된 후 소프트웨어 작동을 중지시킬 수 있습니다. 클라이언트가 시스템을 승인 한 시점에 시스템이 만료되어 만료되지 않는 정식 라이센스를 제공 할 수 있습니다.

이 방법을 사용하려면 해당 지역의 변호사의 승인이 필요하지만 소프트웨어를 원격으로 비활성화 할 필요가 없으며 이것이 사전에 시스템의 일부임을 규정 할 수 있다는 이점이 있습니다. 그러나 당신이 처음부터 지불을 거부하는 사람들을 다루고 있다는 것은 매우 슬픈 것 같습니다.


시험판 소프트웨어 아이디어를 실제로 좋아하기 시작했습니다. 그러나 두 번째 부분은 iffy입니다. 기본적으로 시험 라이센스 또는 킬 스위치가 소프트웨어의 일부라면 완벽하게 합법적입니다. 계약 또는 비 계약 업무에 따라 계약서에 명시해야합니다.
Kalle H. Väravas

2

이것이 DRM이 아닙니까? 대금을 수령 할 때 "폭탄"을 제거하는 한 법적인 문제는 없습니다. 엉덩이를 덮을 수있는 패치를 준비하고 악의적 인 의도가 없었 음을 보여주십시오.

그것은 적대적인 인수가 발생했을 때 활성화되는 일부 회사의 정관에서 '독약'조항을 상기시킵니다.

다시 말해, 여기 다른 포스터들 중 일부에 의해 표현 된 사고 방식은 일부 프로그래머들이 왜 항상 발걸음을 remind는지 생각 나게합니다. 더 많은 사람들이 그러한 폭탄을 코드에 넣으면 프로그래머가 더 빨리 지불 할 수 있다고 생각합니다 ...이 표준이라면 아무런 문제가 없습니다. 사람들은 다른 사람들의 노력을 훔치는 것을 좋아합니다. 기간. 그리고 Apple, et al. 지옥에서 DRM을 사용할 수 있다면 프리랜서 프로그래머도 할 수 있다고 생각합니다.


나는 당신의 대답을 좋아합니다. 다른 대답보다 내 요점을 더 잘 해결합니다. 변호사와 확인한 후 관리자 패널에 들어가서 파일 관리자를 통해 연결 해제 스크립트를 업로드하는 것은 해킹으로 간주됩니다. 그러나 소프트웨어에 실제 기능이 내장되어 있으면 소프트웨어의 일부이며 자체 목적이 있습니다. 이 질문은 비 계약 업무에 관한 것이지만 계약에서 분명히 다루어 져야합니다. 답변 주셔서 감사합니다 :)
Kalle H. Väravas

0

실제로 클라이언트는 로그를 확인하고 종료 요청을 찾고 백업에서 코드를 복원하며 종료 스위치를 제거하고 다시 배치해야합니다.


그러나 이것은 클라이언트, 소프트웨어, 서버에 따라 다릅니다. 필자의 경우 클라이언트가 ftp 액세스를 거의 변경할 수 없었습니다. 그러나 로그를 확인하는 것은 불가능합니다. 또한 해당 서버는 이러한
로깅을

-2

질문의 세부 사항은 이것이 끔찍한 아이디어라는 것을 분명히합니다. 이러한 킬 스위치를 발견 한 첫 번째 클라이언트 (아마도 스위치를 사용한 후 백업에서 복구 한 경우)는 킬 스위치와 해당 스위치를 전달한 코드에 포함 시켰다는 사실을 게시합니다. 그러면 당신의 평판은 완전히 파괴 될 것입니다.

그리고 당신이 말하기 전에 "잘, 그들은 치명적일 것입니다, 그들은 어떻게 내 명성을 파괴 할 것입니까?" 다음과 같은 시나리오를 고려하십시오. 고객의 상태는 양호하지만 직원 중 한 명이 코드 사본을 가져옵니다. 직원을 해고하고 코드를보고 킬 스위치를 찾아 사용합니다. 누가 책임을 져야할까요? (힌트 : 당신입니다.)


동의하지 않습니다. 실제로 아주 좋은 생각입니다. 당신이 세부 사항을주의 깊게 읽으면, 비 계약직에 대해 이야기하고 있음을 이해할 것입니다. 알려진 깡패로의 그의 명성 대 자신을 보호하려는 나의 시도. 나는 이것이 내 명성에 부정적인 영향을 줄 것이라고 생각하지 않습니다. 귀하의 시나리오는 계약 된 작업처럼 들립니다.이 경우 계약이 있으므로 킬 스위치가 필요하지 않습니다. 어떤 계약이없는 경우, 그들은 ... 두 코드의 사본을 얻을 수 없습니다
칼레 H. Väravas

계약이없는 경우 하드웨어에서 킬 스위치를 활성화 할 수있는 권한을 계약하지 않은 것입니까? 나쁜 생각.
David Schwartz

계약이없는 경우 소프트웨어의 일부에 대한 조항이 없습니다. 킬 스위치가 소프트웨어의 일부라면 프로그래머의 관점에서 : 윤리적인가? 그러나 합법적입니다. kill-switches는 스크립트의 일부로 사용되므로 모든 항목을 삭제하는 목적으로 만 원격으로 활성화해야합니다. 합법적이므로 왜 나쁜 생각입니까?
Kalle H. Väravas

1
당신은 의도적으로 다른 사람의 컴퓨터가 그들의 허락없이 행동하기를 원하는 방식으로 작동을 멈추게하는 것을 의도적으로 말하고 있습니다 (만약 당신이 이것을 할 수 있는지 구체적으로 물었을 때, 그들은 "아니오"라고 말할 것입니다). 시스템 소유자가 귀하에게 이의를 제기 할 이유가 없다고 판단되는 무해한 운영을 수행하고 있습니까? 배심원들에게 당신의 의견을 듣고 싶습니다. (사람을 겨냥하고 총을 쏘는 것은 전등 스위치를 켜는 것과 같습니다.)
David Schwartz

1
당신이 얻는 대답은 당신이 묻는 질문만큼이나 좋습니다. 예를 들어, 내가 답변에서 논의한 사건에 대해 그들에게 물었습니까? (전 직원이 킬 (kill) 스위치를 활성화하는 방법을 파악한다.)
데이비드 슈워츠
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.