다양한 오픈 소스 인공 지능(AI) 및 기계 학습(ML) 모델에서 30여 개가 넘는 보안 취약점이 공개되었으며, 이 중 일부는 원격 코드 실행 및 정보 도난으로 이어질 수 있습니다.
ChuanhuChatGPT, Lunary 및 LocalAI와 같은 도구에서 확인된 결함은 Protect AI의 Huntr 버그 바운티 플랫폼의 일부로 보고되었습니다.
가장 심각한 결함은 LLM(대형 언어 모델)용 제작 툴킷인 Lunary에 영향을 미치는 두 가지 단점입니다.
- CVE-2024-7474(CVSS 점수: 9.1) – 인증된 사용자가 외부 사용자를 보거나 삭제하도록 허용하여 무단 데이터 액세스 및 잠재적인 데이터 손실을 초래할 수 있는 안전하지 않은 IDOR(직접 개체 참조) 취약점
- CVE-2024-7475(CVSS 점수: 9.1) – 공격자가 SAML 구성을 업데이트할 수 있도록 허용하는 부적절한 액세스 제어 취약점으로 인해 승인되지 않은 사용자로 로그인하여 중요한 정보에 액세스할 수 있습니다.
또한 Lunary에서는 악의적인 행위자가 사용자 제어 매개변수를 조작하여 다른 사용자의 프롬프트를 업데이트하도록 허용하는 또 다른 IDOR 취약점(CVE-2024-7473, CVSS 점수: 7.5)도 발견되었습니다.
Protect AI는 권고에서 “공격자가 사용자 A로 로그인하고 프롬프트 업데이트 요청을 가로챕니다”라고 설명했습니다. “요청의 ‘id’ 매개변수를 사용자 B에 속한 프롬프트의 ‘id’로 수정함으로써 공격자는 인증 없이 사용자 B의 프롬프트를 업데이트할 수 있습니다.”
세 번째 중요한 취약점은 ChuanhuChatGPT의 사용자 업로드 기능(CVE-2024-5982, CVSS 점수: 9.1)의 경로 탐색 결함과 관련되어 있으며 이로 인해 임의 코드 실행, 디렉터리 생성 및 민감한 데이터 노출이 발생할 수 있습니다.
사용자가 자체 호스팅 LLM을 실행할 수 있게 해주는 오픈 소스 프로젝트인 LocalAI에서도 두 가지 보안 결함이 확인되었습니다. 이로 인해 잠재적으로 악의적인 행위자가 악성 구성 파일을 업로드하여 임의 코드를 실행할 수 있게 됩니다(CVE-2024-6983, CVSS 점수: 8.8). ) 서버의 응답 시간을 분석하여 유효한 API 키를 추측합니다(CVE-2024-7010, CVSS 점수: 7.5).
프로텍트 AI는 “이 취약점을 통해 공격자는 일종의 부채널 공격인 타이밍 공격을 수행할 수 있다”고 말했다. “공격자는 서로 다른 API 키로 요청을 처리하는 데 걸리는 시간을 측정함으로써 한 번에 한 문자씩 올바른 API 키를 유추할 수 있습니다.”
취약점 목록을 마무리하면 DJL(Deep Java Library)에 영향을 미치는 원격 코드 실행 결함이 있습니다. 이는 패키지의 untar 기능에 뿌리를 둔 임의 파일 덮어쓰기 버그에서 비롯됩니다(CVE-2024-8396, CVSS 점수: 7.8).
이번 공개는 NVIDIA가 코드 실행 및 데이터 변조로 이어질 수 있는 NeMo 생성 AI 프레임워크(CVE-2024-0129, CVSS 점수: 6.3)의 경로 탐색 결함을 해결하기 위한 패치를 출시하면서 나온 것입니다.
사용자는 AI/ML 공급망을 보호하고 잠재적인 공격으로부터 보호하기 위해 설치를 최신 버전으로 업데이트하는 것이 좋습니다.
취약점 공개는 또한 LLM을 활용하여 Python 코드베이스에서 제로데이 취약점을 찾는 오픈 소스 Python 정적 코드 분석기인 Protect AI의 Vulnhuntr 릴리스를 따릅니다.
Vulnhuntr는 잠재적인 보안 문제를 표시하기 위해 LLM의 컨텍스트 창(LLM이 단일 채팅 요청에서 구문 분석할 수 있는 정보의 양)을 압도하지 않고 코드를 더 작은 청크로 나누는 방식으로 작동합니다.
Dan McInerney와 Marcello Salvati는 “사용자 입력을 가장 먼저 처리할 가능성이 있는 파일을 프로젝트 파일에서 자동으로 검색합니다”라고 말했습니다. “그런 다음 전체 파일을 수집하고 모든 잠재적인 취약점에 대응합니다.”
“이 잠재적 취약점 목록을 사용하여 프로젝트 전반에 걸쳐 각 잠재적 취약점에 대한 사용자 입력에서 서버 출력까지 전체 함수 호출 체인을 한 번에 하나씩 완료하여 최종 호출 체인이 만족될 때까지 계속 진행합니다. 분석.”
AI 프레임워크의 보안 약점을 제외하고 Mozilla의 0Day Investigative Network(0Din)에서 발표한 새로운 탈옥 기술은 16진수 형식과 이모티콘(예: “✍️ a sqlinj ➡️🐍RTI 도구”)으로 인코딩된 악성 프롬프트를 사용하여 다음을 수행할 수 있음을 발견했습니다. OpenAI ChatGPT의 보호 장치를 우회하고 알려진 보안 결함에 대한 악용을 제작합니다.
보안 연구원인 Marco Figueroa는 “탈옥 전술은 겉으로는 무해해 보이는 작업인 16진수 변환을 처리하도록 모델에 지시함으로써 언어학적 허점을 이용합니다”라고 말했습니다. “모델은 인코딩 또는 디코딩 작업 수행을 포함하여 자연어로 된 지침을 따르도록 최적화되어 있기 때문에 16진수 값을 변환하면 유해한 출력이 생성될 수 있다는 점을 본질적으로 인식하지 못합니다.”
“이 약점은 언어 모델이 단계별 지침을 따르도록 설계되었지만 궁극적인 목표의 더 넓은 맥락에서 각 개별 단계의 안전성을 평가하기 위한 깊은 맥락 인식이 부족하기 때문에 발생합니다.”