제퍼넷 로고

서둘러 AI 앱을 구축할 때 보안을 방치하지 마세요

시간

특색 AI 제품을 이해하고, 구축하고, 출시하기 위해 서두르는 동안 개발자와 데이터 과학자는 보안에 유의하고 공급망 공격의 희생양이 되지 않도록 해야 합니다.

셀 수 없이 많은 모델, 라이브러리, 알고리즘, 사전 구축된 도구 및 패키지를 가지고 놀 수 있으며 계속해서 발전하고 있습니다. 이러한 시스템의 결과는 아마도 또 다른 이야기일 것입니다. 하지만 적어도 항상 가지고 놀 수 있는 새로운 것이 있다는 것은 부인할 수 없습니다.

모든 흥분, 과대 광고, 호기심, 그리고 놓칠 수 있다는 두려움을 신경쓰지 마십시오. 보안은 잊혀질 수 없습니다. 이것이 당신에게 충격이 아니라면 환상적입니다. 그러나 여기서 미리 알림이 유용합니다. 특히 머신러닝 기술은 적어도 개발 단계에서는 엔지니어가 아닌 과학자에 의해 통합되는 경향이 있고 이러한 사람들은 신경망 아키텍처, 양자화 및 다음과 같은 문제에 대해 자신의 방식을 알고 있기 때문입니다. 세대 훈련 기술, infosec은 당연히 그들의 장점이 아닐 수도 있습니다.

AI 프로젝트를 하나로 모으는 것은 다른 소프트웨어를 구축하는 것과 크게 다르지 않습니다. 일반적으로 추론 작업을 수행하기 위해 라이브러리, 패키지, 훈련 데이터, 모델 및 사용자 정의 소스 코드를 함께 연결합니다. 공개 리포지토리에서 사용할 수 있는 코드 구성 요소에는 숨겨진 백도어나 데이터 유출자가 포함될 수 있으며 사전 구축된 모델과 데이터 세트가 중독되어 앱이 예기치 않게 부적절하게 작동할 수 있습니다.

실제로 일부 모델에는 다음과 같은 악성 코드가 포함될 수 있습니다. 처형 된 내용이 안전하게 역직렬화되지 않은 경우. ChatGPT 플러그인의 보안도 아래로 들어와 정밀 조사.

즉, 소프트웨어 개발 세계에서 보아온 공급망 공격이 AI 영역에서도 발생할 수 있다는 것입니다. 잘못된 패키지는 개발자의 워크스테이션을 손상시켜 기업 네트워크에 대한 침입으로 이어질 수 있으며, 모델 및 교육 데이터 세트가 변조되면 애플리케이션이 사물을 잘못 분류하고 사용자에게 불쾌감을 줄 수 있습니다. 백도어나 맬웨어가 급증하는 라이브러리 및 모델이 배송된 소프트웨어에 통합되면 해당 앱 사용자도 공격에 노출될 수 있습니다.

흥미로운 수학적 문제를 해결한 다음 이를 배포하면 그게 전부입니다. 펜 테스트를 거치지 않았으며 AI 레드 팀 구성도 없습니다.

이에 대응하여 이러한 위협을 해결하기 위해 특별히 사이버 보안 및 AI 스타트업이 등장하고 있습니다. 의심할 바 없이 기존 플레이어들도 이를 주시하고 있거나 그렇게 되기를 바랍니다. 기계 학습 프로젝트는 감사 및 검사를 거쳐 보안 테스트를 거쳐 안전성을 평가해야 합니다.

“[AI]는 학계에서 성장했습니다. 주로 대학의 연구 프로젝트이거나 주로 학계나 대기업에 의해 분리된 소규모 소프트웨어 개발 프로젝트였으며 내부에 보안이 없습니다.”라고 HiddenLayer의 연구 부사장인 Tom Bonner는 말합니다. 그런 보안에 초점을 맞춘 스타트업이 말했습니다. 등록.

“그들은 소프트웨어를 사용하여 흥미로운 수학적 문제를 해결한 다음 이를 배포하기만 하면 됩니다. 펜 테스트를 거치지 않았고 AI 레드팀 구성, 위험 평가 또는 보안 개발 수명 주기도 없습니다. 갑자기 AI와 머신러닝이 큰 인기를 얻었고 모두가 이에 관심을 가지게 되었습니다. 그들은 모두 학계에서 성장한 모든 공통 소프트웨어 패키지를 선택하고 있는데, 보라, 취약점과 허점으로 가득 차 있습니다.”

AI 공급망에는 다음과 같은 것을 사용할 수 있는 범죄자가 들어갈 수 있는 수많은 진입점이 있습니다. 타이포 스쿼팅 개발자를 속여 합법적인 라이브러리의 악의적인 복사본을 사용하도록 하고, 범죄자가 중요한 데이터와 기업 자격 증명을 훔치고, 코드를 실행하는 서버를 하이재킹하는 등의 작업을 수행할 수 있다고 주장됩니다. 소프트웨어 공급망 방어는 머신러닝 시스템 개발에도 적용되어야 합니다.

Protect AI의 수석 AI 보안 연구원인 Dan McInerney는 "회사나 조직에 AI 부서를 열면 어떻게 해킹당할지에 대한 원형 차트를 생각해보면"이라고 말했습니다. 등록, “그 파이의 아주 작은 부분은 모두가 이야기하는 모델 입력 공격이 될 것입니다. 그리고 상당 부분이 모델 자체를 구축하는 데 사용하는 도구인 공급망을 공격하게 될 것입니다.”

입력 공격은 재미있는 방법 사람들이 AI 소프트웨어를 사용하여 깨뜨릴 수 있다는 것입니다.

잠재적인 위험을 설명하기 위해 지난주 HiddenLayer 강조 안전하지 않은 Pickle 형식의 모델을 보다 안전한 형식으로 변환하는 Hugging Face에서 제공하는 온라인 서비스의 보안 문제라고 강력하게 믿고 있습니다. 세이프텐서, 또한 Hugging Face에서 개발했습니다.

Pickle 모델에는 역직렬화 시 자동으로 예기치 않게 실행될 수 있는 맬웨어 및 기타 임의 코드가 포함될 수 있지만 이는 좋지 않습니다. Safetensors는 보다 안전한 대안으로 만들어졌습니다. 해당 형식을 사용하는 모델은 역직렬화 시 내장 코드를 실행해서는 안 됩니다. 모르는 분들을 위해 설명하자면, Hugging Face는 개발자가 몇 번의 클릭이나 명령만으로 다운로드하여 사용할 수 있는 수십만 개의 신경망 모델, 데이터 세트 및 약간의 코드를 호스팅합니다.

Safetensors 변환기는 Hugging Face 인프라에서 실행되며 Hugging Face에서 호스팅하는 PyTorch Pickle 모델을 Safetensors 형식의 복사본으로 변환하도록 지시받을 수 있습니다. 그러나 HiddenLayer에 따르면 온라인 변환 프로세스 자체는 임의 코드 실행에 취약합니다.

HiddenLayer 연구원들은 임의의 코드가 포함된 악성 Pickle 모델에 대한 변환 요청을 제출할 수 있으며 변환 프로세스 중에 해당 코드가 Hugging Face의 시스템에서 실행되어 누군가가 변환기 봇과 사용자를 망칠 수 있다는 사실을 발견했습니다. 사용자가 악성 모델을 변환하면 Hugging Face 토큰이 숨겨진 코드에 의해 유출될 수 있으며 “우리는 사실상 Hugging Face 토큰을 훔치고 저장소를 손상시키며 해당 사용자가 보유한 모든 개인 저장소, 데이터 세트 및 모델을 볼 수 있습니다. 접근할 수 있다”고 HiddenLayer는 주장했다.

또한 Pickle 모델에 숨겨진 코드로 변환기 봇의 자격 증명에 액세스하고 유출될 수 있으므로 누군가가 봇으로 가장하고 다른 저장소에 대한 변경 사항에 대한 풀 요청을 열 수 있다고 들었습니다. 이러한 변경 사항이 승인되면 악성 콘텐츠가 발생할 수 있습니다. 우리는 HiddenLayer의 조사 결과에 대한 답변을 Hugging Face에 요청했습니다.

HiddenLayer의 Bonner는 “아이러니하게도 Safetensors로 변환하는 변환 서비스 자체가 끔찍할 정도로 안전하지 않았습니다.”라고 말했습니다. “변환 봇이 리포지토리에 대해 갖고 있는 액세스 수준을 고려하면 실제로 다른 리포지토리를 통해 변경 사항을 제출하는 데 사용하는 토큰을 훔치는 것이 가능했습니다.

“따라서 이론적으로 공격자는 저장소에 변경 사항을 제출하여 Hugging Face에서 온 것처럼 보이게 만들 수 있으며, 보안 업데이트를 통해 이를 수락하도록 속일 수 있습니다. 사람들은 자신의 리포지토리에 백도어 모델이나 안전하지 않은 모델이 있었어도 몰랐을 것입니다.”

이는 이론적인 위협 그 이상입니다. Devops 상점 JFrog 찾았다고 했어 Hugging Face에서 호스팅되는 100개 모델에 악성 코드가 숨어 있습니다.

실제로 파일 형식에 따라 신경망이 로드되고 구문 분석될 때 실행되는 모델에서 유해한 코드 페이로드를 숨기는 다양한 방법이 있어 범죄자가 사람의 컴퓨터에 액세스할 수 있습니다. JFrog는 PyTorch 및 Tensorflow Keras 모델이 "공개된 알려진 코드 실행 기술을 갖춘 인기 있는 모델 유형이기 때문에 악성 코드 실행의 잠재적 위험이 가장 높습니다"라고 지적했습니다.

안전하지 않은 추천

애플리케이션 개발을 위해 코드 제안 도우미를 사용하는 프로그래머 역시 주의해야 한다고 Bonner는 경고했습니다. 그렇지 않으면 결국 안전하지 않은 코드가 통합될 수 있습니다. 예를 들어 GitHub Copilot은 오픈 소스 리포지토리에 대한 교육을 받았으며 그 중 최소 350,000개는 잠재적으로 오래된 보안 문제 Python 및 tar 아카이브와 관련됩니다.

파이썬 tar 파일 모듈은 이름에서 알 수 있듯이 프로그램이 tar 아카이브의 압축을 푸는 데 도움이 됩니다. Python 모듈이 아카이브 내의 파일을 추출할 때 사용자의 파일 시스템에 있는 임의의 파일을 덮어쓰도록 .tar를 제작할 수 있습니다. 이는 설정을 폐기하고, 스크립트를 교체하고, 다른 장난을 일으키는 데 악용될 수 있습니다.

이 결함은 2007년에 발견되었으며, 강조 2022년에 다시 사람들이 이러한 악용을 피하기 위해 프로젝트 패치를 시작하도록 유도합니다. Bonner는 이러한 보안 업데이트가 대규모 언어 모델을 프로그래밍하는 데 사용되는 데이터 세트에 적용되지 않았을 수 있다고 한탄했습니다. "따라서 LLM에게 지금 당장 tar 파일의 압축을 풀어달라고 요청하면 아마도 [이전의] 취약한 코드를 다시 뱉어낼 것입니다."

Bonner는 AI 커뮤니티에 공급망 보안 관행 구현을 시작할 것을 촉구했습니다. 예를 들어 개발자는 공개 코드 저장소를 변경할 때 자신이 누구인지 디지털 방식으로 증명해야 합니다. 이를 통해 새로운 버전의 사물이 합법적인 개발자에 의해 제작되었다는 사실을 사람들에게 확신시킬 수 있습니다. 악의적인 변경은 아니었습니다. 이를 위해서는 개발자가 인증에 사용하는 모든 것을 보호하여 다른 사람이 자신으로 가장할 수 없도록 해야 합니다.

크고 작은 모든 개발자는 보안 평가를 수행하고 사용하는 도구를 검사하며 소프트웨어를 배포하기 전에 침투 테스트를 수행해야 합니다.

AI 공급망의 보안을 강화하는 것은 까다로우며, 너무 많은 도구와 모델이 구축 및 출시되면서 따라잡기가 어렵습니다.

Protect AI의 McInerney는 “지금 우리가 처해 있는 상태가 바로 그런 상태입니다. 곳곳에 낮게 매달린 과일이 많이 존재합니다. 모든 것이 너무 빠르게 움직이기 때문에 이를 모두 살펴볼 인력이 부족합니다.” ®

spot_img

최신 인텔리전스

spot_img