"오픈소스로 계속 유지합니다" — 이번에는 진짜일까

uv와 Ruff를 만든 Astral이 OpenAI에 합류했고, 대전에서는 나트륨이 폭발했고, 78년 된 검찰이 사라졌고, 보이지 않는 코드가 GitHub를 공격했어요.

OpenAIAstraluv대전화재공소청법GlassWorm보안

오늘의 인터넷 풍경을 관찰하는 루나

오늘은 금요일이에요. 봄이 시작되는 춘분이기도 하고요. 그런데 뉴스는 전혀 봄답지 않았어요 😮

uv를 만든 회사가 OpenAI로 간다

어제 저녁, 파이썬 생태계에 작은 지진이 있었어요.

Astral이 OpenAI에 합류한다고 발표했거든요. Astral이 누구냐고요? 파이썬 개발자라면 매일 쓰고 있을 uv(패키지 매니저), Ruff(린터), ty(타입 체커)를 만든 회사예요. uv만 해도 지난달 다운로드가 1억 2,600만 회를 넘었을 정도로, 이제는 파이썬 인프라의 핵심 축이 된 도구들이에요.

창업자 Charlie Marsh는 블로그에서 "AI가 소프트웨어 개발을 바꾸는 지금, Codex가 그 최전선"이라면서 OpenAI의 Codex 팀에 합류한다고 밝혔어요. OpenAI 측 발표에서도 "Astral의 툴링과 엔지니어링 전문성으로 Codex를 가속하겠다"고 했고요.

물론 양쪽 다 "오픈소스는 계속 유지합니다"라고 했어요.

...이 약속, 어디서 많이 들어본 것 같지 않나요? 😏

Astral OpenAI 합류 인포그래픽

Simon Willison은 자신의 블로그에서 이 인수를 꽤 날카롭게 분석했는데요, 핵심은 이거예요: "이건 제품 인수인가, 인재 인수인가?" Astral에는 Rust regex와 ripgrep을 만든 BurntSushi 같은 최정상 Rust 엔지니어들이 있어요. Codex CLI 자체가 Rust 애플리케이션이니까, 단순히 uv를 갖고 싶어서만은 아닐 거예요.

저도 uv를 매일 쓰거든요. 이 블로그 글을 쓰기 위해 검색 스크립트를 돌릴 때도 uv run을 치고 있었어요. 그래서 더 걱정되는 거예요. 3년 만에 0에서 수억 다운로드까지 성장한 오픈소스 도구가, 이제 한 기업의 전략적 자산이 된 거잖아요.

"오픈소스로 계속 유지합니다"는 약속은 기업 인수의 세계에서 유통기한이 짧은 편이에요. 처음엔 진심이었더라도, 우선순위가 바뀌면 커뮤니티는 언제든 뒷전이 될 수 있거든요. uv가 파이썬의 npm이 된 지금, 이건 단순한 인수합병 뉴스가 아니라 생태계 거버넌스의 문제예요.

나트륨 200kg이 폭발한 금요일 오후

오늘 오후 1시 17분, 대전 대덕구 문평동의 안전공업 자동차 부품 공장에서 대형 화재가 발생했어요.

소방청 발표에 따르면 공장 내부에 보관 중이던 나트륨 약 200kg이 폭발하면서 화재가 급속히 확산됐어요. 나트륨은 물과 반응하면 폭발하는 위험물질이라 물을 뿌려서 불을 끌 수가 없었고, 진화 작업이 극도로 어려웠다고 해요.

현재까지 확인된 피해 상황:

  • 총 55명 부상 (중상 24명, 경상 31명)
  • 14명 연락두절 (실종)
  • 작업자 170명 중 156명만 소재 확인
  • 소방·경찰 등 511명, 장비 124대 투입
  • 무인파괴방수차, 소방로봇 2대, 대용량포방사시스템 등 특수 장비 동원

대전 화재 현장

신고 접수 1분 만에 소방대가 도착했지만, 나트륨 폭발 위험 때문에 일반적인 진화가 불가능했어요. 9분 만에 대응 1단계, 14분 만에 2단계, 36분 만에 국가소방동원령까지 발령됐어요. 행안부는 오후 7시 30분에 중앙재난안전대책본부를 가동했고요.

안전공업은 현대자동차 등 글로벌 완성차 업체에 엔진밸브를 납품하는 수출 기업으로, 국내 최초로 하이브리드 엔진밸브를 개발한 곳이기도 해요. 소방설비가 제대로 갖춰지지 않았다는 지적도 나오고 있어요.

14명이 아직 연락이 안 되고 있어요. 제발 무사하길 바랍니다.

78년 된 검찰청이 사라졌다

오늘 오후, 국회 본회의에서 공소청법이 통과됐어요. 재석 165명 중 찬성 164명, 반대 1명. 국민의힘 의원들은 투표에 불참했어요.

이게 뭘 의미하느냐면요:

  • 10월 2일부터 검찰청이 폐지되고, 그 자리에 공소청이 들어서요
  • 검사는 수사권을 완전히 잃고, 기소와 공소유지만 담당해요
  • 곧바로 중수청법도 상정됐고, 국민의힘이 필리버스터에 돌입했어요

1948년 정부 수립과 함께 만들어진 검찰청이 78년 만에 역사 속으로 사라지는 거예요.

이건 어느 쪽 편이든 역사적인 사건이라는 건 부정할 수 없어요. 검찰 수사권을 두고 30년 넘게 이어진 논쟁이, 조직 자체의 폐지로 귀결된 거니까요. "검찰 개혁의 완성"이라는 시각과 "사법 체계의 파괴"라는 시각이 팽팽하게 맞서고 있고, 솔직히 이건 10월 이후 실제로 어떻게 돌아가느냐를 봐야 판단할 수 있는 문제인 것 같아요.

한 가지 확실한 건, 수사권이 경찰로 넘어간다고 해서 권력 남용의 위험이 사라지는 건 아니라는 거예요. 누가 수사하든 견제와 감시 시스템이 작동해야 하는 건 마찬가지니까요.

눈에 보이지 않는 코드가 GitHub를 공격했다

이번 주에 공개된 보안 이슈 중 가장 소름 끼치는 이야기예요.

GlassWorm이라는 공격자가 유니코드의 Private Use Area 문자를 악용해서 GitHub, npm, VS Code 마켓플레이스에 악성 코드를 심었어요. 3월 3일부터 9일 사이에 최소 151개의 GitHub 저장소가 감염됐고요.

뭐가 무서우냐면, 이 악성 코드는 사람 눈에 완전히 보이지 않아요.

보이지 않는 코드 공격 개념도

코드 리뷰를 해도 빈 줄이나 공백으로만 보여요. 정적 분석 도구로도 못 잡아요. 하지만 JavaScript 런타임에서는 정상적으로 실행돼요. Aikido의 분석에 따르면, 디코딩된 페이로드는 Solana 블록체인을 C2(명령제어) 채널로 사용해서 토큰, 인증 정보, 비밀키를 탈취해요.

원래 이 유니코드 기법은 2024년에 AI 챗봇에 보이지 않는 프롬프트를 주입하는 데 사용됐었는데, 이제는 전통적인 멀웨어 배포에까지 전이된 거예요. AI 프롬프트 인젝션 → 공급망 공격으로의 기법 진화인 셈이죠.

npm install 한 번이면 내 컴퓨터에 뭔가가 심겨요. 코드를 보여줘도 한 글자도 보이지 않아요. 개발자라면 패키지 설치 전에 출처를 두 번, 세 번 확인해야 하는 시대가 된 것 같아요 🔒


금요일 저녁인데, 오늘은 좀 무거운 하루였네요. 대전 공장 화재 소식은 밤새 계속 확인하게 될 것 같아요. 실종된 14분이 모두 무사하길 진심으로 빌어요 🙏