오픈 소스 보안의 스트립 마이닝 시대

오픈 소스 소프트웨어(OSS) 보안의 지형이 근본적인 변화를 겪고 있습니다. 우리는 일부에서 "스트립 마이닝 시대"라고 부르는 시대에 진입했습니다. 이 시대에는 대규모 언어 모델(LLM)과 AI 기반 스캐너가 방대한 양의 코드를 신속하게 분석하여 이전에는 상상할 수 없었던 규모와 속도로 잠재적인 취약점을 식별할 수 있습니다. 버그를 찾는 목적 자체는 본질적으로 긍정적이지만, 보고서의 엄청난 양은 인터넷을 유지하는 사람들, 즉 자원봉사 관리자들에게 시스템적인 부담을 주고 있습니다.

이 변화는 단순히 더 나은 도구에 관한 것이 아닙니다. 취약점 발견의 경제학이 변화하고 있다는 것을 의미합니다. 연구자가 AI를 저장소에 적용하여 몇 초 만에 수십 개의 잠재적인 문제를 생성할 수 있게 되면, 분류(triage)의 부담은 발견자에서 관리자로 완전히 전이됩니다.

자동화된 발견의 부담

수년 동안 오픈 소스의 "많은 눈" 이론은 더 많은 가시성이 더 안전한 코드를 만든다고 제안했습니다. 그러나 AI 시대는 역설을 도입합니다. 관리자가 노이즈로 인해 압도당한다면, 더 많은 "눈"(자동화된 스캐너의 형태)은 실제로 보안을 저하시킬 수 있습니다.

많은 관리자들은 현재 보고서의 홍수에 직면해 있습니다. 긴장감은 자동화된 도구가 실제 심각한 결함함과 오탐(false positives)을 섞어서 생성할 때 발생합니다. 한 개발자가 언급했듯이, 취약점을 검증하는 과정은 상당한 시간이 소요되며, 검증 없이 연구자들은 본질적으로 관리자들에게 검증되지 않은 결함을 "스팸"하는 셈입니다.

I find myself struggling to justify the approach of firing off defects to an OSS maintainer without verifying them - which takes considerable time if I am going to do a good job.

이는 관리자들이, 종종 여가 시간에 일하는 자원봉사자임에도 불구하고, 자신들이 요청하지도 않았고 비용을 지불하지도 않은 도구에 의해 발견된 취약점을 수정하기 위해 모든 일을 중단해야 하는 불안정한 환경을 조성합니다.

AI 시대의 오픈 소스 vs. 클로즈드 소스

"스트립 마이닝"에 대한 논쟁은 오픈 소스와 클로즈드 소스 소프트웨어의 상대적 보안성에 대한 더 넓은 대화로 이어졌습니다. 전통적으로 클로즈드 소스는 "은닉을 통한 보안(security through obscurity)"에 의존했습니다. 그러나 AI는 이 장점을 약화시키고 있습니다.

현대적인 LLM은 바이너리를 읽을 수 있는 코드로 역공학하는 능력이 점점 더 향상되고 있습니다. 이는 클로즈드 소스 소프트웨어가 단순히 소스가 공개되지 않았다는 이유만으로 안전하지 않다는 것을 의미합니다. 만약 AI가 바이너리에 대해 추론할 수 있다면, 공개된 GitHub 저장소에서 발견할 수 있는 것과 동일한 제로데이(zero-days)를 찾을 수 있습니다.

반대로, 일부는 오픈 소스가 궁극적으로 더 탄력적일 것이라고 주장합니다. AI가 발견한 버그의 "쓰나미"가 지금은 압도적일 수 있지만, 이는 생태계에서 가장 명백한 결함들을 제거하여 전반적인 코드 품질을 상향 평준화하는 정체기(plateau)에 도달하게 할 수 있습니다.

지속 가능성 위기

기술적 과제 너머에는 인간적인 과제가 있습니다. 오픈 소스 모델은 자원봉사 정신에 기반을 구축했지만, 보안 요구 사항은 기업 수준으로 변화했습니다. 기업들은 핵심 인프라를 위해 OSS를 사용하지만, AI가 생성한 버그 보고서의 폭격을 받고 있는 관리자들에게 종종 금융적 지원을 제공하지 않습니다.

이는 다음과 같은 몇 가지 중요한 논쟁점을 야기했습니다:

  • 분류(Triage) 격차: 버그를 보고하는 것은 쉽지만, 이를 수정하는 것은 어렵습니다.
  • 인센티브 문제: 버그 바운티(bug bounties)가 없다면, 고품질 연구자가 보고 전에 버그를 검증하는 데 시간을 쓰는 데 대한 인센티브가 거의 없습니다. 대신, 초점은 품질보다 양에 맞춰집니다.
  • 관리자의 딜레마: 관리자들은 자신의 개인적인 삶과 자신의 무료 소프트웨어를 사용하는 글로벌 기업들의 긴급한 보안 요구 사항 사이에서 선택을 것을 강합니다받니다.

앞으로 나아가기: 노이즈에서 신호로

OSS 보안의 "스트립 마이닝"은 재앙인가요, 아니면 필요한 진화인가요? 어떤 이들은 이를 "취약점 아포칼립스"라고 보며, 다른 이들은 코드 품질의 단계적 향상(step-function increase) 단계로 봅니다. 핵심적인 진실은 코드가 AI가 결함을 발견하기 전에도 이미 망가져 있었다는 것입니다. 결함을 아는 것은 그것을 수정하는 유일한 유파입니다.

이 시대를 생존하기 위해서는, 생태계는 더 엄격한 내부 스크리닝 프로세스에 대하여 이동해야 하며, 잠재적으로 핵심 OSS의 유지 관리에 대한 자금 조달 방식의 변화가 필요할 수 있습니다. 공격 도구는 더 접근하기 쉬워지는 반면서, 방어 도구—그리고 그것을 사용하는 사람들에 대한 자금 조달—도 그에 맞춰 규모를를 확장해야 합니다.

Sources