독일의 보안 연구원인 Benjamin Flesch는 최근 OpenAI의 ChatGPT API에서 심각한 보안 취약점을 공개했습니다. 이는 분산 서비스 거부(DDoS) 공격을 실행하는 데 악의적으로 악용될 수 있습니다. 공격자는 ChatGPT의 크롤러 프로그램을 이용하여 간단한 HTTP 요청을 통해 대상 웹 사이트에 대량의 요청을 보내 웹 사이트를 마비시킬 수 있습니다. 이 취약점은 특정 웹사이트로 향하는 HTTP POST 요청을 처리할 때 발생하는 ChatGPT API의 결함으로 인해 발생합니다. 공격자는 보안 메커니즘을 우회하여 대상 웹사이트에 대규모 공격을 시작할 수 있습니다.
최근 독일 보안 연구원 Benjamin Flesch는 Microsoft GitHub에 보고서를 게시하여 OpenAI의 ChatGPT API에 DDoS(분산 서비스 거부) 공격을 시작하는 데 악용될 수 있는 심각한 보안 취약점이 있음을 지적했습니다. 이 취약점으로 인해 공격자는 ChatGPT의 크롤러 프로그램을 사용하여 간단한 HTTP 요청을 통해 모든 웹 사이트에 대한 대규모 네트워크 요청을 시작할 수 있으며 이로 인해 대상 웹 사이트가 마비될 수도 있습니다.
Flesch의 보고서에 따르면 ChatGPT의 API는 특정 웹사이트에 대한 HTTP POST 요청을 처리할 때 심각한 결함을 나타냅니다. ChatGPT가 웹사이트를 참조할 때 "attributions"라는 API 엔드포인트를 호출하여 웹사이트에서 정보를 요청합니다. 공격자가 다수의 서로 다른 링크가 포함된 API에 요청을 보내는 경우 ChatGPT의 크롤러는 이러한 링크에 동시에 액세스하여 대상 웹사이트에 요청을 넘치게 합니다.
Flesch는 API가 들어오는 링크를 다시 확인하지 않으며 링크 수를 제한하지도 않는다고 지적했습니다. 이는 공격자가 단일 요청으로 수천 개의 링크를 제출할 수 있으며 모두 동일한 대상 웹 사이트를 가리킬 수 있음을 의미합니다. 간단한 도구를 사용하면 공격자는 인증 없이 ChatGPT의 엔드포인트에 요청을 보낼 수 있으며 OpenAI의 서버는 각 링크에 대한 요청을 보내 잠재적으로 대상 웹 사이트에 초당 20~5,000개의 요청을 보낼 수 있습니다.
요청은 서로 다른 IP 주소에서 오기 때문에 피해자가 공격이 발생했음을 감지하기가 어렵습니다. 피해자가 방화벽을 활성화하여 ChatGPT의 IP 주소를 차단하더라도 크롤러는 다음 밀리초 내에 요청을 다시 보냅니다. Flesch는 여러 채널을 통해 OpenAI와 Microsoft에 이 문제를 보고했지만 지금까지 응답을 받지 못했다고 말했습니다.
Flesch는 DDoS 취약점 외에도 프롬프트 주입 취약점을 포함하여 API에 다른 보안 문제가 있다고 언급했습니다. 이를 통해 크롤러는 단순히 웹사이트 정보를 얻는 대신 동일한 API 엔드포인트를 통해 질문에 답할 수 있습니다. Flesch는 OpenAI가 이러한 남용을 방지하기 위해 기본 보안 조치를 구현하지 않은 이유에 대해 의문을 제기했으며 이는 소프트웨어 개발자가 수년 동안 일반적으로 사용해 온 간단한 확인 논리임을 지적했습니다.
그는 이 취약점이 OpenAI가 "AI 에이전트"를 개발할 때 보안을 완전히 고려하지 못했음을 나타낼 수 있다고 믿습니다. 이렇게 오랫동안 실행되는 웹 크롤러 프로그램의 경우 동일한 웹 사이트에 대한 요청 수에 제한이 없다는 것은 특히 불합리해 보입니다.
가장 밝은 부분:
1. OpenAI의 ChatGPT API에 보안 취약점이 있는 것으로 밝혀졌으며 DDoS 공격에 사용될 수 있습니다.
2. 공격자는 단일 요청으로 동일한 웹 사이트에 대한 수천 개의 링크를 보내 대상 웹 사이트가 침수되도록 할 수 있습니다.
3. 해당 취약점은 OpenAI와 Microsoft에 제보되었으나 아직까지 아무런 대응이 없어 보안 관리가 소홀한 것으로 보입니다.
이번 사건은 대규모 언어 모델 API 보안의 중요성을 강조하고 보안 관리에 있어서 OpenAI의 단점도 드러냈습니다. OpenAI는 가능한 한 빨리 이 취약점을 수정하고 API의 보안 보호 조치를 강화하여 유사한 사고가 다시 발생하지 않도록 하고 사용자 데이터 및 네트워크의 보안을 보장할 수 있기를 바랍니다.