호출 예약
호출 내역
추천 내역
신고
1주일 보지 않기
카카오톡 공유
주소 복사
공지가 닫혀있습니다 l 열기
패딩조끼ll조회 22970l 17
많이 스크랩된 글이에요!
나도 스크랩하기 l 카카오톡 공유

때는 2015년 11월 1일

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

아제르 코출루라는 이름의 한 개발자가 kik이라는 이름의 오픈소스 프로젝트를 개발하기 시작했다.

아제르는 이 프로젝트를 npm에도 게시한다.

 

여기서 잠깐!

** npm이란? **

 

Python의 pip나 Ruby의 gem처럼

Node.js의 패키지를 관리할 수 있게 해주는 패키지 매니저이다.

 

― 나무위키

 

npm에 패키지를 게시하면 다른 개발자들도

npm i kik

이런 짧은 명령 한 줄만으로 이 패키지를 쓸 수 있게 된다.

(패키지 명은 중복 불가)

 

비유하자면 앱스토어에 앱을 올린 거라고 보면 된다.

 

 

 

그러던 중 2016년 3월 말

kik이라는 이름의 메신저를 개발하는 회사(의 법정 대리인)에게서 연락이 오게 된다.

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

님아

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

?

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

우리도 님한테 무례하게 굴긴 싫은데

님이 만들어서 npm에 올린 그 kik이라는 패키지 있잖아요

그거 우리 상표거든요

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

근데

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

그거 이름 안바꾸면 우리 변호사들이 님 집에 찾아가서

현관문 두드리면서 님 계정 삭제시킬거임 ㅎㅎ

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

ㅎㅎ 말뽄새보소

조까 ㅎㅎ

 

 

 

 

아제르가 거부하자 kik은 npm 운영진에게 연락을 취한다.

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

아제르야 상표권은 어쩔수없다

kik 패키지 소유권 압수한다

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

사람 나고 기업 났지, 기업 나고 사람 났냐??

기분 더러워서 여태껏 npm에 올린거 다 삭제함 ㅂㅂ

 

 

 

 

그렇게 삭제된 패키지 중에는 left-pad라는 이름의 11줄짜리 패키지가 포함되어 있었다.

(대충 문자열의 왼쪽에 공백 혹은 다른 문자열 추가해주는 코드)

 

문제는 이 패키지에 의존성이 있는 다른 오픈소스 프로젝트들이 정말 많았다는 것이다.

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

(현재 Github에서 확인할 수 있는 left-pad에 의존하는 프로젝트의 수)

 

여기서 잠깐!

** 의존성(Dependency)이란? **

 

의존성은 예를 들어 서비스로 사용할 수 있는 객체이다.

클라이언트가 어떤 서비스를 사용할 것인지 지정하는 대신,

클라이언트에게 무슨 서비스를 사용할 것인지를 말해주는 것이다.

의존성 주입의 의도는 객체의 생성과 사용의 관심을 분리하는 것이다.

이는 가독성과 코드 재사용을 높혀준다.

 

― 위키백과

 

쉽게 말하자면 남이 쓴 코드를 내 프로젝트로 손쉽게 링크해서 가져다 쓰는 거라고 보면 된다.

그런데 가져다 쓴 코드가 변경되거나 삭제되면 내 프로젝트가 망가질 수도 있다.

 

아무튼 left-pad에 의존하는 프로젝트 중에는 Babel이라는 이름의 자바스크립트 컴파일러가 있었는데

이걸 사용하는 기업이 엄청 많았다.

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

(대충 Babel 쓰는 회사들)

보다시피 npm도 쓰고 있었어서 당시 npm 자체는 물론이고 수많은 기업들이 다운되었었다.

메신저 회사 kik도 (Babel은 아니지만) left-pad에 의존하는 패키지를 사용하다가 피해를 봤다.

 

그리고 Cloudflare는 전세계에 CDN 및 디도스 방어 등의 서비스를 제공하는 메이저 기업이라

당시 클라우드플레어를 사용하는 전세계 수많은 사이트도 같이 다운되었다.

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

(당시 left-pad의 이슈트래커에 달린 코멘트. "이게 인터넷을 망가뜨린 것 같은데요.")

 

 

 

 

한 개발자가 삭제한 11줄의 코드 때문에 전세계 기업들이 마비되었던 사건 | 인스티즈

 

아니 우리도 맛이 갔네??

일단 님이 삭제한 left-pad 다시 복구하겠음

 

그 후 npm은 블로그에 장문의 글을 올리며 미숙한 소통에 대해 사과하였고

앞으로 패키지 게시 철회를 더 어려워지도록 만들 것임을 밝혔다.

 

kik 또한 대표가 medium에 이메일 내역을 공개하며 부적절한 표현에 대한 사과글을 올렸다.

 

그리고 아제르는 kik을 hek로 이름을 변경한다.

 

 

 

 

 

 

참고한 글

https://blog.npmjs.org/post/141577284765/kik-left-pad-and-npm

http://kodfabrik.com/journal/i-ve-just-liberated-my-modules" target="_blank">https://web.archive.org/web/20210327093144/http://kodfabrik.com/journal/i-ve-just-liberated-my-modules

https://medium.com/@mproberts/a-discussion-about-the-breaking-of-the-internet-3d4d2a83aa4d#.gfkeb7vms

https://www.theverge.com/2016/3/24/11300840/how-an-irate-developer-briefly-broke-ja-vascript

https://www.bloter.net/newsView/blt201604040002

https://medium.com/@utatti/npm-%EC%82%AC%EA%B1%B4-%EC%A0%95%EB%A6%AC-4261ce2882fd

 

추천  17

이런 글은 어떠세요?

 
   
깨꾹  깨꾹!
😂
4개월 전
👍
4개월 전
NU'ESF  뉴이스트 사랑해🐷
😂
4개월 전
NU'ESF  뉴이스트 사랑해🐷
npm run dev..
4개월 전
GIF
(내용 없음)

4개월 전
😲
4개월 전
😲
4개월 전
투바투 연준  웅냥냥
머라는지 모르게따
4개월 전
와 npm 이런 일이 있었는지 몰랐어요 ㅋㅋㅋㅋ 재밌네요
4개월 전
생각만 해도 아찔 ...
4개월 전
김형태  ㅎㅎ벜벜
😂
4개월 전
핵 쓴다 할 때 그 핵이 여기서 나온건..?
4개월 전
아니에요! 핵은 해킹프로그램의 hack입니다
4개월 전
무신경하게 큰 착각을 하면서 기억할 뻔 했네요!!
알려주셔서 감사합니다

4개월 전
kik이 쏳아올린 작은 공인가
4개월 전
👍
4개월 전
김석진없는김석진팀  전정국은 정없찌
재밌다
4개월 전
왐마야
4개월 전
웨이브  지금이순간이우리의파도라면🌊
어우 눈앞이 아찔하네요
4개월 전
와 한 명의 사람이 이렇게까지 영향력을 줄 수 있다는게 놀라워요 ㅋㅋㅋㅋ
3개월 전
ㅋㅋㅋㅋ재밌네요
3개월 전
..문송합니다 알겠는데 모르겠어요
3개월 전
실력만 있으면 기업들도 머리숙이게 할수있다는 예시
3개월 전
아깝네요 보상의 의미로 돈을 받으셨으면 좋았을텐데 마음이 넓으시네...
3개월 전
쓰니 뭐하는 사람인데 이런 걸 공유해 너무 즐겁게 읽었다 지나가는 개발자익
2개월 전
Lpad가 엄청간단한 코드거든요 그냥 왼쪽에 특정문자로 가득채워주는건데
이게 워낙 간단하다보니까 그냥 만들어쓰기 귀찮아서 가져다 쓴건데 이 기초함수가 빠져버리니 라이브러리 연결이 요상하게 깨지면서 먹통이 된 특이 케이스죠

2개월 전
   
로그인 후 댓글을 달아보세요
 
카테고리
  1 / 3   키보드
닉네임날짜조회
이슈·소식 현재 인스타에서 불타고 있는 소방관 말투.JPG339 우우아아12:1059032 9
이슈·소식 현재 심하게 갈린다는 최애 파스타 테스트.JPG202 우우아아10:2050970 0
정보·기타 한국이 무속 강국인 이유.twt197 장미장미12:0144141 14
이슈·소식 현재 역대급 퀄리티라는 임시완 마담투소 밀랍인형.jpg172 우우아아12:3538297 29
이슈·소식 블라인드의 저출산 해결책114 이슈왕16:2915750 3
포항 석유 조사한 미국 회사(ACT-GEO) 직접 가본 현지거주민1 +ordin 19:10 232 0
[단독] 지드래곤, 카이스트 특임교수 된다..컴백 전 겹경사 게터기타 19:09 437 0
친구를 데리고 온 댕댕이들 언더캐이지 19:08 366 0
고양이 집사 공감 인어겅듀 19:07 426 0
"민희진은 하이브를 퇴사해야 한다”…국제 청원까지 등장 둔둔단세 19:06 169 0
배민에서 한글메뉴를 요구한 손님1 쇼콘!23 19:06 562 0
저출산 해결방법입니다.blind1 수인분당선 19:05 514 0
천조국에서 가장 깡촌이라는 주 WD40 19:05 213 0
박명수 "샤이니 링딩곡=수능 금지곡? 공부 못하니까 하는 말”(라디오쇼) 몹시섹시 19:05 136 0
지방 사람들이 처음 알게되면 놀라는 사실1 남준이는왜이 19:05 452 0
의외로 호불호 갈리는 음식 jpg 패딩조끼 19:05 203 0
[손에잡히는경제] 강동원 "성심당 사태, 공실 시 결국 '국민 피해'..코레일유통,.. NUEST-W 19:04 406 0
잠깐사이 천당과 지옥을 왔다감.gif 인어겅듀 19:04 356 0
중국놈들이 알아보지도 않고 훔친 우리문화1 박뚱시 19:04 905 0
2014년부터 관측된 이후로 가장 깨끗한 공기질이래 요즘이 wjjdkkdkrk 19:04 251 0
추미애, '영일만 석유' 직접 발표한 尹 겨냥 6행시 311344_return 19:04 129 0
"하찮다” 유명 사찰서 고용한 女…'하녀복' 입고 하는 일, 뭐길래 백챠 19:04 273 0
동해 석유·가스전 분석한 미국 박사 "경제적 가치 있다" 주악구옥주희 18:49 843 0
지드래곤, 카이스트 기계공학과 교수 됐다…2년간 특강 등 진행10 따온 18:47 3112 0
양념통닭이 만들어지게 된 계기6 배진영(a.k.a발 18:44 2674 0