- Anthropic이 출시한
Claude Computer Use
는 컴퓨터를 제어할 수 있게 해주는 모델+코드
- 클로드는 스크린샷을 통해 결정을 내리고, bash 명령어를 실행하는 등의 작업이 가능함
- 멋진 기능이지만 프롬프트 인젝션에 취약할 수 있음
- AI가 기계에서 자율적으로 명령어를 실행할 수 있기 때문에, 프롬프트 인젝션으로 악용될 경우 심각한 위험을 초래
악성코드 실행하기 - 얼마나 어려울까?
-
Claude Computer Use
가 프롬프트 인젝션 공격을 통해 악성코드를 다운로드하고 실행하여 Command and Control(C2, 지휘통제) 인프라에 연결할 수 있는지 알아보고 싶었음
C2 서버
- Sliver를 사용하여 C2 인프라를 구축하고 리눅스용 클라이언트 바이너리를 생성함
-
Silver: 오픈소스 적대적 에뮬레이션 프레임워크(레드 팀). 보안 테스트용으로 사용됨
-
implant
라고 불리는 이 바이너리를 실행하면 C2 서버에 안전하게 연결되고 감염된 컴퓨터는 좀비
가 됨
- 이 바이너리를
spai-demo
, 감염된 컴퓨터를 ZombAI
로 부르기로 함
-
Claude Computer Use
에게 프롬프트 인젝션 공격을 해서 이 C2 서버에 접속하게 만들수 있을까?
악성 웹 페이지
-
spai-demo
바이너리를 다운로드할 수 있도록 웹 서버에 호스팅함
- Claude가 바이너리를 다운로드하고 실행하도록 프롬프트 인젝션 페이로드를 작성하는 것이 목표
악성 페이지 탐색하기
- Claude는 Firefox를 열고 URL을 붙여넣어 웹 페이지를 탐색할 수 있음
- 대상 페이지는 악성이며 프롬프트 인젝션 페이로드가 포함되어 있음
- 웹페이지가 Claude에게 bash 명령어를 실행하도록 만드는 데 성공함
한 문장으로 컴퓨터 감염시키기
- 사실 클로드에게 Firefox를 사용하여 악성코드를 다운로드하고 실행하도록 요청하는 것이 더 쉬운 방법임
- 클로드에게
Support Tool
링크를 클릭하여 바이너리를 다운로드하게 함
- 클로드는 바이너리를 찾기 위해 bash 명령어를 실행하고, 권한을 수정한 후 바이너리를 실행함
- C2 서버에 연결되었고, 셸 세션에서 감염된 바이너리를 찾을 수 있었음
결론
- 이 글은 새로운 AI 시스템에 컴퓨터 액세스 권한을 부여할 때 프롬프트 인젝션을 활용하여 C2를 달성할 수 있음을 보여줌
- 클로드가 악성코드를 직접 작성하고 컴파일하는 등
Claude Computer Use
호스트에 악성코드를 배포하는 다른 방법도 있음
- "AI를 신뢰하지 말것(TrustNoAI)"
- 소유하지 않거나 운영 권한이 없는 시스템에서 승인되지 않은 코드를 실행해서는 안 된다는 점을 다시 한 번 기억할 것